Function at 0x695350
Capabilities:
Check for software breakpoints
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x18]
cmp eax, dword [ecx + 8]
jbe 0x695d47
sub esp, 0x98
lea edi, [esp + 0x5c]
xor eax, eax
call fcn.0044dd61
lea ecx, [0x844a6e]
mov dword [esp + 0x64], ecx
mov dword [esp + 0x68], 3
mov ecx, dword [esp + 0x9c]
test ecx, ecx
je 0x695d2d
mov eax, dword [ecx + 8]
cmp eax, 0x29cb474c
jne 0x695d22
lea edx, [0x80fb80]
cmp edx, ecx
jne 0x695d18
mov ebx, dword [esp + 0xa0]
je 0x695c9a
cmp eax, 0x7ade63e2
jne 0x695d2d
lea eax, [0x838d60]
cmp eax, ecx
jne 0x695c90
mov ebx, dword [esp + 0xa0]
jne 0x695d2d
mov ebp, dword [ebx + 0x1c]
mov dword [esp + 0x5c], ebp
mov ebp, dword [ebx + 4]
mov esi, dword [ebx]
mov dword [esp + 0x68], ebp
mov dword [esp + 0x64], esi
mov ebp, dword [ebx + 0x14]
mov dword [esp + 0x6c], ebp
mov ebp, dword [ebx + 0x18]
mov dword [esp + 0x70], ebp
mov dword [esp + 0x60], 0xc8
movzx ebx, byte [ebx + 0x40]
mov byte [esp + 0x90], bl
xor ebx, ebx
mov byte [esp + 0x33], bl
mov ebp, dword [esp + 0x6c]
test ebp, ebp
jne 0x695446
mov ebp, dword [esp + 0x70]
test ebp, ebp
jne 0x695446
mov dword [esp + 0x6c], 1
mov dword [esp + 0x70], 1
lea eax, [esp + 0x5c]
mov dword [esp], eax
call fcn.00695d60
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
test ecx, ecx
jne 0x695c7b
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x64]
mov ebx, dword [esp + 0x5c]
mov ebp, dword [esp + 0x84]
mov esi, dword [esp + 0x8c]
mov edi, dword [esp + 0x88]
mov dword [esp + 0x14], ebp
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], esi
movzx ebp, byte [esp + 0x33]
xchg ebp, eax
mov byte [esp], al
xchg ebp, eax
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
call fcn.006961c0
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x20]
mov ebx, dword [esp + 0x24]
test eax, eax
jne 0x695c66
mov dword [esp + 0x34], edx
mov dword [esp + 0x38], ebx
movzx eax, byte [esp + 0x33]
test al, al
je 0x6954f5
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x64]
cmp eax, 4
jne 0x6954f5
mov eax, dword [ecx]
cmp eax, 0x44414548
je 0x695be1
mov dword [esp + 0x7c], edx
mov dword [esp + 0x80], ebx
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0x84]
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp], eax
call fcn.006968f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x94], eax
test edx, edx
jne 0x695bcc
mov eax, dword [esp + 0x9c]
mov ecx, dword [eax + 8]
cmp ecx, 0x29cb474c
jne 0x695bc4
lea ecx, [0x80fb80]
cmp ecx, eax
jne 0x695bb7
mov edx, dword [esp + 0x34]
cmp edx, 0xffffffff
sete bl
mov ebp, dword [esp + 0x38]
cmp ebp, 0xffffffff
xchg esi, ebx
sete bl
xchg esi, ebx
and esi, ebx
xchg esi, eax
test al, al
xchg esi, eax
je 0x6955df
mov ebx, dword [esp + 0x84]
mov esi, dword [esp + 0x88]
test esi, esi
jle 0x695bb0
mov esi, dword [ebx]
mov ebx, dword [ebx + 4]
cmp ebx, 7
jne 0x695ba9
mov ebx, dword [esi]
cmp ebx, 0x6e756863
jne 0x695ba2
movzx ebx, word [esi + 4]
cmp bx, 0x656b
jne 0x695b9b
movzx ebx, byte [esi + 6]
cmp bl, 0x64
sete bl
test bl, bl
je 0x695b66
mov ebx, dword [esp + 0x84]
mov esi, dword [esp + 0x88]
test esi, esi
jle 0x695b5f
mov esi, dword [ebx]
mov ebx, dword [ebx + 4]
cmp ebx, 7
jne 0x695b58
mov ebx, dword [esi]
cmp ebx, 0x6e756863
jne 0x695b51
movzx ebx, word [esi + 4]
cmp bx, 0x656b
jne 0x695b4a
movzx ebx, byte [esi + 6]
cmp bl, 0x64
sete bl
test bl, bl
je 0x69598d
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x64]
cmp edx, 4
jne 0x695986
mov edx, dword [ebx]
cmp edx, 0x44414548
sete dl
test dl, dl
je 0x695852
lea edx, [0x9b3ce0]
mov dword [esp + 0x74], edx
lea edx, [0xcc206c]
mov dword [esp + 0x78], edx
mov edx, dword [eax + 8]
cmp edx, 0x29cb474c
jne 0x695761
cmp ecx, eax
jne 0x695848
mov ecx, dword [esp + 0xa0]
jne 0x695761
mov dword [esp + 0x40], ecx
mov eax, dword [esp + 0x78]
mov edx, dword [esp + 0x74]
mov dword [ecx + 0x20], edx
mov edx, dword [0xcc2260]
lea ebx, [ecx + 0x24]
test edx, edx
jne 0x69574c
mov dword [ecx + 0x24], eax
mov eax, dword [esp + 0x7c]
mov edx, dword [esp + 0x80]
mov dword [ecx + 0x28], eax
mov dword [ecx + 0x2c], edx
mov eax, dword [esp + 0x8c]
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0x84]
mov dword [ecx + 0x34], edx
mov dword [ecx + 0x38], eax
mov eax, dword [0xcc2260]
lea edx, [ecx + 0x30]
test eax, eax
jne 0x69573a
mov dword [ecx + 0x30], ebx
movzx eax, byte [esp + 0x90]
mov byte [ecx + 0x3c], al
mov eax, dword [0xcc2260]
lea edx, [ecx + 0x40]
mov ebx, dword [esp + 0x94]
test eax, eax
jne 0x69572c
mov dword [ecx + 0x40], ebx
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0
add esp, 0x98
ret
mov dword [esp], edx
mov dword [esp + 4], ebx
call fcn.0040f360
jmp 0x69570f
mov dword [esp], edx
mov dword [esp + 4], ebx
call fcn.0040f360
mov ecx, dword [esp + 0x40]
jmp 0x6956ed
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.0040f360
mov ecx, dword [esp + 0x40]
jmp 0x6956b1
cmp edx, 0x7ade63e2
jne 0x69570f
lea ecx, [0x838d60]
cmp ecx, eax
jne 0x69583e
mov eax, dword [esp + 0xa0]
jne 0x69570f
mov dword [esp + 0x3c], eax
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x74]
mov dword [eax + 0x20], edx
mov edx, dword [0xcc2260]
lea ebx, [eax + 0x24]
test edx, edx
jne 0x695829
mov dword [eax + 0x24], ecx
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x7c]
mov dword [eax + 0x2c], edx
mov dword [eax + 0x30], ecx
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0x84]
mov dword [eax + 0x38], edx
mov dword [eax + 0x3c], ecx
mov ecx, dword [0xcc2260]
lea edx, [eax + 0x34]
test ecx, ecx
jne 0x695817
mov dword [eax + 0x34], ebx
movzx ecx, byte [esp + 0x90]
mov byte [eax + 0x40], cl
mov ecx, dword [0xcc2260]
lea edx, [eax + 0x58]
mov ebx, dword [esp + 0x94]
test ecx, ecx
jne 0x695806
mov dword [eax + 0x58], ebx
jmp 0x69570f
mov dword [esp], edx
mov dword [esp + 4], ebx
call fcn.0040f360
jmp 0x69570f
mov dword [esp], edx
mov dword [esp + 4], ebx
call fcn.0040f360
mov eax, dword [esp + 0x3c]
jmp 0x6957df
mov dword [esp], ebx
mov dword [esp + 4], ecx
call fcn.0040f360
mov eax, dword [esp + 0x3c]
jmp 0x6957a3
mov eax, 0
jmp 0x69577e
mov ecx, 0
jmp 0x695688
mov edx, dword [esp + 0x60]
lea ebx, [edx - 0x64]
cmp ebx, 0x63
jbe 0x695656
cmp edx, 0xcc
je 0x695656
cmp edx, 0x130
je 0x695656
lea eax, [0x9b12a0]
mov dword [esp], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 4], eax
call fcn.00650180
mov eax, dword [esp + 8]
mov dword [esp + 0x58], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x54], ecx
lea edx, [0x822d60]
mov dword [esp], edx
call fcn.0040eaf0
mov eax, dword [esp + 4]
mov dword [esp + 0x50], eax
mov ecx, dword [esp + 0x58]
mov dword [eax], ecx
mov ecx, dword [0xcc2260]
lea edx, [eax + 4]
test ecx, ecx
jne 0x69596d
mov ecx, dword [esp + 0x54]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x9c]
mov dword [eax + 8], ecx
mov edx, dword [0xcc2260]
lea ebx, [eax + 0xc]
lea ebp, [eax + 0x10]
test edx, edx
jne 0x69592b
mov edx, dword [esp + 0xa0]
mov dword [eax + 0xc], edx
mov ebx, dword [esp + 0xa4]
mov dword [eax + 0x10], ebx
movzx ebx, byte [esp + 0x90]
mov byte [eax + 0x14], bl
lea ebx, [0x9b34e0]
mov dword [esp + 0x74], ebx
mov dword [esp + 0x78], eax
mov eax, ecx
lea ecx, [0x80fb80]
jmp 0x69566a
mov dword [esp + 0x4c], ebp
mov dword [esp], ebx
mov eax, dword [esp + 0xa0]
mov dword [esp + 4], eax
call fcn.0040f360
mov eax, dword [esp + 0x4c]
mov dword [esp], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 4], eax
call fcn.0040f360
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0xa0]
jmp 0x695905
mov dword [esp], edx
mov eax, dword [esp + 0x54]
mov dword [esp + 4], eax
call fcn.0040f360
mov eax, dword [esp + 0x50]
jmp 0x6958d7
xor edx, edx
jmp 0x69564e
test edx, edx
sete bl
test ebp, ebp
xchg esi, ebx
sete bl
xchg esi, ebx
and ebx, esi
test bl, bl
je 0x6959ba
lea edx, [0x9b3ce0]
mov dword [esp + 0x74], edx
lea edx, [0xcc206c]
mov dword [esp + 0x78], edx
jmp 0x69566a
test edx, edx
seta bl
and ebx, esi
test ebp, ebp
xchg esi, ebx
setg bl
xchg esi, ebx
or esi, ebx
xchg esi, eax
test al, al
xchg esi, eax
jne 0x695a74
movzx edx, byte [esp + 0x90]
test dl, dl
jne 0x6959fb
lea edx, [0x9b3ce0]
mov dword [esp + 0x74], edx
lea edx, [0xcc206c]
mov dword [esp + 0x78], edx
jmp 0x69566a
lea eax, [0x822d60]
mov dword [esp], eax
call fcn.0040eaf0
mov eax, dword [esp + 4]
lea ecx, [0x9b12a0]
mov dword [eax], ecx
mov ecx, dword [0xcc2260]
lea edx, [eax + 4]
test ecx, ecx
jne 0x695a57
mov ecx, dword [esp + 0xa4]
mov dword [eax + 4], ecx
movzx edx, byte [esp + 0x90]
mov byte [eax + 0x14], dl
lea edx, [0x9b34e0]
mov dword [esp + 0x74], edx
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x9c]
lea ecx, [0x80fb80]
jmp 0x69566a
mov dword [esp + 0x50], eax
mov dword [esp], edx
mov eax, dword [esp + 0xa4]
mov dword [esp + 4], eax
call fcn.0040f360
mov eax, dword [esp + 0x50]
jmp 0x695a2c
lea eax, [0x7f1880]
mov dword [esp], eax
call fcn.0040eaf0
mov eax, dword [esp + 4]
mov dword [esp + 0x48], eax
lea ecx, [0x9b12a0]
mov dword [eax], ecx
mov ecx, dword [0xcc2260]
lea edx, [eax + 4]
test ecx, ecx
jne 0x695b2e
mov ecx, dword [esp + 0xa4]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x34]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x38]
mov dword [eax + 0xc], ecx
lea ecx, [0x822d60]
mov dword [esp], ecx
call fcn.0040eaf0
mov eax, dword [esp + 4]
lea ecx, [0x9b1880]
mov dword [eax], ecx
mov ecx, dword [0xcc2260]
lea edx, [eax + 4]
test ecx, ecx
jne 0x695b14
mov ecx, dword [esp + 0x48]
mov dword [eax + 4], ecx
movzx edx, byte [esp + 0x90]
mov byte [eax + 0x14], dl
lea edx, [0x9b34e0]
mov dword [esp + 0x74], edx
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x9c]
lea ecx, [0x80fb80]
jmp 0x69566a
mov dword [esp + 0x50], eax
mov dword [esp], edx
mov eax, dword [esp + 0x48]
mov dword [esp + 4], eax
call fcn.0040f360
mov eax, dword [esp + 0x50]
jmp 0x695ae9
mov dword [esp], edx
mov eax, dword [esp + 0xa4]
mov dword [esp + 4], eax
call fcn.0040f360
mov eax, dword [esp + 0x48]
jmp 0x695aad
xor ebx, ebx
jmp 0x69562a
xor ebx, ebx
jmp 0x69562a
xor ebx, ebx
jmp 0x69562a
xor ebx, ebx
jmp 0x69562a
mov ebx, dword [esp + 0x60]
lea esi, [ebx - 0x64]
cmp esi, 0x63
jbe 0x6955df
cmp ebx, 0xcc
je 0x6955df
cmp ebx, 0x130
je 0x6955df
mov byte [esp + 0x90], 1
jmp 0x6955df
xor ebx, ebx
jmp 0x6955d7
xor ebx, ebx
jmp 0x6955d7
xor ebx, ebx
jmp 0x6955d7
xor ebx, ebx
jmp 0x6955d7
mov edx, dword [esp + 0x34]
mov ebp, dword [esp + 0x38]
jmp 0x6955df
lea ecx, [0x80fb80]
jmp 0x695bb7
mov dword [esp + 0xa8], edx
mov dword [esp + 0xac], ecx
add esp, 0x98
ret
mov eax, dword [esp + 0x5c]
lea ecx, [0x8273e0]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea eax, [0x84c635]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0xe
call fcn.00408e80
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 4]
mov eax, dword [eax]
test ecx, ecx
jle 0x695c60
mov ecx, dword [eax + 4]
mov eax, dword [eax]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00697700
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0xc]
test ecx, ecx
jne 0x695c4b
mov dword [esp + 0x7c], edx
mov dword [esp + 0x80], ebx
jmp 0x695500
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xac], eax
add esp, 0x98
ret
xor ecx, ecx
xor eax, eax
jmp 0x695c1b
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], ecx
add esp, 0x98
ret
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xac], eax
add esp, 0x98
ret
mov ebx, 0
jmp 0x6953e5
mov dword [esp + 0x44], ebx
mov eax, dword [ebx + 0x1c]
mov dword [esp + 0x5c], eax
mov eax, dword [ebx + 8]
mov dword [esp + 0x60], eax
mov eax, dword [ebx + 0x14]
mov dword [esp + 0x6c], eax
mov eax, dword [ebx + 0x18]
mov dword [esp + 0x70], eax
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x5c]
mov dword [esp + 8], edx
mov dword [esp], ecx
mov dword [esp + 4], eax
mov byte [esp + 0xc], 1
call fcn.006967b0
movzx eax, byte [esp + 0x10]
mov byte [esp + 0x90], al
mov eax, dword [esp + 0x44]
mov eax, dword [eax + 0x44]
test eax, eax
je 0x695cfb
mov ecx, dword [eax + 4]
mov eax, dword [eax]
mov dword [esp + 0x68], ecx
mov dword [esp + 0x64], eax
lea eax, [0x838d60]
mov ecx, dword [esp + 0x9c]
lea edx, [0x80fb80]
mov ebx, 1
jmp 0x695422
mov ebx, 0
jmp 0x6953bf
lea edx, [0x80fb80]
jmp 0x6953c5
lea eax, [0x7cfea0]
mov dword [esp], eax
lea eax, [0x9b0220]
mov dword [esp + 4], eax
call fcn.004278c0
ud2
call fcn.0044c200
jmp fcn.00695350