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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x5c]
cmp eax, dword [ecx + 8]
jbe 0x67a4ce
sub esp, 0xdc
mov eax, 0
mov dword [esp + 0xd4], eax
mov dword [esp + 0xd8], eax
mov byte [esp + 0x34], 0
mov dword [esp + 0xec], 0
mov dword [esp + 0xf0], 0
mov dword [esp + 0xf4], 0
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
call fcn.00677180
movzx eax, byte [esp + 4]
test al, al
jne 0x67a496
lea edi, [esp + 0x68]
xor eax, eax
call fcn.00460deb
lea edi, [esp + 0x90]
call fcn.00460deb
call fcn.0048c5d0
lea edi, [esp + 0x7c]
mov esi, esp
call fcn.004612ce
mov ecx, dword [esp + 0xe0]
mov edx, dword [ecx]
mov ebx, dword [edx + 0x1c]
test ebx, ebx
xchg ebp, ebx
setne bl
xchg ebp, ebx
mov esi, dword [edx + 0x20]
test esi, esi
mov eax, ecx
setne cl
or ecx, ebp
test cl, cl
je 0x67a48b
test esi, esi
setne cl
test ebx, ebx
setne dl
lea ebp, [esp + 0x1c]
mov dword [esp + 0x64], ebp
or edx, ecx
test dl, dl
jne 0x67a451
mov ecx, dword [eax]
mov edx, dword [ecx + 0x14]
test edx, edx
setne bl
mov ecx, dword [ecx + 0x18]
test ecx, ecx
xchg ebp, ebx
setne bl
xchg ebp, ebx
or ebp, ebx
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x67a418
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
mov ecx, dword [ecx + 0x24]
mov dword [esp + 0x44], ecx
mov dword [esp], edx
lea edi, [esp + 4]
mov dword [esp + 0x64], edi
lea esi, [esp + 0x90]
call fcn.004612ce
mov ecx, dword [esp + 0x44]
call ecx
mov eax, dword [esp + 0xe0]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x24]
test edx, edx
setne bl
mov ecx, dword [ecx + 0x28]
test ecx, ecx
xchg ebp, ebx
setne bl
xchg ebp, ebx
or ebp, ebx
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x679a23
lea ebx, [0xbd51e8]
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xd4], eax
mov dword [esp + 0x48], edx
mov dword [esp + 0x4c], ecx
mov byte [esp + 0x34], 1
mov ecx, dword [eax]
mov edx, dword [eax + 0x24]
mov ecx, dword [ecx + 0x34]
test ecx, ecx
jle 0x67a40e
xchg ebp, eax
mov byte [esp + 0x37], al
xchg ebp, eax
mov ebx, ecx
add ecx, 0x1000
mov dword [edx + 0x18], ecx
mov ecx, ebx
sar ebx, 0x1f
add ecx, 0x1000
adc ebx, 0
mov dword [edx + 0x1c], ebx
mov ecx, dword [eax + 0x30]
cmp dword [eax + 0x34], 4
jne 0x679a6a
cmp dword [ecx], 0x54534f50
je 0x67a3b9
mov ecx, dword [eax + 0x28]
mov dword [esp], ecx
mov byte [esp + 4], 0
call fcn.00673fb0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov dword [esp + 0xf0], ecx
mov dword [esp + 0xf4], edx
test ecx, ecx
jne 0x67a2f2
nop
mov ecx, dword [eax + 0x14]
cmp ecx, 1
jne 0x67a261
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov ebx, dword [esp + 0xe0]
mov dword [ebx + 0x34], edx
mov edx, dword [0x10fd360]
test edx, edx
jne 0x67a24e
mov dword [ebx + 0x30], ecx
mov dword [esp + 0x54], eax
mov ecx, dword [ebx + 0x24]
mov dword [ecx + 0x18], 0xffffffff
mov dword [ecx + 0x1c], 0x7fffffff
mov ecx, dword [eax + 0x1c]
lea edx, [0xb6a860]
mov dword [esp], edx
mov dword [esp + 4], ecx
lea ecx, [0xb8f2b8]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 4
call fcn.004109e0
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 4]
mov eax, dword [eax]
movzx edx, byte [esp + 0x14]
mov ebx, dword [esp + 0x54]
mov ebp, dword [ebx]
mov esi, dword [ebx + 4]
mov dword [esp + 0x40], esi
cmp esi, 3
jne 0x67a24a
cmp word [ebp], 0x5250
jne 0x67a246
cmp byte [ebp + 2], 0x49
jne 0x67a242
mov edi, ebp
mov ebp, dword [ebx + 0x1c]
test ebp, ebp
je 0x67a23b
mov ebp, dword [ebp]
test ebp, ebp
jne 0x67a234
mov ebp, dword [ebx + 8]
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], 1
jne 0x67a234
cmp byte [esi], 0x2a
jne 0x67a234
mov ebp, dword [ebx + 0xc]
cmp dword [ebx + 0x10], 8
jne 0x67a22d
cmp dword [ebp], 0x50545448
jne 0x67a22d
cmp dword [ebp + 4], 0x302e322f
xchg ebp, ebx
sete bl
xchg ebp, ebx
mov esi, dword [ebx + 0x14]
cmp esi, 1
jle 0x67a218
test dl, dl
je 0x679bac
test ecx, ecx
jne 0x679bb6
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x67a197
cmp ecx, 1
jg 0x67a139
xchg ebp, eax
mov byte [esp + 0x33], al
xchg ebp, eax
je 0x67a112
xor eax, eax
test al, al
jne 0x67a0b4
mov ecx, dword [ebx + 0x1c]
mov dword [esp + 0x60], ecx
lea edi, [esp + 0xa4]
xor eax, eax
call fcn.00460de4
lea ecx, [0xb6a860]
mov dword [esp], ecx
mov edx, dword [esp + 0x60]
mov dword [esp + 4], edx
lea edx, [esp + 0xa4]
mov dword [esp + 8], edx
call fcn.0040d9f0
jmp 0x679cb5
mov ecx, dword [esp + 0x40]
lea eax, [ecx + 1]
mov ecx, dword [esp + 0x38]
cmp ecx, eax
jle 0x679ca6
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x50]
lea edx, [ecx + eax*8]
mov ebx, dword [edx]
mov edx, dword [edx + 4]
mov dword [esp], ebx
mov dword [esp + 4], edx
call fcn.00638010
movzx eax, byte [esp + 8]
test al, al
jne 0x679c10
mov dword [esp + 0xec], 0
lea eax, [0xc84180]
mov dword [esp + 0xf0], eax
lea eax, [0xc757d8]
mov dword [esp + 0xf4], eax
movzx eax, byte [esp + 0x37]
test al, 1
jne 0x679c7e
add esp, 0xdc
ret
and eax, 0xfffffffe
mov byte [esp + 0x34], al
mov eax, dword [esp + 0xd4]
mov dword [esp], eax
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0069a990
jmp 0x679c77
lea eax, [esp + 0xa4]
mov dword [esp], eax
call fcn.0040dc60
mov eax, dword [esp + 0xa4]
test eax, eax
je 0x679d57
mov ecx, dword [esp + 0xa8]
mov edx, dword [eax]
mov ebx, dword [ecx]
mov dword [esp + 0x50], ebx
mov eax, dword [eax + 4]
mov ecx, dword [ecx + 4]
mov dword [esp + 0x38], ecx
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.00637f00
movzx eax, byte [esp + 8]
test al, al
je 0x679cf9
xor eax, eax
jmp 0x679c17
mov dword [esp + 0xec], 0
lea eax, [0xc84180]
mov dword [esp + 0xf0], eax
lea eax, [0xc757d0]
mov dword [esp + 0xf4], eax
movzx eax, byte [esp + 0x37]
test al, 1
jne 0x679d2f
add esp, 0xdc
ret
and eax, 0xfffffffe
mov byte [esp + 0x34], al
mov eax, dword [esp + 0xd4]
mov dword [esp], eax
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0069a990
jmp 0x679d28
mov eax, dword [esp + 0x54]
mov ecx, dword [eax + 0x1c]
lea edx, [0xb6a860]
mov dword [esp], edx
mov dword [esp + 4], ecx
lea ecx, [0xb8f2b8]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 4
call fcn.00411100
mov eax, dword [esp + 0xe4]
mov dword [esp], eax
mov eax, dword [esp + 0xe8]
mov dword [esp + 4], eax
call fcn.0050f200
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0x54]
mov dword [ebx + 0x78], edx
mov edx, dword [0x10fd360]
test edx, edx
jne 0x67a0a7
mov dword [ebx + 0x7c], eax
mov edx, dword [esp + 0xe0]
mov eax, dword [edx + 0x10]
mov ebp, dword [edx + 0x14]
mov dword [ebx + 0x60], ebp
mov ebp, dword [0x10fd360]
test ebp, ebp
jne 0x67a09a
mov dword [ebx + 0x5c], eax
mov ebp, dword [0x10fd360]
mov eax, dword [edx + 0x18]
test ebp, ebp
jne 0x67a08d
mov dword [ebx + 0x6c], eax
mov dword [esp + 0x58], ecx
mov eax, dword [ebx + 0x24]
lea ebp, [0xc875a0]
cmp dword [ebx + 0x20], ebp
jne 0x679e0b
mov byte [eax + 0x15], 1
mov edi, esp
lea esi, [esp + 0x90]
call fcn.004612ce
lea edi, [esp + 0x14]
lea esi, [esp + 0x68]
call fcn.004612ce
call fcn.0048a160
movzx eax, byte [esp + 0x28]
test al, al
je 0x67a05e
call fcn.0040c7a0
mov eax, dword [esp]
mov dword [esp + 0x60], eax
lea ecx, [0xa82280]
mov dword [esp], ecx
mov dword [esp + 4], 1
call fcn.004048b0
mov eax, dword [esp + 8]
mov dword [esp + 0x5c], eax
mov ecx, dword [esp + 0x54]
mov dword [esp], ecx
call fcn.00675bb0
movzx eax, byte [esp + 4]
mov byte [esp + 0x36], al
mov ecx, dword [esp + 0x54]
mov dword [esp], ecx
call fcn.00675c60
movzx eax, byte [esp + 4]
mov byte [esp + 0x35], al
lea ecx, [0xb747c0]
mov dword [esp], ecx
call fcn.0040bd00
mov edi, dword [esp + 4]
mov eax, dword [0x10fd360]
test eax, eax
jne 0x67a02b
mov ecx, dword [esp + 0xe0]
mov dword [edi], ecx
mov ecx, dword [esp + 0x58]
mov dword [edi + 0x10], ecx
mov ecx, dword [esp + 0x54]
mov dword [edi + 4], ecx
mov eax, dword [ecx + 0x24]
mov ecx, dword [ecx + 0x20]
mov dword [edi + 8], ecx
mov ecx, dword [0x10fd360]
test ecx, ecx
jne 0x67a00c
mov dword [edi + 0xc], eax
mov ecx, dword [esp + 0x60]
mov dword [edi + 0x34], ecx
mov dword [edi + 0x44], 0xffffffff
mov dword [edi + 0x48], 0xffffffff
mov ecx, dword [0x10fd360]
test ecx, ecx
jne 0x679ff0
mov ecx, dword [esp + 0x5c]
mov dword [edi + 0x90], ecx
movzx ecx, byte [esp + 0x36]
mov byte [edi + 0x16], cl
movzx ecx, byte [esp + 0x35]
mov byte [edi + 0x17], cl
mov dword [esp + 0xec], edi
movzx ecx, byte [esp + 0x33]
test cl, cl
je 0x679f2e
mov byte [edi + 0x50], 1
mov eax, dword [esp + 0xec]
test byte [eax], al
mov ecx, dword [0x10fd360]
test ecx, ecx
jne 0x679fe3
mov dword [eax + 0x28], eax
mov eax, dword [esp + 0xec]
test byte [eax], al
lea ecx, [0xc83380]
mov dword [esp], ecx
add eax, 0x28
mov dword [esp + 4], eax
mov dword [esp + 8], 0x800
call fcn.00678e90
mov eax, dword [esp + 0xec]
test byte [eax], al
mov ecx, dword [0x10fd360]
mov edx, dword [esp + 0xc]
test ecx, ecx
jne 0x679fd7
mov dword [eax + 0x24], edx
mov dword [esp + 0xf0], 0
mov dword [esp + 0xf4], 0
movzx eax, byte [esp + 0x37]
test al, 1
jne 0x679faf
add esp, 0xdc
ret
and eax, 0xfffffffe
mov byte [esp + 0x34], al
mov eax, dword [esp + 0xd4]
mov dword [esp], eax
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0069a990
jmp 0x679fa8
lea edi, [eax + 0x24]
mov eax, edx
call fcn.00460b40
jmp 0x679f88
lea edi, [eax + 0x28]
call fcn.00460b40
jmp 0x679f48
lea ecx, [edi + 0x90]
mov eax, edi
mov edi, ecx
mov edx, eax
mov eax, dword [esp + 0x5c]
call fcn.00460b40
mov edi, edx
jmp 0x679f0a
lea ecx, [edi + 0xc]
mov edx, edi
mov edi, ecx
call fcn.00460b40
lea edi, [edx + 0x34]
mov eax, dword [esp + 0x60]
call fcn.00460b40
mov edi, edx
jmp 0x679ee4
mov eax, dword [esp + 0xe0]
call fcn.00460b40
lea edx, [edi + 0x10]
mov eax, edi
mov edi, edx
mov ecx, eax
mov eax, dword [esp + 0x58]
call fcn.00460b40
lea edi, [ecx + 4]
mov eax, dword [esp + 0x54]
call fcn.00460b40
mov edi, ecx
mov ecx, eax
jmp 0x679ec3
mov eax, dword [esp + 0xe0]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
mov ecx, dword [ecx + 0x24]
mov dword [esp + 0x44], ecx
mov dword [esp], edx
mov edi, dword [esp + 0x64]
lea esi, [esp + 0x68]
call fcn.004612ce
mov ecx, dword [esp + 0x44]
call ecx
jmp 0x679e38
lea edi, [ebx + 0x6c]
call fcn.00460b40
jmp 0x679df5
lea edi, [ebx + 0x5c]
call fcn.00460b40
jmp 0x679de1
lea edi, [ebx + 0x7c]
call fcn.00460b40
jmp 0x679dc0
mov dword [esp + 0xec], 0
lea eax, [0xc84180]
mov dword [esp + 0xf0], eax
lea eax, [0xc757c8]
mov dword [esp + 0xf4], eax
movzx eax, byte [esp + 0x37]
test al, 1
jne 0x67a0ea
add esp, 0xdc
ret
and eax, 0xfffffffe
mov byte [esp + 0x34], al
mov eax, dword [esp + 0xd4]
mov dword [esp], eax
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0069a990
jmp 0x67a0e3
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00637fb0
movzx eax, byte [esp + 8]
xor eax, 1
mov ebx, dword [esp + 0x54]
movzx ebp, byte [esp + 0x33]
jmp 0x679bcd
mov dword [esp + 0xec], 0
lea eax, [0xc84180]
mov dword [esp + 0xf0], eax
lea eax, [0xc757c0]
mov dword [esp + 0xf4], eax
movzx eax, byte [esp + 0x37]
test al, 1
jne 0x67a16f
add esp, 0xdc
ret
and eax, 0xfffffffe
mov byte [esp + 0x34], al
mov eax, dword [esp + 0xd4]
mov dword [esp], eax
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0069a990
jmp 0x67a168
mov edx, dword [esp + 0x40]
cmp edx, 7
jne 0x67a1ba
cmp dword [edi], 0x4e4e4f43
jne 0x67a1ba
cmp word [edi + 4], 0x4345
jne 0x67a1ba
cmp byte [edi + 6], 0x54
je 0x679bb6
mov dword [esp + 0xec], 0
lea eax, [0xc84180]
mov dword [esp + 0xf0], eax
lea eax, [0xc757b8]
mov dword [esp + 0xf4], eax
movzx eax, byte [esp + 0x37]
test al, 1
jne 0x67a1f0
add esp, 0xdc
ret
and eax, 0xfffffffe
mov byte [esp + 0x34], al
mov eax, dword [esp + 0xd4]
mov dword [esp], eax
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0069a990
jmp 0x67a1e9
jne 0x679bb6
cmp dword [ebx + 0x18], 1
jge 0x679ba4
jmp 0x679bb6
xor ebp, ebp
jmp 0x679b98
xor ebp, ebp
jmp 0x679b98
xor ebp, ebp
jmp 0x679b4f
mov edi, ebp
jmp 0x67a234
mov edi, ebp
jmp 0x67a234
mov edi, ebp
jmp 0x67a234
lea edi, [ebx + 0x30]
mov edx, eax
mov eax, ecx
call fcn.00460b40
mov eax, edx
jmp 0x679ac9
cmp ecx, 2
jne 0x67a294
mov ecx, dword [eax + 0x18]
test ecx, ecx
jne 0x67a294
mov ecx, dword [eax]
cmp dword [eax + 4], 3
jne 0x67a294
cmp word [ecx], 0x5250
jne 0x67a294
cmp byte [ecx + 2], 0x49
jne 0x67a294
mov ecx, dword [eax + 0x64]
cmp dword [eax + 0x68], 1
jne 0x67a294
cmp byte [ecx], 0x2a
je 0x679aa9
mov dword [esp + 0xec], 0
lea eax, [0xc84180]
mov dword [esp + 0xf0], eax
lea eax, [0xc757b0]
mov dword [esp + 0xf4], eax
movzx eax, byte [esp + 0x37]
test al, 1
jne 0x67a2ca
add esp, 0xdc
ret
and eax, 0xfffffffe
mov byte [esp + 0x34], al
mov eax, dword [esp + 0xd4]
mov dword [esp], eax
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0069a990
jmp 0x67a2c3
mov eax, dword [esp + 0xe0]
mov eax, dword [eax + 0x24]
mov ecx, dword [eax + 0x18]
test ecx, ecx
setbe cl
mov eax, dword [eax + 0x1c]
test eax, eax
sete al
setl dl
and eax, ecx
or edx, eax
test dl, dl
je 0x67a375
mov eax, dword [0x10e4950]
mov ecx, dword [0x10e4954]
mov dword [esp + 0xec], 0
mov dword [esp + 0xf0], eax
mov dword [esp + 0xf4], ecx
movzx eax, byte [esp + 0x37]
test al, 1
jne 0x67a34d
add esp, 0xdc
ret
and eax, 0xfffffffe
mov byte [esp + 0x34], al
mov eax, dword [esp + 0xd4]
mov dword [esp], eax
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0069a990
jmp 0x67a346
mov dword [esp + 0xec], 0
movzx eax, byte [esp + 0x37]
test al, 1
jne 0x67a391
add esp, 0xdc
ret
and eax, 0xfffffffe
mov byte [esp + 0x34], al
mov eax, dword [esp + 0xd4]
mov dword [esp], eax
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0069a990
jmp 0x67a38a
mov ecx, dword [eax + 0x28]
mov dword [esp], ecx
mov dword [esp + 4], 4
call fcn.0060ae10
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.00683170
mov eax, dword [esp + 0xe0]
mov ecx, dword [eax + 0x28]
mov edx, dword [esp + 0xc]
mov dword [esp], ecx
mov dword [esp + 4], edx
call fcn.0060afe0
mov eax, dword [esp + 0xe0]
jmp 0x679a6a
mov ecx, 0x100000
jmp 0x679a33
mov dword [esp + 0x3c], ecx
mov edi, esp
lea esi, [esp + 0x7c]
call fcn.004612ce
mov dword [esp + 0x14], edx
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x18], eax
call fcn.0048bac0
lea edi, [esp + 0x68]
mov esi, dword [esp + 0x64]
call fcn.004612ce
mov eax, dword [esp + 0xe0]
jmp 0x6799b3
mov edi, esp
mov eax, esi
lea esi, [esp + 0x7c]
call fcn.004612ce
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], eax
call fcn.0048bac0
lea edi, [esp + 0x90]
mov esi, dword [esp + 0x64]
call fcn.004612ce
mov eax, dword [esp + 0xe0]
mov ebp, dword [esp + 0x64]
jmp 0x679991
mov ebx, dword [edx + 0x14]
mov esi, dword [edx + 0x18]
jmp 0x679975
mov eax, dword [0x10e4890]
mov ecx, dword [0x10e4894]
mov dword [esp + 0xec], 0
mov dword [esp + 0xf0], eax
mov dword [esp + 0xf4], ecx
add esp, 0xdc
ret
call fcn.0045f5f0
jmp fcn.006798b0