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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x56c50b
sub esp, 0x7c
lea eax, [0x5c5380]
mov dword [esp], eax
call fcn.0040b910
mov eax, dword [esp + 4]
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x84]
mov dword [esp], ecx
mov edx, dword [esp + 0x88]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x8c]
mov dword [esp + 8], ebx
lea ebp, [0x598fc0]
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], eax
call fcn.005767b0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
test eax, eax
jne 0x56c4cf
lea eax, [0x5b9ce0]
mov dword [esp], eax
call fcn.0040b910
mov eax, dword [esp + 4]
mov dword [esp + 0x30], eax
lea edi, [esp + 0x4c]
xor eax, eax
call fcn.0045e494
mov eax, dword [esp + 0x80]
mov ecx, dword [eax + 0x18]
mov edx, dword [eax + 0x1c]
mov ebx, dword [eax + 0x20]
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x50], edx
mov dword [esp + 0x54], ebx
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 0x10]
mov ebx, dword [eax + 0x14]
mov dword [esp + 0x58], ecx
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], ebx
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x64], ecx
mov edx, dword [esp + 0x88]
mov dword [esp + 0x68], edx
mov ebx, dword [esp + 0x8c]
mov dword [esp + 0x6c], ebx
mov ebp, dword [eax + 0x58]
mov esi, dword [eax + 0x5c]
mov edi, dword [eax + 0x60]
mov dword [esp + 0x70], ebp
mov dword [esp + 0x74], esi
mov dword [esp + 0x78], edi
mov ebp, dword [0x71e9f0]
test ebp, ebp
jne 0x56c497
mov edi, dword [esp + 0x30]
lea esi, [esp + 0x4c]
call fcn.0045e938
mov ecx, dword [eax + 0x64]
mov ebp, dword [eax + 0x28]
test ebp, ebp
jne 0x56c48e
mov dword [esp + 0x20], ebp
mov esi, dword [eax + 0x58]
mov edi, ecx
mov ecx, dword [eax + 0x5c]
mov ebp, dword [eax + 0x60]
mov ebx, dword [esp + 0x30]
mov dword [ebx + 0x1c], ecx
mov dword [ebx + 0x20], ebp
mov ecx, dword [0x71e9f0]
test ecx, ecx
jne 0x56c472
mov dword [ebx + 0x18], esi
mov dword [ebx + 0x28], edx
mov ecx, dword [esp + 0x8c]
mov dword [ebx + 0x2c], ecx
mov ecx, dword [0x71e9f0]
test ecx, ecx
jne 0x56c44e
mov ecx, dword [esp + 0x84]
mov dword [ebx + 0x24], ecx
mov ecx, dword [esp + 0x20]
test ecx, ecx
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x28], edi
mov dword [esp + 0x2c], ecx
sete al
mov byte [esp], al
mov dword [esp + 4], edi
mov dword [esp + 8], ecx
call fcn.00568f50
mov eax, dword [0x71e9f0]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
test eax, eax
jne 0x56c435
mov esi, dword [esp + 0x80]
mov dword [esi + 0x94], ecx
test edx, edx
jne 0x56c423
mov edx, dword [esp + 0x24]
movzx edx, byte [edx + 0x88]
test dl, dl
je 0x56c41a
mov edx, dword [esp + 0x28]
mov ecx, dword [edx + 0x14]
mov ebx, dword [edx + 0x10]
test ecx, ecx
jbe 0x56c503
mov ebp, dword [ebx + 4]
mov ebx, dword [ebx]
mov edi, dword [esp + 0x2c]
mov ecx, dword [edi + 0x14]
mov eax, ebx
mov ebx, dword [edi + 0x10]
test ecx, ecx
jbe 0x56c4fc
mov ecx, esi
mov esi, dword [ebx]
cmp dword [ebx + 4], ebp
je 0x56c3ee
mov eax, 1
test al, al
je 0x56c398
mov eax, 1
test al, al
jne 0x56c35d
mov eax, dword [ecx + 0x94]
mov edx, dword [0x7009a0]
mov ebx, dword [eax]
mov eax, dword [eax + 4]
lea ebp, [0x5a7020]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
call fcn.0040f870
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
movzx edx, byte [esp + 0x14]
test dl, dl
je 0x56c2d5
mov edx, dword [esp + 0x80]
mov ebx, dword [edx + 0x28]
test ebx, ebx
jle 0x56c2a2
mov ebx, dword [edx + 0x94]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebx
mov eax, dword [esp + 0x30]
mov dword [esp + 0x10], eax
call fcn.0056c520
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
test ecx, ecx
jne 0x56c290
mov ecx, dword [esp + 0x80]
mov edx, dword [ecx + 0xb0]
test edx, edx
je 0x56c251
mov edx, dword [ecx + 0xb0]
mov ebx, dword [ecx + 0xb4]
mov ebp, dword [ecx + 0xb8]
mov dword [eax + 0x38], ebx
mov dword [eax + 0x3c], ebp
mov ebx, dword [0x71e9f0]
test ebx, ebx
jne 0x56c23e
mov dword [eax + 0x34], edx
mov edx, dword [ecx]
mov ebx, dword [ecx + 4]
mov edx, dword [edx + 0x14]
mov ebp, dword [ecx + 0x94]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
call edx
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
test eax, eax
jne 0x56c22c
lea eax, [0x5a1e20]
mov dword [esp], eax
call fcn.0040b910
mov eax, dword [esp + 4]
mov byte [eax], 0x15
mov ecx, dword [esp + 0x80]
mov edx, dword [ecx]
mov ebx, dword [ecx + 4]
mov edx, dword [edx + 0x1c]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], 1
mov dword [esp + 0xc], 1
call edx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
test eax, eax
jne 0x56c21a
mov eax, dword [esp + 0x80]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov ecx, dword [ecx + 0x18]
mov dword [esp], eax
call ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 4]
mov ebp, dword [esp + 8]
test eax, eax
jne 0x56c208
test ebp, ebp
jbe 0x56c4e1
movzx eax, byte [ebx]
cmp al, 0x15
je 0x56c1ee
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], 0
lea ecx, [0x5a5da0]
mov dword [esp + 0x3c], ecx
movzx eax, al
lea edx, [0x6eccc0]
lea eax, [edx + eax*8]
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], ecx
lea eax, [0x6ecd68]
mov dword [esp + 0x48], eax
lea eax, [0x5dbfc4]
mov dword [esp], eax
mov dword [esp + 4], 0x2d
lea eax, [esp + 0x3c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call fcn.004b95e0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], ecx
add esp, 0x7c
ret
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
add esp, 0x7c
ret
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], edx
add esp, 0x7c
ret
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], edx
add esp, 0x7c
ret
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], edx
add esp, 0x7c
ret
lea edi, [eax + 0x34]
mov ebx, eax
mov eax, edx
call fcn.0045e220
mov eax, ebx
jmp 0x56c09a
mov edx, dword [eax]
mov ebx, dword [eax + 4]
mov ebp, dword [eax + 8]
mov dword [ecx + 0xb4], ebx
mov dword [ecx + 0xb8], ebp
mov ebx, dword [0x71e9f0]
test ebx, ebx
jne 0x56c27a
mov dword [ecx + 0xb0], edx
jmp 0x56c071
lea edi, [ecx + 0xb0]
mov ebx, eax
mov eax, edx
call fcn.0045e220
mov eax, ebx
jmp 0x56c071
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], edx
add esp, 0x7c
ret
mov ebx, dword [edx + 0x94]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebx
mov eax, dword [esp + 0x30]
mov dword [esp + 0x10], eax
call fcn.0056c680
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
jmp 0x56c054
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0
mov eax, dword [esp + 0x80]
mov eax, dword [eax + 0x94]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00409170
mov eax, dword [esp + 8]
lea ecx, [0x5a5ba0]
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], eax
lea eax, [0x5db396]
mov dword [esp], eax
mov dword [esp + 4], 0x29
lea eax, [esp + 0x34]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004b95e0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], ecx
add esp, 0x7c
ret
mov eax, dword [ecx]
mov edx, dword [ecx + 4]
mov eax, dword [eax + 0x18]
mov dword [esp], edx
call eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
test eax, eax
jne 0x56c386
mov ecx, dword [esp + 0x80]
jmp 0x56bfd3
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], edx
add esp, 0x7c
ret
mov ebx, dword [edx + 0x20]
mov edx, dword [edx + 0x1c]
test ebx, ebx
jbe 0x56c4f3
mov ebx, dword [edx + 4]
mov edx, dword [edx]
mov ebp, dword [edi + 0x20]
mov esi, dword [edi + 0x1c]
test ebp, ebp
jbe 0x56c4ea
mov eax, dword [esi]
cmp dword [esi + 4], ebx
je 0x56c3ca
mov eax, 1
jmp 0x56bfcb
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
call fcn.004028f0
movzx eax, byte [esp + 0xc]
xor eax, 1
mov ecx, dword [esp + 0x80]
jmp 0x56bfcb
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
call fcn.004028f0
movzx eax, byte [esp + 0xc]
xor eax, 1
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x28]
mov edi, dword [esp + 0x2c]
jmp 0x56bfbe
mov ecx, esi
xor eax, eax
jmp 0x56bfcb
mov dword [esp + 0x90], ebx
mov dword [esp + 0x94], ebp
add esp, 0x7c
ret
mov esi, dword [esp + 0x80]
lea edi, [esi + 0x94]
mov eax, ecx
call fcn.0045e220
jmp 0x56bf66
lea ecx, [ebx + 0x24]
mov edx, edi
mov edi, ecx
mov ebp, eax
mov eax, dword [esp + 0x84]
call fcn.0045e220
mov ecx, dword [esp + 0x20]
test ecx, ecx
mov eax, ebp
mov edi, edx
jmp 0x56bf1c
lea ecx, [ebx + 0x18]
mov ebp, edi
mov edi, ecx
mov eax, esi
call fcn.0045e220
mov eax, dword [esp + 0x80]
mov edi, ebp
jmp 0x56bef1
mov edi, dword [esp + 0x24]
jmp 0x56bf20
lea eax, [0x5b9ce0]
mov dword [esp], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 4], eax
lea ecx, [esp + 0x4c]
mov dword [esp + 8], ecx
call fcn.004106e0
mov eax, dword [esp + 0x80]
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0x8c]
jmp 0x56beb9
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], edx
add esp, 0x7c
ret
xor eax, eax
mov ecx, ebp
call fcn.0045e2a0
xor eax, eax
mov ecx, ebp
call fcn.0045e2a0
xor eax, eax
mov ecx, ebx
call fcn.0045e2a0
xor eax, eax
call fcn.0045e2a0
xor eax, eax
call fcn.0045e2a0
nop
call fcn.0045ccc0
jmp fcn.0056bda0