Function at 0x5b6210
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x7227f8
push eax
mov dword fs:[0], esp
sub esp, 0x48
push ebx
push ebp
push esi
push edi
mov edi, ecx
mov eax, dword [edi + 0x9c8]
mov eax, dword [eax + 0x958]
xor ebx, ebx
cmp eax, ebx
jne case.0x5b6346.2
mov eax, dword [0x7a39fc]
mov ecx, dword [eax + 8]
push 2
call fcn.004ae980
test eax, eax
jne case.0x5b6346.2
mov eax, dword [edi + 0x9c8]
mov ecx, dword [eax + 0x9c8]
cmp ecx, ebx
je 0x5b628b
mov esi, ecx
cmp esi, ebx
je 0x5b627f
call fcn.004015a0
push esi
call fcn.006fa390
add esp, 4
mov eax, dword [edi + 0x9c8]
mov dword [eax + 0x9c8], ebx
mov ecx, dword [edi + 0x9c8]
call fcn.004d3580
test eax, eax
je 0x5b690e
mov eax, dword [edi + 0x9c8]
mov eax, dword [eax + 0x968]
cmp eax, 1
jge 0x5b690e
mov ecx, dword [esp + 0x68]
mov dword [ecx + 0x38], ebx
mov ecx, dword [edi + 0x9c8]
call fcn.004d3630
mov esi, eax
cmp esi, ebx
je case.0x5b6346.2
mov eax, dword [esi + 0x14]
mov dx, word [esi + 4]
mov ecx, dword [esi + 0xc]
mov ebx, dword [esi + 8]
lea ebp, [esi + 0x14]
mov dword [esp + 0x10], eax
mov ax, word [esi + 0x5c]
mov word [esp + 0x20], dx
mov dl, byte [esi + 0x10]
mov dword [esp + 0x1c], ecx
mov ecx, dword [esi + 0x74]
mov word [esp + 0x28], ax
mov eax, dword [edi + 0x9c8]
mov byte [esp + 0x14], dl
mov edx, dword [esp + 0x14]
mov dword [esp + 0x24], ecx
mov dword [eax + 0x9c8], esi
mov ecx, dword [edi + 0x9c8]
push edx
call fcn.004d2b40
cmp byte [esp + 0x14], 0xa
je 0x5b6333
push 0
push 0
push 1
mov ecx, edi
call fcn.004f00a0
movzx eax, byte [esp + 0x14]
mov dword [esp + 0x18], eax
dec eax
cmp eax, 0xb
ja case.0x5b6346.2
jmp dword [eax*4 + 0x5b6948]
mov eax, dword [0x7a39fc]
xor ebp, ebp
mov dword [esp + 0x14], ebp
mov dword [esp + 0x68], ebp
mov ecx, dword [eax + 8]
lea edx, [esp + 0x68]
push edx
lea eax, [esp + 0x18]
push eax
call fcn.004aede0
mov ecx, eax
call fcn.004ade40
cmp dword [esp + 0x24], ebp
je 0x5b63bb
mov ecx, dword [esi + 0x80]
mov edx, dword [esi + 0x7c]
mov eax, dword [esi + 0x78]
push ecx
mov ecx, dword [esp + 0x20]
push edx
movzx edx, word [esp + 0x28]
push eax
mov eax, dword [esp + 0x24]
push 1
push ecx
mov ecx, dword [esp + 0x24]
push ebx
push edx
push eax
push 1
push 1
push ebp
push ebp
push ebp
push ebp
push ecx
mov ecx, edi
call fcn.004fde40
mov eax, dword [0x745dc8]
jmp 0x5b6931
mov edx, dword [esp + 0x1c]
movzx eax, word [esp + 0x20]
mov ecx, dword [esp + 0x18]
push ebp
push 4
push ebp
push ebp
push edx
mov edx, dword [esp + 0x3c]
push ebx
push eax
mov eax, dword [esp + 0x2c]
push ecx
push 1
push 1
push ebp
push ebp
push ebp
push edx
push eax
mov ecx, edi
call fcn.004fde40
mov eax, dword [0x745dc8]
jmp 0x5b6931
mov ecx, dword [edi + 4]
push ecx
mov ecx, dword [edi + 0x9c8]
push 1
call fcn.004d28f0
mov ecx, dword [edi + 0x9c8]
push 0
push ebx
call fcn.004d2920
jmp case.0x5b6346.2
mov edx, dword [edi + 4]
mov ecx, dword [edi + 0x9c8]
push edx
push 1
call fcn.004d28f0
mov ecx, dword [edi + 0x9c8]
push 0
push ebx
call fcn.004d2920
mov eax, dword [esi + 0x54]
mov ecx, dword [esi + 0x1c]
mov edx, dword [esp + 0x10]
push eax
push ecx
push edx
mov ecx, edi
call fcn.00501de0
jmp case.0x5b6346.2
mov eax, dword [edi + 4]
mov ecx, dword [edi + 0x9c8]
push eax
push 1
call fcn.004d28f0
mov ecx, dword [edi + 0x9c8]
push 0
push ebx
call fcn.004d2920
mov ecx, dword [esi + 0x54]
mov edx, dword [esi + 0x20]
mov eax, dword [esp + 0x10]
push ecx
push 0
push 1
push edx
push eax
mov ecx, edi
call fcn.005023a0
jmp case.0x5b6346.2
mov edx, dword [esi + 0x5c]
mov eax, dword [esi + 0x54]
xor ecx, ecx
mov cl, byte [esi + 0x60]
push 1
push ecx
push edx
mov edx, dword [esi + 0x4c]
push eax
mov eax, dword [esi + 0x48]
xor ecx, ecx
mov cl, byte [esi + 0x50]
push ecx
mov ecx, dword [esi + 0x84]
push edx
mov edx, dword [esi + 0x44]
push 1
push eax
push ecx
push edx
sub esp, 0xc
mov ecx, esp
lea eax, [esi + 0x38]
mov edx, dword [eax]
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [ecx + 4], edx
mov edx, dword [esi + 0x30]
mov dword [ecx + 8], eax
mov ecx, dword [esi + 0x34]
mov eax, dword [esi + 0x2c]
push ecx
mov ecx, dword [esi + 0x28]
push edx
mov edx, dword [esi + 0x24]
push eax
push ecx
push edx
mov ecx, edi
call fcn.004f9460
mov eax, dword [edi + 0x9c8]
mov esi, dword [eax + 0x9c8]
test esi, esi
je 0x5b6509
mov ecx, esi
call fcn.004015a0
push esi
call fcn.006fa390
add esp, 4
mov ecx, dword [edi + 0x9c8]
mov dword [ecx + 0x9c8], 0
mov eax, dword [0x745dc8]
jmp 0x5b6931
mov edx, dword [0x7a39fc]
mov eax, dword [esi + 0x44]
mov ecx, dword [edx + 8]
push eax
call fcn.004ae750
mov ebx, eax
xor ebp, ebp
cmp ebx, ebp
je 0x5b656c
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + 0x10]
test eax, eax
je 0x5b656c
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x30]
test eax, eax
je 0x5b656c
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + 0x30]
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x94]
test eax, eax
jne case.0x5b6346.2
mov eax, dword [0x7a39fc]
mov edx, dword [esi + 0x64]
mov ecx, dword [eax + 8]
push edx
call fcn.004ae760
cmp eax, ebp
je 0x5b6624
mov ecx, dword [esi + 0x68]
push ecx
mov ecx, eax
call fcn.00553960
cmp eax, ebp
je 0x5b6624
movzx ebx, word [eax + 2]
push str.FORCEHOSTILE
lea ecx, [esp + 0x3c]
mov dword [esp + 0x6c], ebp
call fcn.005e5a90
mov edx, dword [0x7a3a28]
mov eax, dword [edx + 0xb8]
mov eax, dword [eax + 0xf4]
lea ecx, [esp + 0x68]
push ecx
lea edx, [esp + 0x3c]
push edx
push ebx
mov ecx, eax
mov dword [esp + 0x6c], ebp
call fcn.00413660
lea ecx, [esp + 0x38]
mov dword [esp + 0x60], 0xffffffff
call fcn.005e5c20
mov eax, dword [0x7a3a28]
mov ecx, dword [eax + 0x8c]
push ebx
call fcn.0059b6d0
cmp eax, ebp
je 0x5b660f
cmp dword [eax + 0x148], ebp
je 0x5b660f
push ebp
push ebp
push 1
mov ecx, edi
call fcn.004f00a0
cmp dword [esp + 0x68], ebp
jg 0x5b6624
mov ecx, dword [esi + 0x44]
cmp ecx, dword [edi + 4]
je 0x5b6624
mov dword [esi + 0x44], 0x7f000000
mov edx, dword [esi + 0x48]
mov eax, dword [esi + 0x84]
mov ecx, dword [esi + 0x44]
push 1
push 1
push edx
push eax
push ecx
sub esp, 0xc
mov eax, esp
lea edx, [esi + 0x38]
mov ecx, dword [edx]
mov dword [eax], ecx
mov ecx, dword [edx + 4]
mov edx, dword [edx + 8]
mov dword [eax + 4], ecx
mov ecx, dword [esi + 0x68]
mov dword [eax + 8], edx
mov eax, dword [esi + 0x6c]
mov edx, dword [esi + 0x64]
push eax
push ecx
push edx
mov ecx, edi
call fcn.004f8c70
mov eax, dword [edi + 0x9c8]
mov esi, dword [eax + 0x9c8]
cmp esi, ebp
je 0x5b6682
mov ecx, esi
call fcn.004015a0
push esi
call fcn.006fa390
add esp, 4
mov ecx, dword [edi + 0x9c8]
mov dword [ecx + 0x9c8], ebp
mov eax, dword [0x745dc8]
jmp 0x5b6931
mov ecx, edi
call fcn.004cb120
mov edx, dword [eax + 0x120]
add eax, 0x11c
mov eax, dword [0x7a39fc]
mov dword [esp + 0x18], edx
mov edx, dword [ebp]
mov ecx, dword [eax + 8]
push edx
call fcn.004ae750
mov ebx, eax
test ebx, ebx
je 0x5b67f9
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x10]
test eax, eax
je 0x5b67f9
cmp dword [ebp], 0x7f000000
je 0x5b67f9
xor eax, eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
lea ecx, [esp + 0x58]
push ecx
push 1
lea edx, [esp + 0x5c]
push edx
push 1
mov dword [esp + 0x68], eax
mov dword [esp + 0x64], eax
lea eax, [esp + 0x5c]
push eax
mov eax, dword [esp + 0xac]
push 1
lea ecx, [esp + 0x68]
push ecx
push 2
lea edx, [esp + 0x70]
push edx
push 2
xor ecx, ecx
mov cx, word [eax + 0x6c]
add esi, 0x54
push esi
push 1
push ebp
push 3
mov dword [esp + 0x88], 0x3e4ccccd
push ecx
push 0x11
mov ecx, edi
mov dword [esp + 0x8c], 1
call fcn.004ccb00
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], 0
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + 0x10]
push 0
push 0
mov edx, dword [esi]
push 0
lea ecx, [esp + 0x4c]
push ecx
mov ecx, dword [ebp]
push 0
push 0
push 0
push 0
push 0
push 0
push 0x3dcccccd
push 0x3e4ccccd
push edx
mov edx, dword [esp + 0x4c]
push ecx
push edx
add eax, 0x90
push eax
mov eax, dword [esp + 0xa8]
xor ecx, ecx
mov cx, word [eax + 0x6c]
push ecx
mov ecx, edi
call fcn.004f8a50
mov edx, dword [edi + 0x9c8]
mov esi, dword [edx + 0x9c8]
test esi, esi
je 0x5b68f7
mov ecx, esi
call fcn.004015a0
push esi
call fcn.006fa390
mov eax, dword [edi + 0x9c8]
mov dword [eax + 0x9c8], 0
mov eax, dword [0x745dc8]
add esp, 4
jmp 0x5b6931
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [esp + 0x54]
push ecx
push 1
lea edx, [esp + 0x60]
push edx
push 2
lea ebx, [esi + 0x54]
push ebx
push 1
lea eax, [esp + 0x74]
push eax
push 3
lea ecx, [esp + 0x60]
push ecx
push 3
lea edx, [esi + 0x40]
push edx
push 2
lea ebp, [esi + 0x38]
add esi, 0x3c
push esi
mov esi, dword [esp + 0xc4]
xor eax, eax
mov ax, word [esi + 0x6c]
push 2
push ebp
push 2
mov ecx, edi
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0x3e4ccccd
push eax
push 0x12
mov dword [esp + 0xa4], 0x7f000000
call fcn.004ccb00
push 0
push 0
mov edx, dword [ebx]
push 0
mov eax, dword [esp + 0x24]
lea ecx, [esp + 0x58]
push ecx
push 0
push 0
push 0
push 0
push 0
push 0
push 0x3dcccccd
push 0x3e4ccccd
push edx
xor ecx, ecx
mov cx, word [esi + 0x6c]
push 0x7f000000
push eax
push ebp
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
push ecx
mov ecx, edi
call fcn.004f8a50
mov edx, dword [edi + 0x9c8]
mov esi, dword [edx + 0x9c8]
test esi, esi
je 0x5b68f7
mov ecx, esi
call fcn.004015a0
push esi
call fcn.006fa390
add esp, 4
mov eax, dword [edi + 0x9c8]
mov dword [eax + 0x9c8], 0
mov eax, dword [0x745dc8]
jmp 0x5b6931
mov ecx, dword [edi + 0x9c8]
call fcn.004d3580
mov ecx, dword [edi + 0x9c8]
cmp dword [ecx + 0x934], ebx
mov eax, dword [0x745dc0]
je 0x5b6931
mov eax, dword [0x745dbc]
mov ecx, dword [esp + 0x58]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x54
ret 4