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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 4]
cmp eax, dword [ecx + 8]
jbe 0x692dd2
sub esp, 0x84
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
mov eax, dword [esp + 0x88]
test byte [eax], al
lea ecx, [eax + 4]
mov dword [esp + 0x80], ecx
mov dword [esp], ecx
call fcn.00473950
mov dword [esp + 0x44], 4
lea eax, [0x9b2b70]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x60], eax
lea eax, [esp + 0x44]
mov dword [esp], eax
call fcn.0042c560
test eax, eax
jne 0x692db2
mov eax, dword [esp + 0x98]
cmp eax, 0x32
je 0x692da4
mov ecx, dword [esp + 0x88]
movzx edx, byte [ecx + 0x40]
mov byte [esp + 0x23], dl
mov ebx, dword [esp + 0x90]
xor ebp, ebp
xor esi, esi
xor edi, edi
xor ebx, ebx
mov dword [esp + 0x2c], ebx
xor ebx, ebx
mov dword [esp + 0x30], ebx
mov ebx, dword [esp + 0x90]
jmp 0x692a1a
mov eax, edi
mov ecx, dword [esp + 0x88]
movzx edx, byte [esp + 0x23]
mov ebx, ebp
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x64]
mov edi, dword [esp + 0x68]
mov dword [esp + 0x7c], edi
test ebx, ebx
je 0x692c5a
mov dword [esp + 0x24], ebx
mov dword [esp + 0x64], esi
mov dword [esp + 0x28], ebp
mov edi, dword [ecx]
mov edi, dword [edi + 0x7c]
cmp edi, ebx
jae 0x692c53
mov dword [esp + 0x38], edi
lea eax, [0x8ebd00]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], edi
call fcn.00440500
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x28]
lea ebx, [edx + ecx]
mov ebp, dword [esp + 0x94]
cmp ebx, ebp
ja 0x692dc8
cmp edx, ebx
ja 0x692dbf
mov dword [esp + 0x78], eax
mov dword [esp + 0x34], ebx
sub ebp, edx
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, edx
mov edi, dword [esp + 0x8c]
add ebp, edi
cmp eax, ebp
je 0x692ab1
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
call fcn.004579b0
lea eax, [0x96a7e0]
mov dword [esp], eax
call fcn.0040ae10
mov eax, dword [esp + 0x88]
movzx ecx, word [eax + 0x1c]
mov edx, dword [esp + 4]
mov word [edx + 0x18], cx
mov ecx, dword [esp + 0x38]
mov dword [edx + 0x24], ecx
mov dword [edx + 0x28], ecx
mov ebx, dword [0xdd7ec0]
test ebx, ebx
jne 0x692c3e
mov ebx, dword [esp + 0x78]
mov dword [edx + 0x20], ebx
movzx ebx, byte [esp + 0x23]
mov byte [edx + 0x10], bl
mov ebp, dword [esp + 0x28]
test ebp, ebp
xchg ebp, ebx
sete bl
xchg ebp, ebx
xchg ebp, eax
mov byte [edx + 0x11], al
xchg ebp, eax
mov ebp, dword [esp + 0x24]
cmp ecx, ebp
xchg esi, ebx
sete bl
xchg esi, ebx
xchg esi, eax
mov byte [edx + 0x12], al
xchg esi, eax
mov byte [edx + 0x13], 0
mov esi, dword [esp + 0x98]
mov dword [edx + 0x1c], esi
mov edi, esi
movzx esi, word [eax + 0x28]
mov word [edx + 0x1a], si
mov esi, dword [0xdd7ec0]
test esi, esi
jne 0x692c19
mov esi, dword [esp + 0x64]
mov dword [edx + 0x50], esi
test esi, esi
je 0x692c12
mov dword [esp + 0x6c], edx
mov dword [esp + 0x64], esi
mov ebx, dword [esp + 0x2c]
lea esi, [ebx + 1]
mov edx, dword [esp + 0x30]
cmp esi, edx
ja 0x692bbe
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x2c], esi
mov dword [esp + 0x30], edx
mov edx, dword [esp + 0x68]
lea esi, [edx + ebx*4]
mov dword [esp + 0x74], esi
mov esi, dword [0xdd7ec0]
sub ebp, ecx
test esi, esi
jne 0x692ba4
mov ecx, dword [esp + 0x6c]
mov dword [edx + ebx*4], ecx
jmp 0x6929fe
mov ecx, edi
mov edi, dword [esp + 0x74]
mov ebx, eax
mov eax, dword [esp + 0x6c]
call fcn.00456fe0
mov eax, ebx
mov edi, ecx
jmp 0x6929fe
lea eax, [0x95a300]
mov dword [esp], eax
mov ecx, dword [esp + 0x7c]
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], esi
call fcn.00440660
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
lea esi, [ecx + 1]
mov ecx, dword [esp + 0x38]
mov ebx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x24]
mov edi, dword [esp + 0x98]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x88]
jmp 0x692b79
mov esi, edx
jmp 0x692b52
lea esi, [edx + 0x50]
mov edi, esi
mov eax, dword [esp + 0x64]
call fcn.00456fe0
mov eax, dword [esp + 0x88]
mov esi, dword [esp + 0x64]
mov edi, dword [esp + 0x98]
jmp 0x692b4a
lea edi, [edx + 0x20]
mov ebx, eax
mov eax, dword [esp + 0x78]
call fcn.00456fe0
mov eax, ebx
jmp 0x692af1
mov edi, ebx
jmp 0x692a3f
test dl, dl
je 0x692d96
mov eax, dword [ecx + 0x48]
mov edx, dword [esp + 0x90]
mov ebx, edx
add edx, eax
mov ebp, dword [ecx + 0x4c]
mov dword [ecx + 0x48], edx
mov edx, ebx
sar ebx, 0x1f
add edx, eax
adc ebp, ebx
mov dword [ecx + 0x4c], ebp
mov eax, dword [ecx + 0x64]
mov edx, dword [ecx + 0x68]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.004086a0
mov eax, dword [esp + 8]
mov dword [esp + 0x78], eax
mov ecx, dword [esp + 0x88]
mov edx, dword [ecx + 0x4c]
mov ebx, dword [ecx + 0x48]
mov dword [esp], ebx
mov dword [esp + 4], edx
call fcn.00408630
mov eax, dword [esp + 8]
mov dword [esp + 0x70], eax
lea ecx, [0x8d7460]
mov dword [esp], ecx
call fcn.0040ae10
mov eax, dword [esp + 4]
lea ecx, [0x8eba40]
mov dword [eax], ecx
mov ecx, dword [0xdd7ec0]
test ecx, ecx
jne 0x692d81
mov ecx, dword [esp + 0x78]
mov dword [eax + 4], ecx
lea ecx, [0x8ebcc0]
mov dword [eax + 8], ecx
mov ecx, dword [0xdd7ec0]
test ecx, ecx
jne 0x692d6f
mov ecx, dword [esp + 0x70]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x88]
mov edx, dword [ecx + 0x5c]
mov ecx, dword [ecx + 0x60]
mov edx, dword [edx + 0x2c]
mov dword [esp], ecx
lea ecx, [0x991e7c]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x18
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 2
mov dword [esp + 0x14], 2
call edx
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0xa4], eax
nop
call fcn.0042cca0
add esp, 0x84
ret
lea edi, [eax + 0xc]
mov ecx, eax
mov eax, dword [esp + 0x70]
call fcn.00456fe0
mov eax, ecx
jmp 0x692d06
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0x78]
call fcn.00456fe0
mov eax, ecx
jmp 0x692cec
movzx eax, word [ecx + 0x28]
inc eax
mov word [ecx + 0x28], ax
jmp 0x692c62
mov ecx, dword [esp + 0x88]
xor edx, edx
jmp 0x6929d8
nop
call fcn.0042cca0
add esp, 0x84
ret
mov eax, edx
mov ecx, ebx
call fcn.004570d0
mov ecx, ebx
mov edx, ebp
call fcn.004570b0
nop
call fcn.004557a0
jmp fcn.00692930