Русский / Russian English / Английский

Сейчас на форуме: zds, figgler, asamoile, mau-rus (+4 невидимых)
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS ·

 eXeL@B —› Вопросы новичков —› Понять что делает код. Pls help...
Посл.ответ Сообщение

Ранг: 0.4 (гость)
Статус: Участник

Создано: 03 июля 2020 01:05 New!
Цитата · Личное сообщение · #1

Есть фунция gettimeofday, в нее передается адрес структуры timeval. Насколько я знаю передается первый элемент (поправьте если ошибаюсь). После этого значения структуры присваиваются переменным и начинаются преобразования. Первый imul (как я понял) переводит микросекунды в миллисекунды, но что происходит дальше? И что в итоге мы получаем в var_58h. Заранее спасибо.

{ Атач доступен только для участников форума } - asd,png



Ранг: 51.8 (постоянный)
Статус: Участник

Создано: 03 июля 2020 04:49 New!
Цитата · Личное сообщение · #2

Zedoliel пишет:
Первый imul (как я понял) переводит микросекунды в миллисекунды

Секунды в миллисекунды.

Zedoliel пишет:
но что происходит дальше?

Микросекунды делятся на 1000 и добавляются к миллисекундам.

| Сообщение посчитали полезным: Zedoliel


Ранг: 433.8 (мудрец)
Статус: Участник

Создано: 03 июля 2020 08:33 · Поправил: dosprog New!
Цитата · Личное сообщение · #3

Вообще, это определённое хамство, постить скриншоты экрана отладчика.

| Сообщение посчитали полезным: user99, _MBK_


Ранг: 59.6 (постоянный)
Статус: Участник

Создано: 03 июля 2020 09:46 New!
Цитата · Личное сообщение · #4

dosprog пишет:
постить скриншоты экрана отладчика.

Причем в виде аттача
Тут какбэ подразумевается хакерский форум - и внезапно такое ламерство



Ранг: 0.4 (гость)
Статус: Участник

Создано: 03 июля 2020 15:08 New!
Цитата · Личное сообщение · #5

Сори за скрин) В след раз буду кидать bin. Всем спасибо!



Ранг: 59.6 (постоянный)
Статус: Участник

Создано: 03 июля 2020 15:25 New!
Цитата · Личное сообщение · #6

Zedoliel пишет:
В след раз буду кидать bin.

Вообще то в форумном движке есть тэги
Code:
  1. код

и на худой конец
[img]картинка[/img]
если чтото хотите показать по быстрому, лучше пользуйтесь ими




Ранг: 325.8 (мудрец)
Статус: Участник

Создано: 03 июля 2020 17:08 New!
Цитата · Личное сообщение · #7

Zedoliel

> что происходит дальше?

Дальше идёт набор незнакомых тебе инструкций, это математика - pxor etc.

Кури матчасть --> Link <--




Ранг: 75.4 (постоянный)
Статус: Участник

Создано: 05 июля 2020 16:36 New!
Цитата · Личное сообщение · #8

dosprog пишет:
Вообще, это определённое хамство, постить скриншоты экрана отладчика.

Имя и расширение файла разделены радужным типом.

difexacaw пишет:
Кури матчасть

Мне вот интересно, что там негры делают на замыленом заднем фоне с "типа корпусом ПК". Или там даже типа "Стойка" но раздутых размеров. И в неё, три каких=то там платы воткнуты... Интел одним словом.



Ранг: 145.8 (ветеран)
Статус: Участник

Создано: 05 июля 2020 17:00 New!
Цитата · Личное сообщение · #9

==DJ==[ZLO] пишет:
Мне вот интересно, что там негры делают на замыленом заднем фоне с "типа корпусом ПК".

Лутают компоненты на драгметаллы, че еще негры могут делать? блеклайвсмэтер!




Ранг: 325.8 (мудрец)
Статус: Участник

Создано: 05 июля 2020 22:24 · Поправил: difexacaw New!
Цитата · Личное сообщение · #10

==DJ==[ZLO]

Куда что втыкается и какого размера это вопрос яшечке, я не знаю. Не нравится интел пусть читают амд, архитектура дублируется. Мне первые маны больше всегда нравились(не знаю почему; иной стиль изложения псевдокод да и в целом мне их читать более привычно чем амд). Хотя по мойму это всё бестолку.



Ранг: 1.4 (гость)
Статус: Участник

Создано: 08 июля 2020 21:53 · Поправил: trololp New!
Цитата · Личное сообщение · #11

Zedoliel пишет:
что происходит дальше?

используются SIMD инструкции (SSE).
pxor xmm0, xmm0 (вообще обнуляет регистр xmm0) (XOR числа на само себя дает ноль)
cvtsi2sd xmm1, rax (тут нужно либо гуглить либо запомнить что если в названии инструкции буква 'i', то это связано с integer) эта инструкция делает следующее загружает singed integer -> переводит в Double -> сохраняет результат в xmm1.
movsd xmm2, qword [...] по адрессу лежит double float = 1000.0f загружается в xmm2
divsd xmm0, xmm2 Деление xmm0 = xmm0/xmm2
addsd xmm0, xmm1 Прибавление xmm0 = xmm0+xmm1
cvttsd2si rax, xmm0 перевести из Double в singed int, с округлением и поместить значение в rax.


итого псевдокод примерно такой
a = var_68h
b = var_60h
c = var_58h
a *= 1000
c = a+b/1000.0f



 eXeL@B —› Вопросы новичков —› Понять что делает код. Pls help...

Видеокурс ВЗЛОМ