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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x40]
cmp eax, dword [ecx + 8]
jbe 0x698436
sub esp, 0xc0
xor ebx, ebx
mov dword [esp + 0xd4], ebx
mov dword [esp + 0xd8], ebx
mov ecx, dword [esp + 0xc4]
mov dword [esp + 0x9c], ecx
mov eax, dword [esp + 0xc8]
mov ebx, dword [esp + 0xcc]
mov dword [esp + 0xa4], ebx
xor ebx, ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0xa0], eax
cmp eax, 0
jne 0x698361
xor ebx, ebx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
mov ebx, 0x75e728
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], 0xd
mov dword [esp], 0x8c38b0
lea ebx, [esp + 0x4c]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0
call fcn.00417980
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x44], ecx
mov dword [esp + 0x48], eax
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x3c], ecx
cmp ecx, 0
je 0x697fe9
mov dword [esp + 0xd0], 0
mov dword [esp + 0xd4], ecx
mov dword [esp + 0xd8], eax
add esp, 0xc0
ret
mov dword [esp], 0x720ae0
call fcn.0041a7b0
mov esi, dword [esp + 0xc4]
mov eax, dword [esp + 0xc8]
mov edx, dword [esp + 4]
mov dword [esp + 0x30], edx
cmp eax, 0
jle 0x69831d
cmp eax, 0
jbe 0x69835a
movzx ebp, byte [esi]
mov ebx, ebp
and ebx, 0x80
cmp bl, 0x80
jne 0x69831d
mov ecx, eax
mov dword [esp], 0x70b300
cdq
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov eax, ecx
cdq
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
call fcn.00449940
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x90], ebx
mov edi, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x98], ebx
xor eax, eax
mov dword [esp + 0x20], edi
mov ebp, dword [esp + 0x20]
cmp eax, ebp
jge 0x6980b6
mov esi, dword [esp + 0xc8]
cmp eax, esi
jae 0x698316
mov esi, dword [esp + 0xc4]
add esi, eax
movzx ebx, byte [esi]
xor ebx, 0xffffffff
cmp eax, edi
jae 0x69830f
mov ebp, dword [esp + 0x90]
add ebp, eax
mov byte [ebp], bl
inc eax
mov ebp, dword [esp + 0x20]
cmp eax, ebp
jl 0x69807b
mov ebx, dword [esp + 0x30]
mov dword [esp], ebx
mov ebx, dword [esp + 0x90]
mov dword [esp + 4], ebx
mov dword [esp + 0x94], edi
mov dword [esp + 8], edi
mov ebx, dword [esp + 0x98]
mov dword [esp + 0xc], ebx
call fcn.0067c700
mov eax, dword [esp + 0x30]
mov dword [esp], eax
mov dword [esp + 4], eax
mov ebx, dword [0x8e3a6c]
mov dword [esp + 8], ebx
call fcn.0067ab60
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x30]
mov dword [esp + 0x24], eax
mov ecx, eax
cmp eax, edx
je 0x69825e
mov dword [esp + 0x28], ecx
cmp ecx, 0
je 0x698308
mov esi, dword [ecx + 4]
mov ecx, dword [ecx + 8]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x2c], edx
cmp edx, 0
je 0x698301
mov ebp, dword [edx + 4]
mov dword [esp + 0x84], ebp
mov edi, dword [edx + 8]
mov ebp, dword [edx + 0xc]
mov dword [esp + 0x8c], ebp
xor ebx, ebx
mov dword [esp + 0x54], ebx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x78], esi
mov dword [esp + 0x6c], esi
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x70], ecx
mov dword [esp + 0x80], eax
mov dword [esp + 0x88], edi
xor ebx, ebx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x68], ebx
mov dword [esp + 0x74], eax
mov edx, eax
cmp edi, eax
jg 0x6982c4
cmp edi, eax
ja 0x6982bd
mov ebp, esi
mov edx, edi
mov dword [esp + 0x60], ebp
mov dword [esp + 0x64], edx
mov dword [esp + 0x68], eax
mov dword [esp + 0x78], ebp
mov esi, ebp
mov dword [esp + 0x7c], edx
mov dword [esp + 0x80], eax
mov dword [esp + 0xbc], eax
mov ebp, dword [esp + 0x84]
mov ebx, dword [esp + 0x8c]
mov dword [esp + 0xb0], ebx
mov dword [esp + 0xb8], edx
mov eax, edx
mov dword [esp + 0xac], edi
cmp edi, edx
jge 0x6981f0
mov eax, edi
mov dword [esp + 0xb4], esi
mov dword [esp], esi
mov dword [esp + 0xa8], ebp
mov dword [esp + 4], ebp
mov ebx, eax
shl ebx, 2
mov dword [esp + 8], ebx
call fcn.00463ec0
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x78]
mov esi, dword [esp + 0x7c]
mov edx, dword [esp + 0x80]
cmp eax, 0
je 0x6982b6
mov dword [esp + 0x58], esi
mov dword [eax + 8], esi
mov dword [esp + 0x5c], edx
mov dword [eax + 0xc], edx
mov dword [esp + 0x54], edi
cmp byte [0x8f7eb8], 0
jne 0x69829d
mov dword [eax + 4], edi
mov ebx, dword [esp + 0x2c]
movzx ebp, byte [ebx]
xchg ebp, ebx
mov byte [eax], bl
xchg ebp, ebx
mov ebp, dword [ecx + 8]
cmp ebp, 0
jle 0x698299
movzx ebp, byte [ecx]
xchg ebp, eax
cmp al, 0
xchg ebp, eax
jne 0x698299
mov ebx, 1
mov byte [ecx], bl
mov ebx, dword [esp + 0x30]
mov dword [esp + 0xd0], ebx
xor ebx, ebx
mov dword [esp + 0xd4], ebx
mov dword [esp + 0xd8], ebx
add esp, 0xc0
ret
xor ebx, ebx
jmp 0x698275
lea esi, [eax + 4]
mov dword [esp], esi
mov dword [esp + 4], edi
call fcn.0041b160
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
jmp 0x698251
mov dword [eax], eax
jmp 0x698233
call fcn.004359e0
ud2
mov dword [esp], 0x70ab80
mov eax, edi
cdq
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov eax, edi
add eax, 4
cdq
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
call fcn.00449940
mov edi, dword [esp + 0x88]
mov ebp, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
jmp 0x6981a1
mov dword [edx], eax
jmp 0x698136
mov dword [ecx], eax
jmp 0x698120
call fcn.00435970
ud2
call fcn.00435970
ud2
mov dword [esp], edx
mov dword [esp + 4], esi
mov dword [esp + 8], eax
mov ebx, dword [esp + 0xcc]
mov dword [esp + 0xc], ebx
call fcn.0067c700
mov ebx, dword [esp + 0x30]
mov dword [esp + 0xd0], ebx
xor ebx, ebx
mov dword [esp + 0xd4], ebx
mov dword [esp + 0xd8], ebx
add esp, 0xc0
ret
call fcn.00435970
ud2
cmp eax, 1
jne 0x69836f
xor eax, eax
mov ecx, eax
jmp 0x697fb4
cmp eax, 0
jbe 0x69842f
movzx ebp, byte [ecx]
xchg ebp, eax
cmp al, 0
xchg ebp, eax
jne 0x6983ea
cmp eax, 1
jbe 0x698428
mov ebx, ecx
inc ebx
movzx ebp, byte [ebx]
mov ebx, ebp
and ebx, 0x80
cmp bl, 0
jne 0x6983ea
xor ebx, ebx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
mov ebx, 0x766cdd
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], 0x1d
mov dword [esp], 0x8c38b0
lea ebx, [esp + 0x4c]
mov dword [esp + 4], ebx
mov dword [esp + 8], 0
call fcn.00417980
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x44], ecx
mov dword [esp + 0x48], eax
jmp 0x697fb4
cmp eax, 0
jbe 0x698421
movzx ebp, byte [ecx]
xchg ebp, eax
cmp al, 0xff
xchg ebp, eax
jne 0x698411
cmp eax, 1
jbe 0x69841a
mov ebx, ecx
inc ebx
movzx ebp, byte [ebx]
mov ebx, ebp
and ebx, 0x80
cmp bl, 0x80
je 0x69839e
xor eax, eax
mov ecx, eax
jmp 0x697fb4
call fcn.00435970
ud2
call fcn.00435970
ud2
call fcn.00435970
ud2
call fcn.00435970
ud2
call fcn.004616d0
jmp fcn.00697f00