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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x7814fd
sub esp, 0x70
mov eax, dword [esp + 0x74]
mov dword [esp], eax
call fcn.00781510
mov eax, dword [esp + 4]
test eax, eax
jg 0x7814b9
xor ecx, ecx
xor edx, edx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x6c], edx
lea ebx, [0x945400]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], 0
call fcn.0040b9e0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x58], eax
mov ecx, dword [esp + 0x74]
mov edx, dword [ecx]
mov dword [esp], edx
mov dword [esp + 4], 1
call fcn.0063c070
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
test eax, eax
je 0x7813fb
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x6c], ecx
mov edx, dword [esp + 0x74]
mov dword [esp], edx
call fcn.0077fcc0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 4]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x10]
test ecx, ecx
je 0x7813e4
mov dword [esp + 0x44], eax
mov dword [esp + 0x40], ecx
mov dword [esp + 0x64], edx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x3c], ebp
nop
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov byte [esp + 0xc], 0x3a
call fcn.00402420
mov ecx, dword [esp + 0x10]
test ecx, ecx
jl 0x781381
mov edx, dword [esp + 0x44]
cmp ecx, edx
ja 0x7814f0
mov dword [esp + 0x34], ecx
mov eax, dword [esp + 0x64]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.007817a0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
test eax, eax
jne 0x781104
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x6c]
jmp 0x781061
mov edx, dword [esp + 0x34]
inc edx
mov ebx, dword [esp + 0x64]
mov ebp, dword [esp + 0x40]
jmp 0x781114
inc edx
cmp edx, ebp
jge 0x78113a
jae 0x7814e7
movzx esi, byte [ebx + edx]
xchg esi, eax
cmp al, 0x20
xchg esi, eax
jne 0x781370
mov esi, 1
xchg esi, eax
test al, al
xchg esi, eax
jne 0x781113
cmp edx, ebp
ja 0x7814de
mov dword [esp + 0x30], eax
mov dword [esp + 0x5c], ecx
mov dword [esp], 0
mov eax, dword [esp + 0x44]
sub eax, edx
mov ecx, eax
neg eax
sar eax, 0x1f
and eax, edx
add eax, ebx
mov dword [esp + 4], eax
sub ebp, edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ecx
call fcn.00443a80
mov eax, dword [esp + 0x14]
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x50], ecx
lea edx, [0x945400]
mov dword [esp], edx
mov ebx, dword [esp + 0x58]
mov dword [esp + 4], ebx
mov ebp, dword [esp + 0x5c]
mov dword [esp + 8], ebp
mov esi, dword [esp + 0x30]
mov dword [esp + 0xc], esi
call fcn.0040fcc0
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
mov eax, dword [eax + 8]
test edx, edx
je 0x7812c9
lea ebx, [ecx + 1]
cmp ebx, eax
ja 0x78128d
mov dword [esp + 0x68], edx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x48], eax
lea ebp, [edx + ecx*8 + 4]
mov esi, dword [esp + 0x24]
mov dword [ebp], esi
mov ebp, dword [0xdd7ec0]
lea edi, [edx + ecx*8]
test ebp, ebp
jne 0x78127f
mov ecx, dword [esp + 0x50]
mov dword [edi], ecx
lea eax, [0x945400]
mov dword [esp], eax
mov ecx, dword [esp + 0x58]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x5c]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x30]
mov dword [esp + 0xc], edx
call fcn.004103d0
mov edi, dword [esp + 0x10]
mov eax, dword [esp + 0x4c]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x48]
mov dword [edi + 8], eax
mov eax, dword [0xdd7ec0]
test eax, eax
jne 0x781274
mov eax, dword [esp + 0x68]
mov dword [edi], eax
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x3c]
test edx, edx
jne 0x781259
mov edx, eax
mov eax, ecx
mov ecx, edx
jmp 0x781061
mov eax, dword [esp + 0x58]
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], edx
mov eax, dword [esp + 0x60]
mov dword [esp + 0x80], eax
add esp, 0x70
ret
mov eax, dword [esp + 0x68]
call fcn.00456fe0
jmp 0x78123e
mov eax, dword [esp + 0x50]
call fcn.00456fe0
jmp 0x7811f6
mov dword [esp + 0x20], ecx
lea ebp, [0x8eba40]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebx
call fcn.00440660
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
lea ebx, [eax + 1]
mov eax, ecx
mov ecx, dword [esp + 0x20]
jmp 0x7811c8
mov ebx, dword [esp + 0x2c]
test ebx, ebx
jle 0x7811bd
mov ecx, dword [esp + 0x24]
mov edi, dword [esp + 0x6c]
mov dword [edi + 4], ecx
lea ecx, [ebx - 1]
mov dword [esp + 0x28], ecx
neg ecx
sar ecx, 0x1f
and ecx, 8
add ecx, edi
mov dword [esp + 0x54], ecx
mov ebx, dword [0xdd7ec0]
test ebx, ebx
jne 0x781365
mov eax, dword [esp + 0x50]
mov dword [edi], eax
lea eax, [0x945400]
mov dword [esp], eax
mov ecx, dword [esp + 0x58]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x5c]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x30]
mov dword [esp + 0xc], edx
call fcn.004103d0
mov edi, dword [esp + 0x10]
mov dword [edi + 4], 1
mov dword [edi + 8], 1
mov eax, dword [0xdd7ec0]
test eax, eax
jne 0x78135a
mov eax, dword [esp + 0x6c]
mov dword [edi], eax
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x28]
jmp 0x781246
mov eax, dword [esp + 0x6c]
call fcn.00456fe0
jmp 0x78134d
mov eax, dword [esp + 0x50]
call fcn.00456fe0
jmp 0x781305
xchg esi, eax
cmp al, 9
xchg esi, eax
xchg esi, ebx
sete bl
xchg esi, ebx
jmp 0x781132
mov dword [esp], 0
lea eax, [0x9958e0]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x1c
mov eax, dword [esp + 0x64]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x10], eax
call fcn.00443900
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004086a0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x78], ecx
lea ecx, [0xa4f3a0]
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x80], eax
add esp, 0x70
ret
mov eax, dword [esp + 0x58]
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x80], ebx
add esp, 0x70
ret
test ecx, ecx
jbe 0x7814f5
movzx eax, byte [edx]
cmp al, 0x20
jne 0x7814ae
mov eax, 1
test al, al
je 0x781059
mov eax, dword [esp + 0x74]
mov dword [esp], eax
call fcn.0077f930
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x10]
test ebx, ebx
je 0x781453
mov eax, dword [esp + 0x58]
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x80], edx
add esp, 0x70
ret
mov dword [esp], 0
lea edx, [0x99ba7d]
mov dword [esp + 4], edx
mov dword [esp + 8], 0x24
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
call fcn.00443900
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004086a0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x78], ecx
lea ecx, [0xa4f3a0]
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x80], eax
add esp, 0x70
ret
cmp al, 9
sete al
jmp 0x781414
mov dword [esp + 0x38], eax
lea ecx, [0x8eba40]
mov dword [esp], ecx
mov dword [esp + 8], eax
call fcn.00440500
mov edx, dword [esp + 0xc]
mov eax, dword [esp + 0x38]
mov ecx, eax
jmp 0x781005
mov eax, edx
mov ecx, ebp
call fcn.004570c0
mov eax, edx
mov ecx, ebp
call fcn.00457060
call fcn.004570a0
xor eax, eax
call fcn.00457060
nop
call fcn.004557a0
jmp fcn.00780fd0