Function at 0x4598e3
Capabilities:
Create thread

Disassembly:
push ebp
sub esp, 0xdc
lea ebp, [esp - 4]
mov eax, dword [0x7a6168]
xor eax, ebp
mov dword [ebp + 0xdc], eax
push 0xb8
mov eax, 0x69fd20
call fcn.00640871
mov ebx, ecx
mov dword [ebp - 0x14], ecx
mov eax, dword [ebp + 0xe8]
mov dword [ebp - 0x20], eax
xor eax, eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x24], eax
mov eax, dword [ebx]
mov dword [ebp - 0x18], ebx
mov esi, dword [eax]
cmp esi, eax
je 0x459957
mov edi, esi
mov esi, dword [esi]
push 0
push dword [edi + 8]
call dword [sym.imp.KERNEL32.DLL_WaitForSingleObject]
test eax, eax
jne 0x459953
push dword [edi + 8]
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
push edi
lea eax, [ebp - 0x28]
mov ecx, ebx
push eax
call fcn.00697009
cmp esi, dword [ebx]
jne 0x45992b
lea ecx, [ebp]
call fcn.00447acd
and dword [ebp - 4], 0
lea ecx, [ebp + 0x1c]
call fcn.00447acd
lea eax, [ebp + 0x38]
mov byte [ebp - 4], 2
push eax
call fcn.004499e7
lea eax, [ebp + 0x3c]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp + 0x20]
call fcn.00427cb3
lea eax, [ebp + 0xc0]
push eax
call fcn.00449a46
mov byte [ebp - 4], 4
test eax, eax
je 0x4599a1
add eax, 4
jmp 0x4599a3
xor eax, eax
push eax
lea ecx, [ebp + 4]
call fcn.00427cb3
lea ecx, [ebp + 0xc0]
call fcn.00447b2e
lea ecx, [ebp + 0x54]
call fcn.00447b2e
lea ecx, [ebp + 0x38]
call fcn.00447b2e
jmp 0x4599f4
xor eax, eax
lea ecx, [ebp - 0xc4]
inc eax
push eax
push 2
mov dword [ebp - 4], eax
call fcn.004416bd
mov esi, dword [ebx + 0x54]
mov byte [ebp - 4], 6
lea eax, [esi + 1]
mov dword [ebx + 0x54], eax
lea eax, [ebp + 0x70]
push eax
call fcn.00449888
mov dword [ebp - 0x18], eax
lea eax, [ebp + 0x8c]
mov byte [ebp - 4], 7
push eax
call fcn.0044a28f
mov ebx, eax
lea eax, [ebp + 0xc4]
mov byte [ebp - 4], 8
push eax
lea ecx, [ebp + 0x1c]
call fcn.00448349
mov edi, eax
lea eax, [ebp + 0xa8]
mov byte [ebp - 4], 9
push eax
lea ecx, [ebp]
call fcn.00448349
mov edx, eax
push str.:_
push 0x7440bc
push esi
mov esi, dword [ebp - 0x14]
push str._order_:_
push 0x6cbe9c
mov byte [ebp - 4], 0xa
lea ecx, [esi + 0x38]
push ecx
push str._sid_:_
mov ecx, 0x6cbe9c
lea eax, [esi + 8]
push ecx
push eax
push str._h_:_
push ecx
lea eax, [esi + 0x20]
push eax
push str._pid_:_
push ecx
push dword [ebp - 0x18]
lea eax, [ebp - 0xc4]
push str._l_:_
push ecx
push ebx
push str._osv_:_
push ecx
push edi
push str._cl_:_
push ecx
push edx
push str._v_:_
push dword [ebp - 0x20]
push 0x6c1080
push eax
call fcn.00448c07
push eax
call fcn.00447646
push eax
call fcn.00448c07
push eax
call fcn.00447646
push eax
call fcn.00448c07
push eax
call fcn.00448c07
push eax
call fcn.00447646
push eax
call fcn.00448c07
push eax
call fcn.00448c07
push eax
call fcn.00447c94
push eax
call fcn.00448c07
push eax
call fcn.00448c07
push eax
call fcn.00447c94
push eax
call fcn.00448c07
push eax
call fcn.00448c07
push eax
call fcn.00447646
push eax
call fcn.00448c07
push eax
call fcn.00448c07
push eax
call fcn.00447646
push eax
call fcn.00448c07
push eax
call fcn.00448c07
push eax
call fcn.00447646
push eax
call fcn.00448c07
push eax
call fcn.00448c07
mov ecx, eax
call fcn.004418ec
push eax
call fcn.00448c07
push eax
call fcn.00448c07
xor ebx, ebx
lea ecx, [ebp + 0xa8]
xor edi, edi
push ebx
inc edi
push edi
call fcn.0040f52f
push ebx
push edi
lea ecx, [ebp + 0xc4]
call fcn.0040f52f
lea ecx, [ebp + 0x8c]
call fcn.00447b2e
lea ecx, [ebp + 0x70]
mov byte [ebp - 4], 6
call fcn.00447b2e
push 0x1c
call fcn.0063ffa4
pop ecx
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x28], eax
mov byte [ebp - 4], 0xb
test eax, eax
je 0x459bdb
lea eax, [ebp + 0xc4]
push eax
lea ecx, [ebp - 0xc4]
call fcn.004443cb
mov ecx, dword [ebp - 0x14]
push eax
mov dword [ebp - 0x1c], edi
mov dword [ecx], esi
add ecx, 4
call fcn.0040ef81
jmp 0x459bde
mov dword [ebp - 0x14], ebx
test byte [ebp - 0x1c], 1
mov byte [ebp - 4], 6
je 0x459bf5
push ebx
push edi
lea ecx, [ebp + 0xc4]
call fcn.0040f52f
lea eax, [ebp - 0x2c]
push eax
push ebx
push dword [ebp - 0x14]
push 0x459884
push ebx
push ebx
call dword [sym.imp.KERNEL32.DLL_CreateThread]
mov dword [ebp - 0x18], eax
test eax, eax
je 0x459c1e
lea eax, [ebp - 0x18]
mov ecx, esi
push eax
push dword [esi]
call fcn.00696d89
lea ecx, [ebp - 0xc4]
call fcn.00441b51
lea ecx, [ebp + 0x1c]
call fcn.00447b2e
lea ecx, [ebp]
call fcn.00447b2e
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0xdc]
xor ecx, ebp
call fcn.006407be
lea esp, [ebp + 0xe0]
pop ebp
ret 4