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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0xd8]
cmp eax, dword [ecx + 8]
jbe 0x5bdcb0
sub esp, 0x158
mov eax, dword [esp + 0x15c]
mov ecx, dword [eax]
mov dword [esp + 0xd0], ecx
mov dword [esp], ecx
call fcn.005b7080
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 8]
mov ebp, dword [esp + 4]
mov esi, dword [esp + 8]
test eax, eax
jne 0x5bdbef
lea eax, [0x69a220]
cmp ebp, eax
je 0x5bc8da
mov ebx, 0
mov dword [esp + 0xcc], ebx
mov dword [esp + 0xa4], esi
mov dword [esp + 0xec], ebp
jne 0x5bdb2a
mov ecx, dword [ebx + 0x10]
test ecx, ecx
je 0x5bdb2a
mov dword [esp], ebx
call fcn.005d2730
mov eax, dword [esp + 0x15c]
lea ecx, [eax + 0x18]
mov dword [esp + 0xe8], ecx
mov dword [esp], ecx
call fcn.005d9cf0
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
call fcn.005b7080
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 4]
mov ebp, dword [esp + 8]
mov esi, dword [esp + 4]
mov edi, dword [esp + 8]
test eax, eax
jne 0x5bdb15
lea edx, [0x69a3a0]
cmp ebx, edx
je 0x5bc963
mov ebp, 0
jne 0x5bca58
mov eax, dword [esp + 0x15c]
mov ecx, dword [eax + 0xc]
movzx ecx, byte [ecx + 0x2b]
test cl, cl
je 0x5bca08
mov dword [esp + 0xc0], ebp
mov dword [esp], ebp
call fcn.005d4610
mov eax, dword [esp + 0xe8]
mov dword [esp], eax
call fcn.005d9cf0
mov eax, dword [esp + 0xc0]
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 0x10]
mov eax, dword [eax + 0x14]
mov ebx, dword [esp + 0xd0]
mov dword [ebx + 0x38], edx
mov dword [ebx + 0x3c], eax
mov eax, dword [0x8e84e0]
test eax, eax
jne 0x5bc9c9
mov dword [ebx + 0x34], ecx
jmp 0x5bc9d3
lea edi, [ebx + 0x34]
mov eax, ecx
call fcn.00463080
mov dword [esp], ebx
call fcn.005b7080
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 4]
mov ebp, dword [esp + 8]
test eax, eax
je 0x5bca5c
mov dword [esp + 0x160], ecx
mov dword [esp + 0x164], edx
add esp, 0x158
ret
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
mov byte [esp + 4], 0xa
call fcn.005b6370
lea eax, [0x697fe0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x32
lea ecx, [0x6d73d2]
mov dword [eax], ecx
lea ecx, [0x7395a8]
mov dword [esp + 0x160], ecx
mov dword [esp + 0x164], eax
add esp, 0x158
ret
mov ebx, esi
mov ebp, edi
mov dword [esp + 0xa4], ebp
mov dword [esp + 0x7c], ebx
mov edx, dword [esp + 0xd0]
mov esi, dword [edx + 0x2c]
test esi, esi
je 0x5bcb17
mov esi, dword [edx + 0x50]
mov edi, dword [edx + 0x4c]
test esi, esi
jbe 0x5bdca6
mov esi, dword [edi]
mov edi, dword [esi + 4]
mov esi, dword [esi]
mov ebp, dword [esp + 0xcc]
mov ebx, dword [ebp + 0xc]
mov ebp, dword [ebp + 0x10]
test ebp, ebp
jbe 0x5bdc9d
mov ebp, dword [ebx]
cmp dword [ebx + 4], edi
jne 0x5bcace
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], edi
call fcn.004029d0
movzx eax, byte [esp + 0xc]
test al, al
jne 0x5bcb4f
mov edx, dword [esp + 0xd0]
mov dword [esp], edx
mov byte [esp + 4], 0x2a
call fcn.005b6370
lea eax, [0x697fe0]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x33
lea ecx, [0x6d76cb]
mov dword [eax], ecx
lea ecx, [0x7395a8]
mov dword [esp + 0x160], ecx
mov dword [esp + 0x164], eax
add esp, 0x158
ret
mov eax, dword [esp + 0xcc]
mov ecx, dword [eax + 0xc]
mov ebx, dword [eax + 0x10]
mov eax, dword [eax + 0x14]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
call fcn.005bf0c0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
test eax, eax
jne 0x5bdb00
mov eax, dword [esp + 0x15c]
mov ecx, dword [eax + 0x14]
mov edx, dword [ecx + 0x10]
mov ecx, dword [edx]
mov ebx, dword [esp + 0xd0]
movzx ebp, word [ebx + 0x24]
mov word [esp], bp
call ecx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov ebx, dword [esp + 0x7c]
lea ebp, [0x69a820]
cmp ebx, ebp
jne 0x5bcb8e
mov edx, dword [esp + 0xa4]
jmp 0x5bcb93
mov edx, 0
mov dword [esp + 0x80], eax
mov dword [esp + 0xac], ecx
jne 0x5bcdac
mov dword [esp + 0x94], edx
mov ebx, dword [edx]
mov ebp, dword [edx + 4]
mov esi, dword [edx + 8]
test ebx, ebx
jne 0x5bcc98
mov eax, dword [edx + 0x10]
mov dword [esp + 0x8c], eax
lea ecx, [0x68e6c0]
mov dword [esp], ecx
lea ebx, [eax + 4]
mov dword [esp + 0x60], ebx
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.0044b730
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x60]
test ecx, ecx
jbe 0x5bdc94
mov byte [eax], 0xc
cmp ecx, 1
jbe 0x5bdc88
mov edx, dword [esp + 0x8c]
mov ebx, edx
sar edx, 0x10
mov byte [eax + 1], dl
cmp ecx, 2
jbe 0x5bdc7c
mov edx, ebx
sar ebx, 8
mov byte [eax + 2], bl
cmp ecx, 3
jbe 0x5bdc70
mov byte [eax + 3], dl
mov ebx, edx
neg edx
sar edx, 0x1f
and edx, 4
add edx, eax
mov edi, dword [esp + 0x94]
mov ebp, dword [edi + 0xc]
mov esi, dword [edi + 0x10]
cmp esi, ebx
jl 0x5bcc4c
mov esi, ebx
cmp ebp, edx
je 0x5bcc79
mov dword [esp + 0xe4], eax
mov dword [esp], edx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.00463a10
mov eax, dword [esp + 0xe4]
mov ecx, dword [esp + 0x60]
mov edi, dword [esp + 0x94]
mov dword [edi + 4], ecx
mov dword [edi + 8], ecx
mov edx, dword [0x8e84e0]
test edx, edx
jne 0x5bcc8d
mov dword [edi], eax
jmp 0x5bcc92
call fcn.00463080
mov esi, ecx
mov ebp, esi
mov ebx, eax
mov eax, dword [esp + 0xe8]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], esi
call fcn.005d9cf0
mov eax, dword [esp + 0xd0]
mov ecx, dword [eax + 0x28]
mov edx, dword [esp + 0x15c]
mov ebx, dword [edx + 0x10]
mov ebp, dword [edx + 0xc]
mov esi, dword [eax + 0x50]
mov edi, dword [eax + 0x4c]
test esi, esi
jbe 0x5bdc67
mov eax, dword [esp + 0x80]
mov edx, dword [eax + 0x1c]
mov esi, dword [edi]
mov edi, dword [esp + 0xac]
mov dword [esp], edi
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], esi
mov ecx, dword [esp + 0x94]
mov dword [esp + 0x14], ecx
call edx
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
test eax, eax
jne 0x5bcd67
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
call fcn.005b7080
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 4]
mov ebp, dword [esp + 8]
test eax, eax
jne 0x5bcd52
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0xac]
jmp 0x5bcdb3
mov dword [esp + 0x160], ecx
mov dword [esp + 0x164], edx
add esp, 0x158
ret
mov dword [esp + 0xbc], edx
mov dword [esp + 0xec], ecx
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
mov byte [esp + 4], 0xa
call fcn.005b6370
mov eax, dword [esp + 0xec]
mov dword [esp + 0x160], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x164], eax
add esp, 0x158
ret
mov ebp, dword [esp + 0xa4]
lea edx, [0x69a2e0]
cmp ebx, edx
jne 0x5bcdc1
mov esi, ebp
jmp 0x5bcdc8
mov esi, ebp
mov ebp, 0
mov dword [esp + 0x7c], ebx
mov dword [esp + 0xc8], ebp
je 0x5bcde7
mov edi, ebx
xor ebx, ebx
mov dword [esp + 0xc4], ebx
mov ebx, edi
jmp 0x5bceb4
mov dword [esp], ebp
call fcn.005d52d0
mov eax, dword [esp + 0xe8]
mov dword [esp], eax
call fcn.005d9cf0
mov eax, dword [esp + 0x15c]
mov ecx, dword [eax + 4]
mov edx, dword [eax + 8]
mov ebx, dword [esp + 0xd0]
movzx ebp, word [ebx + 0x24]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov word [esp + 8], bp
mov ecx, dword [esp + 0xc8]
mov dword [esp + 0xc], ecx
call fcn.005bf750
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xd0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.005bfb70
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
test ecx, ecx
jne 0x5bdabb
mov dword [esp + 0xc4], eax
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
call fcn.005b7080
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 4]
mov ebp, dword [esp + 8]
test eax, eax
jne 0x5bdaa6
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0xac]
lea edx, [0x69a2e0]
mov edi, dword [esp + 0x7c]
mov esi, ebp
mov ebp, dword [esp + 0xc8]
mov dword [esp + 0xa4], esi
lea ebp, [0x69a760]
cmp ebx, ebp
je 0x5bceca
mov esi, 0
jne 0x5bd9d9
lea eax, [0x68e6c0]
mov dword [esp], eax
mov dword [esp + 4], 4
mov dword [esp + 8], 4
call fcn.0044b730
mov eax, dword [esp + 0xc]
mov byte [eax], 0xe
mov ecx, dword [esp + 0xe8]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 4
mov dword [esp + 0xc], 4
call fcn.005d9cf0
mov eax, dword [esp + 0x7c]
lea ecx, [0x69a2e0]
cmp eax, ecx
jne 0x5bcfdb
lea eax, [0x69db00]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xc4]
mov edx, dword [ecx]
mov ebx, dword [ecx + 4]
mov ebp, dword [ecx + 8]
mov dword [eax + 0x10], ebx
mov dword [eax + 0x14], ebp
mov ebx, dword [0x8e84e0]
test ebx, ebx
jne 0x5bcf60
mov dword [eax + 0xc], edx
jmp 0x5bcf6e
lea edi, [eax + 0xc]
mov ebx, eax
mov eax, edx
call fcn.00463080
mov eax, ebx
mov dword [esp + 0xcc], eax
mov dword [esp], eax
call fcn.005d2730
mov eax, dword [esp + 0xe8]
mov dword [esp], eax
call fcn.005d9cf0
mov eax, dword [esp + 0xcc]
mov dword [esp], eax
call fcn.005d2730
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0xd0]
mov dword [esp], ebx
mov byte [esp + 4], 0x16
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
call fcn.005b6f50
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
test eax, eax
jne 0x5bd9c4
mov edx, dword [esp + 0xd0]
mov ebx, dword [edx + 0x28]
mov ebp, dword [esp + 0x15c]
mov esi, dword [ebp + 0x10]
mov edi, dword [edx + 0x50]
mov edx, dword [edx + 0x4c]
test edi, edi
jbe 0x5bdc5e
mov eax, dword [esp + 0x80]
mov eax, dword [eax + 0x10]
mov ecx, dword [edx]
mov edx, dword [esp + 0xac]
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
mov dword [esp + 0xc], ecx
call eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x20]
mov esi, dword [esp + 0x20]
mov edi, dword [esp + 0x24]
test ebp, ebp
jne 0x5bd97f
mov dword [esp + 0x74], edx
mov dword [esp + 0xa0], ecx
mov dword [esp + 0x78], ebx
test eax, eax
je 0x5bd2af
mov dword [esp + 0xa8], eax
mov ebp, dword [eax]
mov esi, dword [eax + 4]
mov edi, dword [eax + 8]
test ebp, ebp
jne 0x5bd14d
mov ecx, dword [eax + 0x10]
mov dword [esp + 0x8c], ecx
lea edx, [0x68e6c0]
mov dword [esp], edx
lea ebx, [ecx + 4]
mov dword [esp + 0x5c], ebx
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.0044b730
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x5c]
test ecx, ecx
jbe 0x5bdc55
mov byte [eax], 0x10
cmp ecx, 1
jbe 0x5bdc49
mov edx, dword [esp + 0x8c]
mov ebx, edx
sar edx, 0x10
mov byte [eax + 1], dl
cmp ecx, 2
jbe 0x5bdc3d
mov edx, ebx
sar ebx, 8
mov byte [eax + 2], bl
cmp ecx, 3
jbe 0x5bdc31
mov byte [eax + 3], dl
mov ebx, edx
neg edx
sar edx, 0x1f
and edx, 4
add edx, eax
mov edi, dword [esp + 0xa8]
mov ebp, dword [edi + 0xc]
mov esi, dword [edi + 0x10]
cmp esi, ebx
jl 0x5bd101
mov esi, ebx
cmp ebp, edx
je 0x5bd12e
mov dword [esp + 0xe0], eax
mov dword [esp], edx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.00463a10
mov eax, dword [esp + 0xe0]
mov ecx, dword [esp + 0x5c]
mov edi, dword [esp + 0xa8]
mov dword [edi + 4], ecx
mov dword [edi + 8], ecx
mov edx, dword [0x8e84e0]
test edx, edx
jne 0x5bd142
mov dword [edi], eax
jmp 0x5bd147
call fcn.00463080
mov edi, ecx
mov esi, edi
mov ebp, eax
mov eax, dword [esp + 0xe8]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
mov dword [esp + 0xc], edi
call fcn.005d9cf0
mov eax, dword [esp + 0xa8]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov ebx, dword [eax + 8]
test ecx, ecx
jne 0x5bd259
mov ecx, dword [eax + 0x10]
mov dword [esp + 0x8c], ecx
lea edx, [0x68e6c0]
mov dword [esp], edx
lea edx, [ecx + 4]
mov dword [esp + 0x58], edx
mov dword [esp + 4], edx
mov dword [esp + 8], edx
call fcn.0044b730
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x58]
test ecx, ecx
jbe 0x5bdc28
mov byte [eax], 0x10
cmp ecx, 1
jbe 0x5bdc1c
mov edx, dword [esp + 0x8c]
mov ebx, edx
sar edx, 0x10
mov byte [eax + 1], dl
cmp ecx, 2
jbe 0x5bdc10
mov edx, ebx
sar ebx, 8
mov byte [eax + 2], bl
cmp ecx, 3
jbe 0x5bdc04
mov byte [eax + 3], dl
mov ebx, edx
neg edx
sar edx, 0x1f
and edx, 4
add edx, eax
mov edi, dword [esp + 0xa8]
mov ebp, dword [edi + 0xc]
mov esi, dword [edi + 0x10]
cmp esi, ebx
jl 0x5bd20d
mov esi, ebx
cmp ebp, edx
je 0x5bd23a
mov dword [esp + 0xdc], eax
mov dword [esp], edx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.00463a10
mov eax, dword [esp + 0xdc]
mov ecx, dword [esp + 0x58]
mov edi, dword [esp + 0xa8]
mov dword [edi + 4], ecx
mov dword [edi + 8], ecx
mov edx, dword [0x8e84e0]
test edx, edx
jne 0x5bd24e
mov dword [edi], eax
jmp 0x5bd253
call fcn.00463080
mov ebx, ecx
mov edx, ebx
mov ecx, eax
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
mov byte [esp + 4], 0x16
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ebx
call fcn.005b6f50
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
test eax, eax
jne 0x5bd29a
mov ecx, dword [esp + 0xa0]
mov edx, dword [esp + 0x74]
mov ebx, dword [esp + 0x78]
jmp 0x5bd2af
mov dword [esp + 0x160], ecx
mov dword [esp + 0x164], edx
add esp, 0x158
ret
mov ebp, dword [esp + 0xc4]
test ebp, ebp
je 0x5bd751
mov esi, dword [ebp + 4]
test esi, esi
je 0x5bd751
lea edi, [esp + 0x108]
xor eax, eax
call fcn.00463319
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 0x10]
lea ebx, [0x698f20]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.00409510
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
test ecx, ecx
je 0x5bd6be
mov dword [esp + 0x84], ecx
mov dword [esp + 0xb0], edx
mov eax, dword [esp + 0xd0]
movzx ebx, word [eax + 0x24]
cmp bx, 0x303
jb 0x5bd41b
mov eax, dword [esp + 0xc8]
mov ecx, dword [eax + 0x1c]
mov edx, dword [eax + 0x20]
mov eax, dword [eax + 0x24]
mov word [esp], bx
mov ebx, dword [esp + 0xc4]
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], eax
call fcn.005aef70
movzx eax, word [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
test ecx, ecx
jne 0x5bd3d6
mov word [esp + 0x56], ax
mov word [esp], ax
call fcn.005ae670
movzx eax, byte [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
test edx, edx
jne 0x5bd3a5
mov byte [esp + 0x114], 1
movzx edx, word [esp + 0x56]
mov word [esp + 0x116], dx
jmp 0x5bd454
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
mov byte [esp + 4], 0x50
call fcn.005b6370
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x160], eax
mov dword [esp + 0x164], ecx
add esp, 0x158
ret
mov dword [esp + 0xec], edx
mov dword [esp + 0xb8], ebx
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
mov byte [esp + 4], 0x2f
call fcn.005b6370
mov eax, dword [esp + 0xec]
mov dword [esp + 0x160], eax
mov eax, dword [esp + 0xb8]
mov dword [esp + 0x164], eax
add esp, 0x158
ret
mov eax, dword [ecx + 0x10]
mov dword [esp], edx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.005ae8b0
movzx eax, byte [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
test edx, edx
jne 0x5bd679
mov byte [esp + 0x55], al
mov dword [esp + 0x70], ecx
lea edi, [esp + 0x124]
mov esi, dword [esp + 0xe8]
call fcn.004637ae
mov ecx, dword [esp + 0x15c]
mov edx, dword [ecx + 0x4c]
mov ebx, dword [ecx + 0x50]
mov ebp, dword [ecx + 0x54]
lea edi, [esp]
lea esi, [esp + 0x124]
call fcn.004637ae
mov byte [esp + 0x34], al
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], edx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], ebp
call fcn.005da1b0
mov eax, dword [esp + 0x48]
mov dword [esp + 0x98], eax
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x68], ecx
mov edx, dword [esp + 0x50]
mov dword [esp + 0x6c], edx
mov ebx, dword [esp + 0x70]
mov dword [esp], ebx
call fcn.004090d0
mov eax, dword [esp + 4]
movzx ecx, byte [esp + 0x55]
cmp cl, 0xe2
je 0x5bd4e8
lea ecx, [0x739954]
jmp 0x5bd50d
lea eax, [0x69d980]
mov dword [esp], eax
call fcn.0040b800
mov eax, dword [esp + 4]
mov dword [eax], 0xffffffff
mov ecx, dword [esp + 0x70]
mov dword [eax + 4], ecx
lea ecx, [0x7394cc]
mov edx, dword [esp + 0xd0]
mov ebx, dword [edx + 0x28]
mov ebp, dword [ebx]
mov ebx, dword [ebx + 4]
test ebp, ebp
jne 0x5bd52c
mov ebp, dword [0x8c0968]
mov ebx, dword [0x8c096c]
mov edx, dword [esp + 0x84]
mov edx, dword [edx + 0x14]
mov esi, dword [esp + 0xb0]
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x98]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x6c]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], eax
call edx
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
mov ebx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x2c]
mov esi, dword [esp + 0x30]
mov dword [esp + 0x11c], ecx
mov dword [esp + 0x120], edx
mov dword [esp + 0x118], eax
test ebx, ebx
jne 0x5bd634
lea eax, [esp + 0x108]
mov dword [esp], eax
call fcn.005d5bb0
mov eax, dword [esp + 0xe8]
mov dword [esp], eax
call fcn.005d9cf0
lea eax, [esp + 0x108]
mov dword [esp], eax
call fcn.005d5bb0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0xd0]
mov dword [esp], ebx
mov byte [esp + 4], 0x16
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
call fcn.005b6f50
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
test eax, eax
jne 0x5bd61f
mov ecx, dword [esp + 0xa0]
mov edx, dword [esp + 0x74]
mov ebx, dword [esp + 0x78]
jmp 0x5bd751
mov dword [esp + 0x160], ecx
mov dword [esp + 0x164], edx
add esp, 0x158
ret
mov dword [esp + 0xbc], esi
mov dword [esp + 0xec], ebp
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
mov byte [esp + 4], 0x50
call fcn.005b6370
mov eax, dword [esp + 0xec]
mov dword [esp + 0x160], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x164], eax
add esp, 0x158
ret
mov dword [esp + 0xbc], ebp
mov dword [esp + 0xec], ebx
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
mov byte [esp + 4], 0x2f
call fcn.005b6370
mov eax, dword [esp + 0xec]
mov dword [esp + 0x160], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x164], eax
add esp, 0x158
ret
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
mov byte [esp + 4], 0x50
call fcn.005b6370
mov dword [esp + 0xf0], 0
mov dword [esp + 0xf4], 0
mov eax, dword [esp + 0xc4]
mov ecx, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
mov dword [esp + 0xf0], ecx
mov dword [esp + 0xf4], eax
lea eax, [0x6da350]
mov dword [esp], eax
mov dword [esp + 4], 0x4f
lea eax, [esp + 0xf0]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004c2610
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x160], eax
mov dword [esp + 0x164], ecx
add esp, 0x158
ret
mov eax, dword [esp + 0x15c]
mov ebp, dword [eax + 0x10]
mov esi, dword [eax + 0xc]
mov edi, dword [esp + 0xd0]
movzx edi, word [edi + 0x24]
mov eax, dword [eax + 0x14]
mov ebx, dword [ebp + 0x10]
mov dword [esp + 0xd8], ebx
mov ebx, dword [ebp + 0x14]
mov ebp, dword [ebp + 0x18]
mov dword [esp + 0x8c], ebp
mov ebp, dword [esi + 0x10]
mov dword [esp + 0xd4], ebp
mov ebp, dword [esi + 0x14]
mov esi, dword [esi + 0x18]
mov word [esp], di
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0x78]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0xd8]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], ebx
mov eax, dword [esp + 0x8c]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0xd4]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], esi
call fcn.005d9490
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x15c]
mov dword [ebx + 0x50], ecx
mov dword [ebx + 0x54], edx
mov ebp, dword [0x8e84e0]
test ebp, ebp
jne 0x5bd805
mov dword [ebx + 0x4c], eax
jmp 0x5bd80d
lea edi, [ebx + 0x4c]
call fcn.00463080
mov ebp, dword [ebx + 0x10]
mov esi, dword [esp + 0xd0]
mov edi, dword [esi + 0x28]
mov esi, dword [ebp + 0x10]
mov ebx, dword [ebp + 0x14]
mov ebp, dword [ebp + 0x18]
mov dword [esp], edi
lea edi, [0x6c7f7e]
mov dword [esp + 4], edi
mov dword [esp + 8], 0xd
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], ebp
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], edx
call fcn.005b1040
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
test eax, eax
jne 0x5bd8b1
nop
mov ecx, dword [esp + 0x15c]
mov dword [ecx + 0x3c], 0
mov dword [ecx + 0x40], 0
mov edx, dword [0x8e84e0]
test edx, edx
jne 0x5bd88a
mov dword [ecx + 0x38], 0
jmp 0x5bd894
lea edi, [ecx + 0x38]
xor eax, eax
call fcn.00463080
mov dword [esp + 0x160], 0
mov dword [esp + 0x164], 0
add esp, 0x158
ret
mov dword [esp + 0x88], eax
mov dword [esp + 0xb4], ecx
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
mov byte [esp + 4], 0x50
call fcn.005b6370
mov eax, dword [esp + 0x88]
mov eax, dword [eax + 0x10]
mov ecx, dword [esp + 0xb4]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp], 0
lea edx, [0x6d162a]
mov dword [esp + 4], edx
mov dword [esp + 8], 0x21
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
call fcn.0044ef90
mov eax, dword [esp + 0x14]
mov dword [esp + 0x90], eax
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x64], ecx
lea edx, [0x697fe0]
mov dword [esp], edx
call fcn.0040b800
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x64]
mov dword [edi + 4], eax
mov eax, dword [0x8e84e0]
test eax, eax
jne 0x5bd958
mov eax, dword [esp + 0x90]
mov dword [edi], eax
jmp 0x5bd964
mov eax, dword [esp + 0x90]
call fcn.00463080
lea eax, [0x7395a8]
mov dword [esp + 0x160], eax
mov dword [esp + 0x164], edi
add esp, 0x158
ret
mov dword [esp + 0xbc], edi
mov dword [esp + 0xec], esi
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
mov byte [esp + 4], 0x50
call fcn.005b6370
mov eax, dword [esp + 0xec]
mov dword [esp + 0x160], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x164], eax
add esp, 0x158
ret
mov dword [esp + 0x160], ecx
mov dword [esp + 0x164], edx
add esp, 0x158
ret
mov dword [esp + 0x9c], esi
mov dword [esp + 0x7c], ebx
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
mov byte [esp + 4], 0xa
call fcn.005b6370
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
mov eax, dword [esp + 0x7c]
mov dword [esp + 0xf8], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 0xfc], eax
lea eax, [0x69a760]
mov dword [esp + 0x100], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x104], eax
lea eax, [0x6d9f2d]
mov dword [esp], eax
mov dword [esp + 4], 0x49
lea eax, [esp + 0xf8]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004c2610
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x160], eax
mov dword [esp + 0x164], ecx
add esp, 0x158
ret
mov dword [esp + 0x160], ecx
mov dword [esp + 0x164], edx
add esp, 0x158
ret
mov dword [esp + 0xec], edx
mov dword [esp + 0xbc], ebx
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
mov byte [esp + 4], 0x50
call fcn.005b6370
mov eax, dword [esp + 0xec]
mov dword [esp + 0x160], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x164], eax
add esp, 0x158
ret
mov dword [esp + 0x160], ecx
mov dword [esp + 0x164], edx
add esp, 0x158
ret
mov dword [esp + 0x160], ecx
mov dword [esp + 0x164], edx
add esp, 0x158
ret
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
mov byte [esp + 4], 0xa
call fcn.005b6370
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], 0
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
mov eax, dword [esp + 0xec]
mov dword [esp + 0xf8], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 0xfc], eax
lea eax, [0x69a220]
mov dword [esp + 0x100], eax
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x104], eax
lea eax, [0x6d9f2d]
mov dword [esp], eax
mov dword [esp + 4], 0x49
lea eax, [esp + 0xf8]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004c2610
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x160], eax
mov dword [esp + 0x164], ecx
add esp, 0x158
ret
mov dword [esp + 0x160], ecx
mov dword [esp + 0x164], edx
add esp, 0x158
ret
mov eax, 3
mov ecx, eax
call fcn.00463100
mov eax, 2
mov ecx, eax
call fcn.00463100
mov eax, 1
mov ecx, eax
call fcn.00463100
xor eax, eax
mov ecx, eax
call fcn.00463100
mov eax, 3
mov ecx, eax
call fcn.00463100
mov eax, 2
mov ecx, eax
call fcn.00463100
mov eax, 1
mov ecx, eax
call fcn.00463100
xor eax, eax
mov ecx, eax
call fcn.00463100
xor eax, eax
mov ecx, eax
call fcn.00463100
xor eax, eax
mov ecx, eax
call fcn.00463100
mov eax, 3
mov ecx, eax
call fcn.00463100
mov eax, 2
mov ecx, eax
call fcn.00463100
mov eax, 1
mov ecx, eax
call fcn.00463100
xor eax, eax
mov ecx, eax
call fcn.00463100
xor eax, eax
mov ecx, eax
call fcn.00463100
xor eax, eax
mov ecx, eax
call fcn.00463100
nop
call fcn.00461c70
jmp fcn.005bc870