Function at 0x401000
Capabilities:
Execute anti-debugging instructions

Disassembly:
rdtsc
push eax
call 0x40225d
mov ebx, dword [section..data]
mov ecx, dword [0x404004]
movapd xmm0, xmmword [ebx + 0x404010]
movapd xmm1, xmmword [ebx + 0x404020]
movapd xmm2, xmm0
movapd xmm3, xmm1
pslld xmm0, 0x13
pslld xmm1, 0x1b
psrld xmm2, 0xd
psrld xmm3, 5
por xmm0, xmm2
por xmm1, xmm3
paddd xmm0, xmmword [ecx + 0x404010]
paddd xmm1, xmmword [ecx + 0x404020]
movapd xmmword [ebx + 0x404010], xmm1
movapd xmmword [ebx + 0x404020], xmm0
sub ebx, 0x10
jae 0x401072
mov ebx, 0x200
sub ecx, 0x10
jae 0x40107c
mov ecx, 0x200
mov dword [section..data], ebx
mov dword [0x404004], ebx
movapd xmmword [0x404b40], xmm0
push 0x404b50
push dword [0x404b40]
call fcn.004023a8
push 0x404b50
call fcn.004023d4
push 0x404b5c
push dword [0x404b44]
call fcn.004023a8
push 0x404b5c
call fcn.004023d4
push 0x404b68
push dword [0x404b48]
call fcn.004023a8
push 0x404b68
call fcn.004023d4
push 0x404b74
push dword [0x404b4c]
call fcn.004023a8
push 0x404b74
call fcn.004023d4
push 0x404b80
call fcn.004023d4
push 0x404b82
call fcn.004023d4
movapd xmmword [0x404b40], xmm1
push 0x404b85
push dword [0x404b40]
call fcn.004023a8
push 0x404b85
call fcn.004023d4
push 0x404b94
push dword [0x404b44]
call fcn.004023a8
push 0x404b94
call fcn.004023d4
push 0x404ba0
push dword [0x404b48]
call fcn.004023a8
push 0x404ba0
call fcn.004023d4
push 0x404bac
push dword [0x404b4c]
call fcn.004023a8
push 0x404bac
call fcn.004023d4
push str.__WBRandomSSE_
call fcn.004023d4
push 0x404bc7
call fcn.004023d4
mov ebx, dword [section..data]
mov ecx, dword [0x404004]
movapd xmm0, xmmword [ebx + 0x404010]
movapd xmm1, xmmword [ebx + 0x404020]
movapd xmm2, xmm0
movapd xmm3, xmm1
pslld xmm0, 0x13
pslld xmm1, 0x1b
psrld xmm2, 0xd
psrld xmm3, 5
por xmm0, xmm2
por xmm1, xmm3
paddd xmm0, xmmword [ecx + 0x404010]
paddd xmm1, xmmword [ecx + 0x404020]
movapd xmmword [ebx + 0x404010], xmm1
movapd xmmword [ebx + 0x404020], xmm0
mov ebx, dword [ebx*4 + 0x4042b0]
mov ecx, dword [ecx*4 + 0x4042b0]
mov dword [section..data], ebx
mov dword [0x404004], ebx
movapd xmmword [0x404b40], xmm0
push 0x404bca
push dword [0x404b40]
call fcn.004023a8
push 0x404bca
call fcn.004023d4
push 0x404bd8
push dword [0x404b44]
call fcn.004023a8
push 0x404bd8
call fcn.004023d4
push 0x404be4
push dword [0x404b48]
call fcn.004023a8
push 0x404be4
call fcn.004023d4
push 0x404bf0
push dword [0x404b4c]
call fcn.004023a8
push 0x404bf0
call fcn.004023d4
push 0x404bfc
call fcn.004023d4
push 0x404bfe
call fcn.004023d4
movapd xmmword [0x404b40], xmm1
push 0x404c01
push dword [0x404b40]
call fcn.004023a8
push 0x404c01
call fcn.004023d4
push 0x404c10
push dword [0x404b44]
call fcn.004023a8
push 0x404c10
call fcn.004023d4
push 0x404c1c
push dword [0x404b48]
call fcn.004023a8
push 0x404c1c
call fcn.004023d4
push 0x404c28
push dword [0x404b4c]
call fcn.004023a8
push 0x404c28
call fcn.004023d4
push str.__WBRandomSSE__lookup_
call fcn.004023d4
push 0x404c4b
call fcn.004023d4
cmp dword [0x404b30], 0
je 0x401332
movapd xmm0, xmmword [0x404b30]
mov dword [0x404b30], 0
jmp 0x4013ba
mov ebx, dword [section..data]
mov ecx, dword [0x404004]
movapd xmm0, xmmword [ebx + 0x404010]
movapd xmm1, xmmword [ebx + 0x404020]
movapd xmm2, xmm0
movapd xmm3, xmm1
pslld xmm0, 0x13
pslld xmm1, 0x1b
psrld xmm2, 0xd
psrld xmm3, 5
por xmm0, xmm2
por xmm1, xmm3
paddd xmm0, xmmword [ecx + 0x404010]
paddd xmm1, xmmword [ecx + 0x404020]
movapd xmmword [ebx + 0x404010], xmm1
movapd xmmword [ebx + 0x404020], xmm0
sub ebx, 0x10
jae 0x40139c
mov ebx, 0x200
sub ecx, 0x10
jae 0x4013a6
mov ecx, 0x200
mov dword [section..data], ebx
mov dword [0x404004], ebx
movapd xmmword [0x404b30], xmm1
movapd xmmword [0x404b40], xmm0
push 0x404c4e
push dword [0x404b40]
call fcn.004023a8
push 0x404c4e
call fcn.004023d4
push 0x404c5c
push dword [0x404b44]
call fcn.004023a8
push 0x404c5c
call fcn.004023d4
push 0x404c68
push dword [0x404b48]
call fcn.004023a8
push 0x404c68
call fcn.004023d4
push 0x404c74
push dword [0x404b4c]
call fcn.004023a8
push 0x404c74
call fcn.004023d4
push str.__WBRandomSSE__128_bit_
call fcn.004023d4
push 0x404c98
call fcn.004023d4
cmp dword [0x404b30], 0
je 0x40145e
movapd xmm0, xmmword [0x404b30]
mov dword [0x404b30], 0
jmp 0x4014e0
mov ebx, dword [section..data]
mov ecx, dword [0x404004]
movapd xmm0, xmmword [ebx + 0x404010]
movapd xmm1, xmmword [ebx + 0x404020]
movapd xmm2, xmm0
movapd xmm3, xmm1
pslld xmm0, 0x13
pslld xmm1, 0x1b
psrld xmm2, 0xd
psrld xmm3, 5
por xmm0, xmm2
por xmm1, xmm3
paddd xmm0, xmmword [ecx + 0x404010]
paddd xmm1, xmmword [ecx + 0x404020]
movapd xmmword [ebx + 0x404010], xmm1
movapd xmmword [ebx + 0x404020], xmm0
mov ebx, dword [ebx*4 + 0x4042b0]
mov ecx, dword [ecx*4 + 0x4042b0]
mov dword [section..data], ebx
mov dword [0x404004], ebx
movapd xmmword [0x404b30], xmm1
movapd xmmword [0x404b40], xmm0
push 0x404c9b
push dword [0x404b40]
call fcn.004023a8
push 0x404c9b
call fcn.004023d4
push 0x404ca8
push dword [0x404b44]
call fcn.004023a8
push 0x404ca8
call fcn.004023d4
push 0x404cb4
push dword [0x404b48]
call fcn.004023a8
push 0x404cb4
call fcn.004023d4
push 0x404cc0
push dword [0x404b4c]
call fcn.004023a8
push 0x404cc0
call fcn.004023d4
push str.__WBRandomSSE__128_bit__lookup_
call fcn.004023d4
push 0x404cec
call fcn.004023d4
cmp dword [0x404b30], 0
je 0x401584
movapd xmm0, xmmword [0x404b30]
mov dword [0x404b30], 0
jmp 0x40160c
mov ebx, dword [section..data]
mov ecx, dword [0x404004]
movapd xmm0, xmmword [ebx + 0x404010]
movapd xmm1, xmmword [ebx + 0x404020]
movapd xmm2, xmm0
movapd xmm3, xmm1
pslld xmm0, 0x13
pslld xmm1, 0x1b
psrld xmm2, 0xd
psrld xmm3, 5
por xmm0, xmm2
por xmm1, xmm3
paddd xmm0, xmmword [ecx + 0x404010]
paddd xmm1, xmmword [ecx + 0x404020]
movapd xmmword [ebx + 0x404010], xmm1
movapd xmmword [ebx + 0x404020], xmm0
sub ebx, 0x10
jae 0x4015ee
mov ebx, 0x200
sub ecx, 0x10
jae 0x4015f8
mov ecx, 0x200
mov dword [section..data], ebx
mov dword [0x404004], ebx
movapd xmmword [0x404b30], xmm1
movapd xmm1, xmmword [0x404250]
movapd xmm2, xmmword [0x404260]
movapd xmm3, xmmword [0x404240]
pand xmm0, xmm1
por xmm0, xmm2
subpd xmm0, xmm3
movapd xmmword [0x404230], xmm0
mov byte [0x404ed0], 0
push dword [0x404234]
push dword [0x404230]
push 0x404cef
push 0x404ed0
call dword [sym.imp.msvcrt.dll_sprintf]
add esp, 0x10
push 0x404ed0
call fcn.004023d4
push 0x404cf3
call fcn.004023d4
push 0x404cf5
call fcn.004023d4
mov byte [0x405010], 0
push dword [0x40423c]
push dword [0x404238]
push 0x404cef
push 0x405010
call dword [sym.imp.msvcrt.dll_sprintf]
add esp, 0x10
push 0x405010
call fcn.004023d4
push str.__WDRandomSSE__2_doubles_
call fcn.004023d4
push 0x404d12
call fcn.004023d4
cmp dword [0x404b30], 0
je 0x4016e0
movapd xmm0, xmmword [0x404b30]
mov dword [0x404b30], 0
jmp 0x401768
mov ebx, dword [section..data]
mov ecx, dword [0x404004]
movapd xmm0, xmmword [ebx + 0x404010]
movapd xmm1, xmmword [ebx + 0x404020]
movapd xmm2, xmm0
movapd xmm3, xmm1
pslld xmm0, 0x13
pslld xmm1, 0x1b
psrld xmm2, 0xd
psrld xmm3, 5
por xmm0, xmm2
por xmm1, xmm3
paddd xmm0, xmmword [ecx + 0x404010]
paddd xmm1, xmmword [ecx + 0x404020]
movapd xmmword [ebx + 0x404010], xmm1
movapd xmmword [ebx + 0x404020], xmm0
sub ebx, 0x10
jae 0x40174a
mov ebx, 0x200
sub ecx, 0x10
jae 0x401754
mov ecx, 0x200
mov dword [section..data], ebx
mov dword [0x404004], ebx
movapd xmmword [0x404b30], xmm1
movapd xmm1, xmmword [0x404290]
movapd xmm2, xmmword [0x4042a0]
movapd xmm3, xmmword [0x404280]
pand xmm0, xmm1
por xmm0, xmm2
subps xmm0, xmm3
movapd xmmword [0x404270], xmm0
wait
fninit
fld dword [0x404270]
fstp qword [0x405154]
wait
mov byte [0x40515c], 0
push dword [0x405158]
push dword [0x405154]
push 0x404cef
push 0x40515c
call dword [sym.imp.msvcrt.dll_sprintf]
add esp, 0x10
push 0x40515c
call fcn.004023d4
push 0x404d15
call fcn.004023d4
push 0x404d17
call fcn.004023d4
wait
fninit
fld dword [0x404274]
fstp qword [0x405190]
wait
mov byte [0x405198], 0
push dword [0x405194]
push dword [0x405190]
push 0x404cef
push 0x405198
call dword [sym.imp.msvcrt.dll_sprintf]
add esp, 0x10
push 0x405198
call fcn.004023d4
push 0x404d1a
call fcn.004023d4
push 0x404d1c
call fcn.004023d4
wait
fninit
fld dword [0x404278]
fstp qword [0x4051cc]
wait
mov byte [0x4051d4], 0
push dword [0x4051d0]
push dword [0x4051cc]
push 0x404cef
push 0x4051d4
call dword [sym.imp.msvcrt.dll_sprintf]
add esp, 0x10
push 0x4051d4
call fcn.004023d4
push 0x404d1f
call fcn.004023d4
push 0x404d21
call fcn.004023d4
wait
fninit
fld dword [0x40427c]
fstp qword [0x405208]
wait
mov byte [0x405210], 0
push dword [0x40520c]
push dword [0x405208]
push 0x404cef
push 0x405210
call dword [sym.imp.msvcrt.dll_sprintf]
add esp, 0x10
push 0x405210
call fcn.004023d4
push str.__WSRandomSSE__4_singles_
call fcn.004023d4
push 0x404d3e
call fcn.004023d4
mov dword [0x404d50], 0x989680
call sub.kernel32.dll_GetCurrentProcess
push 0x80
push eax
call sub.kernel32.dll_SetPriorityClass
xor eax, eax
cpuid
rdtsc
push edx
push eax
mov dword [0x404d54], 0x989680
xor eax, eax
cpuid
lea esp, [esp]
lea ebx, [ebx]
sub dword [0x404d54], 1
jne 0x401920
xor eax, eax
cpuid
rdtsc
pop ecx
sub eax, ecx
pop ecx
sbb edx, ecx
push edx
push eax
xor eax, eax
cpuid
rdtsc
push edx
push eax
mov dword [0x404d54], 0x989680
xor eax, eax
cpuid
lea ecx, [ecx]
mov ebx, dword [section..data]
mov ecx, dword [0x404004]
movapd xmm0, xmmword [ebx + 0x404010]
movapd xmm1, xmmword [ebx + 0x404020]
movapd xmm2, xmm0
movapd xmm3, xmm1
pslld xmm0, 0x13
pslld xmm1, 0x1b
psrld xmm2, 0xd
psrld xmm3, 5
por xmm0, xmm2
por xmm1, xmm3
paddd xmm0, xmmword [ecx + 0x404010]
paddd xmm1, xmmword [ecx + 0x404020]
movapd xmmword [ebx + 0x404010], xmm1
movapd xmmword [ebx + 0x404020], xmm0
sub ebx, 0x10
jae 0x4019ba
mov ebx, 0x200
sub ecx, 0x10
jae 0x4019c4
mov ecx, 0x200
mov dword [section..data], ebx
mov dword [0x404004], ebx
sub dword [0x404d54], 1
jne 0x401950
xor eax, eax
cpuid
rdtsc
pop ecx
sub eax, ecx
pop ecx
sbb edx, ecx
pop ecx
sub eax, ecx
pop ecx
sbb edx, ecx
mov dword [0x404d48], eax
mov dword [0x404d4c], edx
call sub.kernel32.dll_GetCurrentProcess
push 0x20
push eax
call sub.kernel32.dll_SetPriorityClass
wait
fninit
fild qword [0x404d48]
fild dword [0x404d50]
fdivp st(1)
fistp qword [0x404d48]
mov eax, dword [0x404d48]
push 0xa
push 0x404d58
push eax
call dword [sym.imp.msvcrt.dll__ultoa]
add esp, 0xc
push 0x404d58
call fcn.004023d4
push str._cycles__WBRandom_SSE
call fcn.004023d4
push 0x404d82
call fcn.004023d4
mov dword [0x404d50], 0x989680
call sub.kernel32.dll_GetCurrentProcess
push 0x80
push eax
call sub.kernel32.dll_SetPriorityClass
xor eax, eax
cpuid
rdtsc
push edx
push eax
mov dword [0x404d54], 0x989680
xor eax, eax
cpuid
lea esp, [esp]
lea esp, [esp]
sub dword [0x404d54], 1
jne 0x401a90
xor eax, eax
cpuid
rdtsc
pop ecx
sub eax, ecx
pop ecx
sbb edx, ecx
push edx
push eax
xor eax, eax
cpuid
rdtsc
push edx
push eax
mov dword [0x404d54], 0x989680
xor eax, eax
cpuid
lea ecx, [ecx]
mov ebx, dword [section..data]
mov ecx, dword [0x404004]
movapd xmm0, xmmword [ebx + 0x404010]
movapd xmm1, xmmword [ebx + 0x404020]
movapd xmm2, xmm0
movapd xmm3, xmm1
pslld xmm0, 0x13
pslld xmm1, 0x1b
psrld xmm2, 0xd
psrld xmm3, 5
por xmm0, xmm2
por xmm1, xmm3
paddd xmm0, xmmword [ecx + 0x404010]
paddd xmm1, xmmword [ecx + 0x404020]
movapd xmmword [ebx + 0x404010], xmm1
movapd xmmword [ebx + 0x404020], xmm0
mov ebx, dword [ebx*4 + 0x4042b0]
mov ecx, dword [ecx*4 + 0x4042b0]
mov dword [section..data], ebx
mov dword [0x404004], ebx
sub dword [0x404d54], 1
jne 0x401ac0
xor eax, eax
cpuid
rdtsc
pop ecx
sub eax, ecx
pop ecx
sbb edx, ecx
pop ecx
sub eax, ecx
pop ecx
sbb edx, ecx
mov dword [0x404d48], eax
mov dword [0x404d4c], edx
call sub.kernel32.dll_GetCurrentProcess
push 0x20
push eax
call sub.kernel32.dll_SetPriorityClass
wait
fninit
fild qword [0x404d48]
fild dword [0x404d50]
fdivp st(1)
fistp qword [0x404d48]
mov eax, dword [0x404d48]
push 0xa
push 0x404d85
push eax
call dword [sym.imp.msvcrt.dll__ultoa]
add esp, 0xc
push 0x404d85
call fcn.004023d4
push str._cycles__WBRandom_SSE__lookup
call fcn.004023d4
push 0x404dba
call fcn.004023d4
mov dword [0x404d50], 0x989680
call sub.kernel32.dll_GetCurrentProcess
push 0x80
push eax
call sub.kernel32.dll_SetPriorityClass
xor eax, eax
cpuid
rdtsc
push edx
push eax
mov dword [0x404d54], 0x989680
xor eax, eax
cpuid
lea esp, [esp]
sub dword [0x404d54], 1
jne 0x401bf0
xor eax, eax
cpuid
rdtsc
pop ecx
sub eax, ecx
pop ecx
sbb edx, ecx
push edx
push eax
xor eax, eax
cpuid
rdtsc
push edx
push eax
mov dword [0x404d54], 0x989680
xor eax, eax
cpuid
lea ecx, [ecx]
cmp dword [0x404b30], 0
je 0x401c40
movapd xmm0, xmmword [0x404b30]
mov dword [0x404b30], 0
jmp 0x401cc8
mov ebx, dword [section..data]
mov ecx, dword [0x404004]
movapd xmm0, xmmword [ebx + 0x404010]
movapd xmm1, xmmword [ebx + 0x404020]
movapd xmm2, xmm0
movapd xmm3, xmm1
pslld xmm0, 0x13
pslld xmm1, 0x1b
psrld xmm2, 0xd
psrld xmm3, 5
por xmm0, xmm2
por xmm1, xmm3
paddd xmm0, xmmword [ecx + 0x404010]
paddd xmm1, xmmword [ecx + 0x404020]
movapd xmmword [ebx + 0x404010], xmm1
movapd xmmword [ebx + 0x404020], xmm0
sub ebx, 0x10
jae 0x401caa
mov ebx, 0x200
sub ecx, 0x10
jae 0x401cb4
mov ecx, 0x200
mov dword [section..data], ebx
mov dword [0x404004], ebx
movapd xmmword [0x404b30], xmm1
sub dword [0x404d54], 1
jne 0x401c20
xor eax, eax
cpuid
rdtsc
pop ecx
sub eax, ecx
pop ecx
sbb edx, ecx
pop ecx
sub eax, ecx
pop ecx
sbb edx, ecx
mov dword [0x404d48], eax
mov dword [0x404d4c], edx
call sub.kernel32.dll_GetCurrentProcess
push 0x20
push eax
call sub.kernel32.dll_SetPriorityClass
wait
fninit
fild qword [0x404d48]
fild dword [0x404d50]
fdivp st(1)
fistp qword [0x404d48]
mov eax, dword [0x404d48]
push 0xa
push 0x404dbd
push eax
call dword [sym.imp.msvcrt.dll__ultoa]
add esp, 0xc
push 0x404dbd
call fcn.004023d4
push str._cycles__WBRandom_SSE__128_bit
call fcn.004023d4
push 0x404df3
call fcn.004023d4
mov dword [0x404d50], 0x989680
call sub.kernel32.dll_GetCurrentProcess
push 0x80
push eax
call sub.kernel32.dll_SetPriorityClass
xor eax, eax
cpuid
rdtsc
push edx
push eax
mov dword [0x404d54], 0x989680
xor eax, eax
cpuid
lea ebx, [ebx]
sub dword [0x404d54], 1
jne 0x401d80
xor eax, eax
cpuid
rdtsc
pop ecx
sub eax, ecx
pop ecx
sbb edx, ecx
push edx
push eax
xor eax, eax
cpuid
rdtsc
push edx
push eax
mov dword [0x404d54], 0x989680
xor eax, eax
cpuid
lea ecx, [ecx]
cmp dword [0x404b30], 0
je 0x401dd0
movapd xmm0, xmmword [0x404b30]
mov dword [0x404b30], 0
jmp 0x401e52
mov ebx, dword [section..data]
mov ecx, dword [0x404004]
movapd xmm0, xmmword [ebx + 0x404010]
movapd xmm1, xmmword [ebx + 0x404020]
movapd xmm2, xmm0
movapd xmm3, xmm1
pslld xmm0, 0x13
pslld xmm1, 0x1b
psrld xmm2, 0xd
psrld xmm3, 5
por xmm0, xmm2
por xmm1, xmm3
paddd xmm0, xmmword [ecx + 0x404010]
paddd xmm1, xmmword [ecx + 0x404020]
movapd xmmword [ebx + 0x404010], xmm1
movapd xmmword [ebx + 0x404020], xmm0
mov ebx, dword [ebx*4 + 0x4042b0]
mov ecx, dword [ecx*4 + 0x4042b0]
mov dword [section..data], ebx
mov dword [0x404004], ebx
movapd xmmword [0x404b30], xmm1
sub dword [0x404d54], 1
jne 0x401db0
xor eax, eax
cpuid
rdtsc
pop ecx
sub eax, ecx
pop ecx
sbb edx, ecx
pop ecx
sub eax, ecx
pop ecx
sbb edx, ecx
mov dword [0x404d48], eax
mov dword [0x404d4c], edx
call sub.kernel32.dll_GetCurrentProcess
push 0x20
push eax
call sub.kernel32.dll_SetPriorityClass
wait
fninit
fild qword [0x404d48]
fild dword [0x404d50]
fdivp st(1)
fistp qword [0x404d48]
mov eax, dword [0x404d48]
push 0xa
push 0x404df6
push eax
call dword [sym.imp.msvcrt.dll__ultoa]
add esp, 0xc
push 0x404df6
call fcn.004023d4
push str._cycles__WBRandom_SSE__128_bit__lookup
call fcn.004023d4
push 0x404e33
call fcn.004023d4
mov dword [0x404d50], 0x989680
call sub.kernel32.dll_GetCurrentProcess
push 0x80
push eax
call sub.kernel32.dll_SetPriorityClass
xor eax, eax
cpuid
rdtsc
push edx
push eax
mov dword [0x404d54], 0x989680
xor eax, eax
cpuid
lea esp, [esp]
add eax, 0
sub dword [0x404d54], 1
jne 0x401f10
xor eax, eax
cpuid
rdtsc
pop ecx
sub eax, ecx
pop ecx
sbb edx, ecx
push edx
push eax
xor eax, eax
cpuid
rdtsc
push edx
push eax
mov dword [0x404d54], 0x989680
xor eax, eax
cpuid
lea ecx, [ecx]
cmp dword [0x404b30], 0
je 0x401f60
movapd xmm0, xmmword [0x404b30]
mov dword [0x404b30], 0
jmp 0x401fe8
mov ebx, dword [section..data]
mov ecx, dword [0x404004]
movapd xmm0, xmmword [ebx + 0x404010]
movapd xmm1, xmmword [ebx + 0x404020]
movapd xmm2, xmm0
movapd xmm3, xmm1
pslld xmm0, 0x13
pslld xmm1, 0x1b
psrld xmm2, 0xd
psrld xmm3, 5
por xmm0, xmm2
por xmm1, xmm3
paddd xmm0, xmmword [ecx + 0x404010]
paddd xmm1, xmmword [ecx + 0x404020]
movapd xmmword [ebx + 0x404010], xmm1
movapd xmmword [ebx + 0x404020], xmm0
sub ebx, 0x10
jae 0x401fca
mov ebx, 0x200
sub ecx, 0x10
jae 0x401fd4
mov ecx, 0x200
mov dword [section..data], ebx
mov dword [0x404004], ebx
movapd xmmword [0x404b30], xmm1
movapd xmm1, xmmword [0x404250]
movapd xmm2, xmmword [0x404260]
movapd xmm3, xmmword [0x404240]
pand xmm0, xmm1
por xmm0, xmm2
subpd xmm0, xmm3
sub dword [0x404d54], 1
jne 0x401f40
xor eax, eax
cpuid
rdtsc
pop ecx
sub eax, ecx
pop ecx
sbb edx, ecx
pop ecx
sub eax, ecx
pop ecx
sbb edx, ecx
mov dword [0x404d48], eax
mov dword [0x404d4c], edx
call sub.kernel32.dll_GetCurrentProcess
push 0x20
push eax
call sub.kernel32.dll_SetPriorityClass
wait
fninit
fild qword [0x404d48]
fild dword [0x404d50]
fdivp st(1)
fistp qword [0x404d48]
mov eax, dword [0x404d48]
push 0xa
push 0x404e36
push eax
call dword [sym.imp.msvcrt.dll__ultoa]
add esp, 0xc
push 0x404e36
call fcn.004023d4
push str._cycles__WDRandom_SSE__2_doubles
call fcn.004023d4
push 0x404e6d
call fcn.004023d4
mov dword [0x404d50], 0x989680
call sub.kernel32.dll_GetCurrentProcess
push 0x80
push eax
call sub.kernel32.dll_SetPriorityClass
xor eax, eax
cpuid
rdtsc
push edx
push eax
mov dword [0x404d54], 0x989680
xor eax, eax
cpuid
mov edi, edi
sub dword [0x404d54], 1
jne 0x4020c0
xor eax, eax
cpuid
rdtsc
pop ecx
sub eax, ecx
pop ecx
sbb edx, ecx
push edx
push eax
xor eax, eax
cpuid
rdtsc
push edx
push eax
mov dword [0x404d54], 0x989680
xor eax, eax
cpuid
lea ecx, [ecx]
cmp dword [0x404b30], 0
je 0x402110
movapd xmm0, xmmword [0x404b30]
mov dword [0x404b30], 0
jmp 0x402198
mov ebx, dword [section..data]
mov ecx, dword [0x404004]
movapd xmm0, xmmword [ebx + 0x404010]
movapd xmm1, xmmword [ebx + 0x404020]
movapd xmm2, xmm0
movapd xmm3, xmm1
pslld xmm0, 0x13
pslld xmm1, 0x1b
psrld xmm2, 0xd
psrld xmm3, 5
por xmm0, xmm2
por xmm1, xmm3
paddd xmm0, xmmword [ecx + 0x404010]
paddd xmm1, xmmword [ecx + 0x404020]
movapd xmmword [ebx + 0x404010], xmm1
movapd xmmword [ebx + 0x404020], xmm0
sub ebx, 0x10
jae 0x40217a
mov ebx, 0x200
sub ecx, 0x10
jae 0x402184
mov ecx, 0x200
mov dword [section..data], ebx
mov dword [0x404004], ebx
movapd xmmword [0x404b30], xmm1
movapd xmm1, xmmword [0x404290]
movapd xmm2, xmmword [0x4042a0]
movapd xmm3, xmmword [0x404280]
pand xmm0, xmm1
por xmm0, xmm2
subps xmm0, xmm3
sub dword [0x404d54], 1
jne 0x4020f0
xor eax, eax
cpuid
rdtsc
pop ecx
sub eax, ecx
pop ecx
sbb edx, ecx
pop ecx
sub eax, ecx
pop ecx
sbb edx, ecx
mov dword [0x404d48], eax
mov dword [0x404d4c], edx
call sub.kernel32.dll_GetCurrentProcess
push 0x20
push eax
call sub.kernel32.dll_SetPriorityClass
wait
fninit
fild qword [0x404d48]
fild dword [0x404d50]
fdivp st(1)
fistp qword [0x404d48]
mov eax, dword [0x404d48]
push 0xa
push 0x404e70
push eax
call dword [sym.imp.msvcrt.dll__ultoa]
add esp, 0xc
push 0x404e70
call fcn.004023d4
push str._cycles__WSRandom_SSE__4_singles
call fcn.004023d4
push 0x404ea5
call fcn.004023d4
push str.Press_any_key_to_exit...
call fcn.004023d4
call fcn.00402410
push 0x404ec1
call fcn.004023d4
push 0
call sub.kernel32.dll_ExitProcess
push ebp
mov ebp, esp
mov eax, dword [ebp + 8]
xor ecx, ecx
imul eax, eax, 0xac564b05
add eax, 1
mov dword [ecx*4 + 0x404010], eax
add ecx, 1
cmp ecx, 0x88
jb 0x402265
mov dword [section..data], 0
mov dword [0x404004], 0x140
mov ebx, dword [section..data]
mov ecx, dword [0x404004]
movapd xmm0, xmmword [ebx + 0x404010]
movapd xmm1, xmmword [ebx + 0x404020]
movapd xmm2, xmm0
movapd xmm3, xmm1
pslld xmm0, 0x13
pslld xmm1, 0x1b
psrld xmm2, 0xd
psrld xmm3, 5
por xmm0, xmm2
por xmm1, xmm3
paddd xmm0, xmmword [ecx + 0x404010]
paddd xmm1, xmmword [ecx + 0x404020]
movapd xmmword [ebx + 0x404010], xmm1
movapd xmmword [ebx + 0x404020], xmm0
sub ebx, 0x10
jae 0x4022fe
mov ebx, 0x200
sub ecx, 0x10
jae 0x402308
mov ecx, 0x200
mov dword [section..data], ebx
mov dword [0x404004], ebx
push edi
mov edi, 0x1e
mov ebx, dword [section..data]
mov ecx, dword [0x404004]
movapd xmm0, xmmword [ebx + 0x404010]
movapd xmm1, xmmword [ebx + 0x404020]
movapd xmm2, xmm0
movapd xmm3, xmm1
pslld xmm0, 0x13
pslld xmm1, 0x1b
psrld xmm2, 0xd
psrld xmm3, 5
por xmm0, xmm2
por xmm1, xmm3
paddd xmm0, xmmword [ecx + 0x404010]
paddd xmm1, xmmword [ecx + 0x404020]
movapd xmmword [ebx + 0x404010], xmm1
movapd xmmword [ebx + 0x404020], xmm0
sub ebx, 0x10
jae 0x402384
mov ebx, 0x200
sub ecx, 0x10
jae 0x40238e
mov ecx, 0x200
mov dword [section..data], ebx
mov dword [0x404004], ebx
sub edi, 1
jne 0x40231a
pop edi
leave
ret 4