Function at 0x40a6a0
Capabilities:
Terminate process

Disassembly:
push 0xffffffffffffffff
push 0x4625d8
mov eax, dword fs:[0]
push eax
sub esp, 0x498
mov eax, dword [0x47b6e0]
xor eax, esp
mov dword [esp + 0x494], eax
push ebx
push ebp
push edi
mov eax, dword [0x47b6e0]
xor eax, esp
push eax
lea eax, [esp + 0x4a8]
mov dword fs:[0], eax
mov ecx, esi
mov dword [esp + 0x20], esi
call fcn.00433c4d
xor edi, edi
mov dword [esp + 0x4b0], edi
mov dword [esi], 0x46d634
mov dword [esi + 0xd4], edi
mov dword [esi + 0xd8], edi
mov dword [esi + 0xdc], edi
mov dword [esi + 0xe0], edi
mov dword [esi + 0xe4], edi
mov byte [esp + 0x4b0], 4
mov dword [esi + 0xe8], edi
mov dword [esi + 0xec], edi
mov dword [esi + 0xf0], edi
mov dword [esi + 0x4ac], edi
mov dword [esi + 0x4b0], edi
call fcn.0042b96b
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x40a752
push 0x80004005
call fcn.00401090
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esi + 0x4b4], eax
mov byte [esp + 0x4b0], 5
call fcn.0042b96b
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x40a786
push 0x80004005
call fcn.00401090
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esi + 0x4b8], eax
mov dword [esi + 0x4c0], edi
mov dword [esi + 0x4c4], edi
mov dword [esi + 0x4c8], edi
mov dword [esi + 0x4d0], edi
mov dword [esi + 0x4d4], edi
mov dword [esi + 0x4d8], edi
mov byte [esp + 0x4b0], 8
or ebp, 0xffffffff
mov ebx, 1
mov dword [esi + 0x4e8], ebp
mov dword [esi + 0x4ec], ebp
mov dword [esi + 0x4f0], ebx
call fcn.0042b96b
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x40a7f8
push 0x80004005
call fcn.00401090
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esi + 0x4f4], eax
mov byte [esp + 0x4b0], 9
push 0x206
lea ecx, [esp + 0x2a2]
push edi
push ecx
mov dword [esi + 0x4f8], edi
mov dword [esi + 0x4fc], edi
mov dword [esi + 0x500], edi
mov dword [esi + 0x504], edi
mov dword [esi + 0x508], ebx
mov dword [esi + 0x50c], edi
mov dword [esi + 0x510], edi
mov dword [esi + 0x514], edi
mov dword [esi + 0x518], edi
mov word [esp + 0x2a8], di
call fcn.0044b520
add esp, 0xc
push 0x104
lea edx, [esp + 0x2a0]
push edx
call dword [0x46432c]
call fcn.0042b96b
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x40a893
push 0x80004005
call fcn.00401090
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x14], eax
lea ecx, [esp + 0x29c]
push ecx
lea edx, [esp + 0x18]
push 0x46cb00
push edx
mov byte [esp + 0x4bc], 0xa
call fcn.00409cb0
mov ecx, dword [esp + 0x20]
add esp, 0xc
lea eax, [esp + 0x4c]
push eax
push ecx
call dword [0x464330]
cmp eax, ebp
je 0x40a8e6
push eax
call dword [0x46431c]
mov dword [esi + 0x50c], ebx
push 0x3b8
lea edx, [esi + 0xf4]
push edi
push edx
call fcn.0044b520
mov ebx, 0x466868
add esp, 0xc
mov dword [esp + 0x1c], edi
mov dword [esp + 0x18], ebx
push 4
mov byte [esp + 0x4b4], 0xb
call dword [0x4640e0]
mov dword [esp + 0x1c], eax
call fcn.00428f17
call fcn.00428f17
mov eax, dword [eax + 0xc]
push 0x6f
push eax
call dword [0x464620]
push eax
mov eax, dword [esp + 0x20]
push eax
push edi
push edi
call fcn.00427e20
mov ebp, eax
call fcn.00428f17
mov eax, dword [eax + 8]
lea ecx, [esp + 0x24]
push ecx
push ebp
push eax
call dword [0x46464c]
lea edx, [esp + 0x24]
push edx
mov dword [esp + 0x4c], 0x46c8e0
call fcn.00427d92
mov eax, dword [esp + 0x48]
push edi
push edi
push edi
push edi
push 0x47ac88
push 0xcf0000
push 0x46c8cc
push eax
mov ecx, esi
call fcn.0043407a
test eax, eax
jne 0x40a991
push edi
call fcn.0044adce
mov byte [esp + 0x4b0], 0xa
lea ecx, [esp + 0x18]
mov dword [esp + 0x18], ebx
call fcn.0040a360
mov byte [esp + 0x4b0], 9
mov eax, dword [esp + 0x14]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x40a9ce
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, esi
mov ecx, dword [esp + 0x4a8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop ebp
pop ebx
mov ecx, dword [esp + 0x494]
xor ecx, esp
call fcn.00449f9d
add esp, 0x4a4
ret