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

Disassembly:
mov ecx, dword [0x9ec7ac]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x294]
cmp eax, dword [ecx + 8]
jbe 0x69d5aa
sub esp, 0x314
lea edi, [esp + 0x2ac]
xor eax, eax
call fcn.004686f9
lea edi, [esp + 0x2c8]
call fcn.004686ed
lea ecx, [esp + 0x2c8]
mov dword [esp + 0x2b8], ecx
call fcn.00452f50
mov ecx, dword [esp]
mov dword [esp + 0x2b4], ecx
lea edi, [esp + 0x290]
xor eax, eax
call fcn.004686f9
lea edi, [esp + 0x74]
call fcn.004686f3
lea ecx, [esp + 0x74]
mov dword [esp + 0x29c], ecx
call fcn.00452f50
mov ecx, dword [esp]
mov dword [esp + 0x298], ecx
mov ecx, dword [esp + 0x31c]
test ecx, ecx
je 0x69cc04
mov edx, dword [esp + 0x320]
mov ebx, dword [esp + 0x318]
mov eax, ecx
xor ebp, ebp
mov esi, 0xffffffff
xor edi, edi
xor eax, eax
mov dword [esp + 0x28], eax
lea ecx, [0x9ec5e0]
mov dword [esp + 0x268], ecx
xor eax, eax
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x31c]
mov ecx, eax
jmp 0x69cc9b
mov dword [esp + 0x328], 0
mov dword [esp + 0x32c], 0
mov dword [esp + 0x330], 0
mov dword [esp + 0x334], 0
mov dword [esp + 0x338], 0
add esp, 0x314
ret
lea ebp, [eax + edx*8 - 8]
mov dword [ebp], ecx
lea ecx, [eax + edx*8 - 4]
mov ebp, dword [esp + 0x20]
mov dword [ecx], ebp
lea ecx, [ebp + 4]
mov ebp, dword [esp + 0x320]
mov esi, dword [esp + 0x318]
mov edi, dword [esp + 0x31c]
mov ebp, dword [esp + 0x2c]
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x38]
mov dword [esp + 0x28], ebx
mov dword [esp + 0x268], eax
mov dword [esp + 0x24], edx
mov eax, dword [esp + 0x31c]
mov edx, dword [esp + 0x320]
mov ebx, dword [esp + 0x318]
add edx, eax
cmp ecx, edx
jae 0x69cff5
mov dword [esp + 0x34], esi
mov dword [esp + 0x38], edi
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x20], ecx
cmp ebp, 0xf
jb 0x69ccfb
mov edx, dword [0x9a3ac0]
mov dword [esp + 0x280], edx
mov ebp, dword [0x9a3ac4]
mov dword [esp + 0x50], ebp
mov eax, dword [ebx + 0x274]
mov dword [esp + 0x44], eax
mov ecx, dword [ebx + 0x270]
mov dword [esp + 0x274], ecx
mov dword [esp + 0x5c], eax
xor eax, eax
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x5c]
jmp 0x69d462
mov edx, edi
sub edi, esi
cmp edi, 0x8000000
jbe 0x69cd48
mov edi, dword [0x9a3ab8]
mov dword [esp + 0x27c], edi
mov edx, dword [0x9a3abc]
mov dword [esp + 0x4c], edx
mov ebp, dword [ebx + 0x274]
mov dword [esp + 0x40], ebp
mov esi, dword [ebx + 0x270]
mov dword [esp + 0x270], esi
mov dword [esp + 0x64], eax
xor eax, eax
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x64]
jmp 0x69d323
movzx edx, byte [esp + 0x324]
test dl, dl
je 0x69cdbc
lea edi, [esp + 0x188]
xor eax, eax
call fcn.004686c8
mov ecx, dword [ebx + 0x78]
lea edx, [0x7295e0]
cmp ecx, edx
jne 0x69d2f4
mov esi, dword [ebx + 0x7c]
lea edi, [esp + 0x188]
call fcn.004689e0
lea edi, [esp + 0xa8]
lea esi, [esp + 0x188]
call fcn.004689e0
mov eax, dword [esp + 0xc4]
mov dword [esp], ebx
mov ecx, dword [esp + 0x20]
sub ecx, eax
mov dword [esp + 4], ecx
call fcn.0069b3e0
mov eax, dword [esp + 8]
cmp eax, 0xffffffff
jne 0x69cdd5
jmp 0x69d06e
mov dword [esp], ebx
mov dword [esp + 4], ecx
call fcn.0069b3e0
mov eax, dword [esp + 8]
cmp eax, 0xffffffff
je 0x69d167
mov dword [esp + 0x30], eax
lea ecx, [0x6f2160]
mov dword [esp], ecx
call fcn.0040c5b0
mov eax, dword [esp + 4]
mov dword [esp + 0x284], eax
mov ecx, dword [esp + 0x318]
mov dword [esp], ecx
lea edx, [0x6cf8c0]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov ebx, dword [esp + 0x30]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], 4
call fcn.0069c0d0
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x69d129
mov eax, dword [esp + 0x284]
mov ecx, dword [eax]
test ecx, ecx
je 0x69d02d
mov edx, dword [esp + 0x31c]
cmp edx, ecx
ja 0x69ce54
mov ebx, dword [esp + 0x20]
cmp ebx, ecx
jb 0x69ce58
jmp 0x69d0ac
mov ebx, dword [esp + 0x20]
test ecx, 0x80000000
jbe 0x69ceb6
and ecx, 0x7fffffff
cmp ecx, 0xffff
jbe 0x69d1a5
mov ecx, dword [0x9a3ac8]
mov dword [esp + 0x278], ecx
mov ebp, dword [0x9a3acc]
mov dword [esp + 0x48], ebp
mov esi, dword [esp + 0x318]
mov edi, dword [esi + 0x274]
mov dword [esp + 0x3c], edi
mov edx, dword [esi + 0x270]
mov dword [esp + 0x26c], edx
mov dword [esp + 0x6c], eax
xor eax, eax
mov dword [esp + 0x54], eax
jmp 0x69d1c6
lea eax, [0x6e81c0]
mov dword [esp], eax
lea edx, [esp + 0x290]
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0040f0c0
movzx eax, byte [esp + 0x10]
test al, al
je 0x69cee5
mov eax, dword [esp + 0x2c]
lea ebp, [eax + 1]
jmp 0x69cf16
mov eax, dword [esp + 0x284]
mov ecx, dword [eax]
lea edx, [0x6e81c0]
mov dword [esp], edx
lea ebx, [esp + 0x290]
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
call fcn.0040f210
mov eax, dword [esp + 0xc]
mov byte [eax], 1
mov ebp, dword [esp + 0x2c]
mov eax, dword [esp + 0x284]
mov ecx, dword [eax]
mov edx, dword [esp + 0x38]
cmp edx, ecx
jae 0x69cf2b
mov edx, ecx
jmp 0x69cf31
mov edx, ecx
mov ecx, dword [esp + 0x38]
mov ebx, dword [esp + 0x34]
cmp ebx, edx
ja 0x69cf3b
mov edx, ebx
mov dword [esp + 0x34], edx
mov dword [esp + 0x38], ecx
mov dword [esp + 0x2c], ebp
lea eax, [0x6e8140]
mov dword [esp], eax
lea ebx, [esp + 0x2ac]
mov dword [esp + 4], ebx
mov esi, dword [esp + 0x20]
mov dword [esp + 8], esi
call fcn.0040f210
mov eax, dword [esp + 0xc]
test byte [eax], al
mov ecx, dword [0x9eca70]
test ecx, ecx
jne 0x69cf81
mov ecx, dword [esp + 0x284]
jmp 0x69cf94
call fcn.00468460
mov ecx, dword [esp + 0x284]
mov dword [edi], ecx
mov edx, dword [eax]
mov dword [edi + 4], edx
mov dword [eax], ecx
mov edx, dword [esp + 0x24]
inc edx
mov ecx, dword [ecx]
mov ebx, dword [esp + 0x28]
cmp ebx, edx
jb 0x69cfb1
mov eax, dword [esp + 0x268]
jmp 0x69cc42
mov dword [esp + 0x58], ecx
mov eax, dword [esp + 0x268]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x6f93c0]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov ebx, ecx
mov ecx, dword [esp + 0x58]
jmp 0x69cc42
mov eax, dword [ebx + 0x2c0]
mov dword [esp], eax
lea eax, [0x74e1b8]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x39
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call fcn.00685850
mov eax, dword [esp + 0x268]
mov dword [esp + 0x328], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x32c], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x330], eax
mov dword [esp + 0x334], 0
mov dword [esp + 0x338], 0
add esp, 0x314
ret
mov dword [esp + 0x328], 0
mov dword [esp + 0x32c], 0
mov dword [esp + 0x330], 0
mov dword [esp + 0x334], 0
mov dword [esp + 0x338], 0
add esp, 0x314
ret
mov dword [esp + 0x288], 0
mov dword [esp + 0x28c], 0
mov dword [esp], ebx
call fcn.00409ce0
mov eax, dword [esp + 4]
lea ecx, [0x6e44c0]
mov dword [esp + 0x288], ecx
mov dword [esp + 0x28c], eax
mov eax, dword [esp + 0x318]
mov eax, dword [eax + 0x2c0]
mov dword [esp], eax
lea eax, [0x752696]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x5d
lea eax, [esp + 0x288]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 1
mov dword [esp + 0x14], 1
call fcn.00685850
jmp 0x69d02d
mov dword [esp + 0x328], 0
mov dword [esp + 0x32c], 0
mov dword [esp + 0x330], 0
mov dword [esp + 0x334], 0
mov dword [esp + 0x338], 0
add esp, 0x314
ret
mov dword [esp + 0x328], 0
mov dword [esp + 0x32c], 0
mov dword [esp + 0x330], 0
mov dword [esp + 0x334], 0
mov dword [esp + 0x338], 0
add esp, 0x314
ret
mov ebp, dword [esp + 0x2c]
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
jmp 0x69cf3b
inc eax
mov ebx, dword [esp + 0x20]
mov esi, dword [esp + 0x318]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x54]
cmp eax, edi
jge 0x69d224
lea ebx, [edx + eax*8]
mov esi, dword [ebx + 4]
cmp esi, ebp
jne 0x69d1b6
mov eax, dword [ebx]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
call fcn.00403590
movzx eax, byte [esp + 0xc]
test al, al
jne 0x69d20f
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x278]
mov edx, dword [esp + 0x26c]
mov ebp, dword [esp + 0x48]
mov edi, dword [esp + 0x3c]
jmp 0x69d1b6
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x3c]
cmp eax, ecx
mov ebx, dword [esp + 0x20]
mov esi, dword [esp + 0x318]
jl 0x69d2e1
mov eax, dword [esi + 0x278]
mov ecx, dword [esi + 0x274]
inc ecx
mov edx, dword [esi + 0x270]
cmp eax, ecx
jae 0x69d2ad
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x6e41c0]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x318]
mov dword [ebx + 0x278], eax
mov eax, dword [0x9eca70]
test eax, eax
je 0x69d296
call fcn.00468460
mov dword [edi], ecx
mov eax, dword [ebx + 0x270]
mov dword [edi + 4], eax
mov dword [ebx + 0x270], ecx
mov ebx, dword [esp + 0x20]
mov esi, dword [esp + 0x318]
mov eax, ecx
mov ecx, edx
mov edx, eax
mov dword [esi + 0x274], ecx
lea eax, [edx + ecx*8 - 4]
mov ebp, dword [0x9a3acc]
lea ecx, [edx + ecx*8 - 8]
mov edx, dword [0x9a3ac8]
mov dword [eax], ebp
mov eax, dword [0x9eca70]
test eax, eax
je 0x69d2df
call fcn.00468460
mov dword [edi], edx
mov eax, dword [ecx]
mov dword [edi + 4], eax
mov dword [ecx], edx
mov eax, dword [esp + 0x284]
mov edx, dword [esp + 0x31c]
jmp 0x69d1a5
mov dword [esp], ecx
mov dword [esp + 4], edx
lea eax, [0x6e5b40]
mov dword [esp + 8], eax
call fcn.00409a80
lea eax, [ecx + 1]
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x318]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x31c]
mov ecx, dword [esp + 0x54]
cmp ecx, ebp
jge 0x69d384
lea eax, [esi + ecx*8]
mov ebx, dword [eax + 4]
cmp ebx, edx
jne 0x69d30a
mov eax, dword [eax]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], ebx
call fcn.00403590
movzx eax, byte [esp + 0xc]
test al, al
jne 0x69d36c
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x4c]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x270]
mov edi, dword [esp + 0x27c]
jmp 0x69d30a
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x40]
cmp ecx, edx
mov eax, dword [esp + 0x31c]
mov ebx, dword [esp + 0x318]
jl 0x69d439
mov ecx, dword [ebx + 0x278]
mov edx, dword [ebx + 0x274]
inc edx
mov ebp, dword [ebx + 0x270]
cmp ecx, edx
jae 0x69d405
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x6e41c0]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x318]
mov dword [ebx + 0x278], eax
mov eax, dword [0x9eca70]
test eax, eax
je 0x69d3f6
call fcn.00468460
mov dword [edi], ecx
mov ebp, dword [ebx + 0x270]
mov dword [edi + 4], ebp
mov dword [ebx + 0x270], ecx
mov eax, dword [esp + 0x31c]
mov ebp, ecx
mov dword [ebx + 0x274], edx
lea ecx, [ebp + edx*8 - 4]
mov esi, dword [0x9a3abc]
lea edx, [ebp + edx*8 - 8]
mov ebp, dword [0x9a3ab8]
mov dword [ecx], esi
mov ecx, dword [0x9eca70]
test ecx, ecx
je 0x69d437
call fcn.00468460
mov dword [edi], ebp
mov ecx, dword [edx]
mov dword [edi + 4], ecx
mov dword [edx], ebp
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x38]
mov ebp, dword [esp + 0x2c]
mov esi, dword [esp + 0x34]
jmp 0x69cd48
inc ebx
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x38]
mov dword [esp + 0x54], ebx
mov ebx, dword [esp + 0x318]
mov ebx, dword [esp + 0x54]
cmp ebx, eax
jge 0x69d4bd
lea esi, [ecx + ebx*8]
mov edi, dword [esi + 4]
cmp edi, ebp
jne 0x69d44e
mov eax, dword [esi]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], edi
call fcn.00403590
movzx eax, byte [esp + 0xc]
test al, al
jne 0x69d4ab
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x274]
mov edx, dword [esp + 0x280]
mov ebx, dword [esp + 0x54]
mov ebp, dword [esp + 0x50]
jmp 0x69d44e
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x44]
cmp ecx, edx
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x38]
jge 0x69d4cb
mov ecx, dword [esp + 0x318]
jmp 0x69d58f
mov ecx, dword [esp + 0x318]
mov edx, dword [ecx + 0x278]
mov ebx, dword [ecx + 0x274]
inc ebx
mov ebp, dword [ecx + 0x270]
cmp edx, ebx
jae 0x69d557
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x6e41c0]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x318]
mov dword [ebx + 0x278], eax
mov eax, dword [0x9eca70]
test eax, eax
je 0x69d53e
call fcn.00468460
mov dword [edi], ecx
mov ebp, dword [ebx + 0x270]
mov dword [edi + 4], ebp
mov dword [ebx + 0x270], ecx
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x38]
mov ebx, edx
mov ebp, ecx
mov ecx, dword [esp + 0x318]
mov dword [ecx + 0x274], ebx
lea edx, [ebp + ebx*8 - 4]
mov eax, dword [0x9a3ac4]
lea ebx, [ebp + ebx*8 - 8]
mov ebp, dword [0x9a3ac0]
mov dword [edx], eax
mov edx, dword [0x9eca70]
test edx, edx
je 0x69d58d
mov eax, edi
call fcn.00468460
mov dword [edi], ebp
mov edx, dword [ebx]
mov dword [edi + 4], edx
mov edi, eax
mov dword [ebx], ebp
mov eax, dword [esp + 0x31c]
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x318]
mov ebp, dword [esp + 0x2c]
jmp 0x69ccfb
call fcn.00467050
jmp fcn.0069cb30