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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0xc]
cmp eax, dword [ecx + 8]
jbe 0x6a7f8adf
sub esp, 0x8c
mov eax, dword fs:[0x14]
mov eax, dword [eax]
mov dword [esp + 0x80], eax
jmp 0x6a7f7f3d
mov eax, dword [esp + 0x80]
mov ecx, dword [eax + 0x18]
mov ecx, dword [ecx + 0x58]
mov edx, dword [0x6a8ddc90]
test edx, edx
je 0x6a7f7f5b
call fcn.6a7f7cc0
mov eax, dword [esp + 0x80]
jmp 0x6a7f7f3d
mov dword [esp + 0x88], ecx
test byte [ecx], al
mov edx, dword [ecx + 0x1178]
test edx, edx
je 0x6a7f7f7a
call fcn.6a7f66b0
mov ecx, dword [esp + 0x88]
mov dword [esp], ecx
mov dword [esp + 8], 0
mov dword [esp + 4], 0
call fcn.6a7f9c90
mov eax, dword [esp + 0xc]
mov dword [esp + 0x40], eax
movzx ecx, byte [0x6a9031a5]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x38], edx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x34], ebx
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x44], ebp
mov esi, dword [esp + 0x18]
mov dword [esp + 0x3c], esi
test cl, cl
je 0x6a7f8002
movzx ecx, byte [0x6a9031a6]
test cl, cl
je 0x6a7f8002
call fcn.6a7d2250
mov eax, dword [esp]
test eax, eax
je 0x6a7f7fee
mov dword [esp + 4], 0
mov byte [esp + 8], 1
call fcn.6a7f5190
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0x38]
mov ebx, dword [esp + 0x34]
mov ebp, dword [esp + 0x44]
mov esi, dword [esp + 0x3c]
mov ecx, dword [0x6a85243c]
mov ecx, dword [ecx]
test ecx, ecx
je 0x6a7f801e
mov dword [esp], ecx
mov dword [esp + 4], 0
call fcn.6a8170a0
mov eax, dword [esp + 0x88]
mov dword [esp], eax
call fcn.6a7ff9f0
mov eax, dword [esp + 4]
movzx ecx, byte [esp + 8]
test eax, eax
jne 0x6a7f8a71
mov eax, dword [0x6a8ddc58]
test eax, eax
je 0x6a7f8092
nop
lea eax, [0x6a8ddc18]
mov dword [esp], eax
call fcn.6a7c87b0
mov eax, dword [esp + 0x88]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.6a7ff0e0
mov eax, dword [esp + 8]
mov dword [esp + 0x74], eax
nop
nop
lea ecx, [0x6a8ddc18]
mov dword [esp], ecx
call fcn.6a7c89b0
mov eax, dword [esp + 0x74]
test eax, eax
jne 0x6a7f8a5b
lea eax, [0x6a903258]
mov dword [esp], eax
call fcn.6a7c2130
mov eax, dword [esp + 4]
test eax, eax
jne 0x6a7f80ac
xor ecx, ecx
jmp 0x6a7f80e8
lea eax, [0x6a90325c]
mov dword [esp], eax
call fcn.6a7c2130
mov eax, dword [esp + 4]
test eax, eax
ja 0x6a7f80c6
xor ecx, ecx
jmp 0x6a7f80e8
lea eax, [0x6a8ddc08]
mov dword [esp], eax
call fcn.6a7c2360
mov eax, dword [esp + 4]
test eax, eax
setne al
mov ecx, dword [esp + 8]
test ecx, ecx
setne cl
or ecx, eax
test cl, cl
je 0x6a7f8110
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.6a7ebf20
mov eax, dword [esp + 8]
mov dword [esp + 0x4c], eax
test eax, eax
jne 0x6a7f89dd
mov eax, dword [esp + 0x80]
mov ecx, dword [eax + 0x18]
mov edx, dword [0x6a903234]
movzx ecx, byte [ecx + 0x88]
test cl, cl
je 0x6a7f8132
mov ecx, 1
jmp 0x6a7f8176
mov dword [esp + 0x64], edx
lea eax, [0x6a8ddc4c]
mov dword [esp], eax
call fcn.6a7c2130
mov eax, dword [esp + 4]
mov dword [esp + 0x60], eax
lea ecx, [0x6a8ddc48]
mov dword [esp], ecx
call fcn.6a7c2130
mov eax, dword [esp + 0x60]
shl eax, 1
mov ecx, dword [esp + 0x64]
sub ecx, dword [esp + 4]
cmp ecx, eax
seta al
mov ecx, eax
mov eax, dword [esp + 0x80]
test cl, cl
jne 0x6a7f818f
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
mov esi, dword [esp + 0x3c]
mov ebp, dword [esp + 0x34]
jmp 0x6a7f8267
mov ecx, dword [eax + 0x18]
movzx edx, byte [ecx + 0x88]
test dl, dl
jne 0x6a7f81ba
mov byte [ecx + 0x88], 1
lea eax, [0x6a8ddc4c]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.6a7c2280
mov eax, dword [esp + 0x44]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call fcn.6a7f8bf0
mov eax, dword [esp + 8]
movzx ecx, byte [esp + 0x20]
movzx edx, byte [esp + 0xc]
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
mov esi, dword [esp + 0x10]
mov dword [esp + 0x40], esi
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
test eax, eax
jne 0x6a7f89c8
test cl, cl
je 0x6a7f820c
mov eax, dword [esp + 0x80]
jmp 0x6a7f7f3d
mov dword [esp + 0x44], edi
test ebp, ebp
setne al
test ebx, ebx
setne cl
or ecx, eax
test cl, cl
je 0x6a7f8255
mov eax, dword [esp + 0x34]
test eax, eax
sete cl
mov edx, dword [esp + 0x38]
test edx, edx
xchg edi, ebx
sete bl
xchg edi, ebx
and edi, ecx
xchg edi, eax
test al, al
xchg edi, eax
jne 0x6a7f825f
cmp ebp, eax
setb cl
cmp ebx, edx
sete dl
setl bl
and edx, ecx
or ebx, edx
test bl, bl
jne 0x6a7f825f
jmp 0x6a7f8259
mov eax, dword [esp + 0x34]
mov esi, dword [esp + 0x3c]
mov ebp, eax
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x34], ebp
mov dword [esp + 0x40], ecx
mov dword [esp + 0x44], eax
mov edx, dword [0x6a903228]
test edx, edx
jne 0x6a7f8285
xor edx, edx
jmp 0x6a7f82ab
mov eax, dword [esp + 0x88]
mov dword [esp], eax
call fcn.6a7d5b50
movzx eax, byte [esp + 4]
mov ecx, dword [esp + 0x40]
mov ebp, dword [esp + 0x34]
mov esi, dword [esp + 0x3c]
mov edx, eax
mov eax, dword [esp + 0x44]
test dl, dl
je 0x6a7f82c9
lea eax, [0x6a9032d8]
mov dword [esp], eax
call fcn.6a7c86a0
mov eax, dword [esp + 4]
test eax, eax
jne 0x6a7f8956
mov eax, dword [0x6a8dd630]
mov dword [esp + 0x78], eax
mov ecx, dword [0x6a8dd634]
mov dword [esp + 0x58], ecx
mov edx, dword [0x6a8dd638]
mov dword [esp + 0x5c], edx
mov ebx, dword [0x6a8dd660]
mov dword [esp + 0x6c], ebx
mov ebp, dword [0x6a8dd664]
mov dword [esp + 0x50], ebp
mov esi, dword [0x6a8dd668]
mov dword [esp + 0x54], esi
mov edi, dword [0x6a8dd680]
mov dword [esp + 0x68], edi
mov edi, dword [0x6a8dd684]
mov dword [esp + 0x2c], edi
mov edi, dword [0x6a8dd688]
mov dword [esp + 0x30], edi
nop
lea edi, [0x6a8ddc18]
mov dword [esp], edi
call fcn.6a7c87b0
mov eax, dword [0x6a8ddc90]
test eax, eax
jne 0x6a7f834d
mov eax, dword [esp + 0x88]
mov ecx, dword [eax + 0x1178]
test ecx, ecx
je 0x6a7f8369
nop
nop
lea eax, [0x6a8ddc18]
mov dword [esp], eax
call fcn.6a7c89b0
mov eax, dword [esp + 0x80]
jmp 0x6a7f7f3d
mov ecx, dword [0x6a8ddc58]
test ecx, ecx
jne 0x6a7f8914
call fcn.6a7fd520
mov eax, dword [esp + 0x88]
cmp dword [esp], eax
jne 0x6a7f8ac8
mov dword [esp], eax
call fcn.6a7ff380
nop
nop
lea eax, [0x6a8ddc18]
mov dword [esp], eax
call fcn.6a7c89b0
mov eax, dword [esp + 0x80]
mov ecx, dword [eax + 0x18]
movzx edx, byte [ecx + 0x88]
mov byte [esp + 0x2b], dl
test dl, dl
jne 0x6a7f83ca
mov esi, dword [esp + 0x3c]
mov ebp, dword [esp + 0x34]
jmp 0x6a7f84ca
mov byte [ecx + 0x88], 0
lea eax, [0x6a8ddc4c]
mov dword [esp], eax
mov dword [esp + 4], 0xffffffff
call fcn.6a7c2280
mov eax, dword [esp + 8]
test eax, eax
jl 0x6a7f8ab2
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov ecx, dword [esp + 0x58]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x5c]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x6c]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x50]
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x54]
mov dword [esp + 0x14], ebx
call fcn.6a7f90f0
mov eax, dword [esp + 0x18]
test eax, eax
je 0x6a7f846a
mov dword [esp], eax
call fcn.6a7fd3a0
mov eax, dword [esp + 0x80]
mov ecx, dword [eax + 0x18]
mov byte [ecx + 0x88], 1
lea ecx, [0x6a8ddc4c]
mov dword [esp], ecx
mov dword [esp + 4], 1
call fcn.6a7c2280
mov eax, dword [esp + 0x80]
jmp 0x6a7f7f3d
call fcn.6a7f92f0
mov eax, dword [esp]
mov ecx, dword [esp + 4]
test eax, eax
jne 0x6a7f8871
mov eax, dword [esp + 0x78]
mov dword [esp], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x18], eax
call fcn.6a7f91d0
mov ebp, dword [esp + 0x20]
mov esi, dword [esp + 0x24]
mov dword [esp + 0x34], ebp
mov dword [esp + 0x3c], esi
lea eax, [0x6a903258]
mov dword [esp], eax
call fcn.6a7c2130
mov eax, dword [esp + 4]
test eax, eax
jne 0x6a7f84f4
mov eax, dword [esp + 0x34]
mov edx, dword [esp + 0x3c]
xor ecx, ecx
jmp 0x6a7f8560
lea eax, [0x6a90325c]
mov dword [esp], eax
call fcn.6a7c2130
mov eax, dword [esp + 4]
test eax, eax
ja 0x6a7f8522
mov eax, dword [esp + 0x34]
test eax, eax
setne cl
mov edx, dword [esp + 0x3c]
test edx, edx
setne bl
or ebx, ecx
test bl, bl
je 0x6a7f855e
lea eax, [0x6a8ddc08]
mov dword [esp], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0
call fcn.6a7c2300
mov eax, dword [esp + 0x10]
test eax, eax
setne al
mov ecx, dword [esp + 0xc]
test ecx, ecx
setne cl
or ecx, eax
mov eax, dword [esp + 0x34]
mov edx, dword [esp + 0x3c]
jmp 0x6a7f8560
xor ecx, ecx
test cl, cl
jne 0x6a7f85f6
test eax, eax
setne cl
test edx, edx
setne bl
or ebx, ecx
test bl, bl
jne 0x6a7f857c
xor ecx, ecx
jmp 0x6a7f859d
lea eax, [0x6a903258]
mov dword [esp], eax
call fcn.6a7c2130
mov eax, dword [esp + 4]
test eax, eax
setne al
mov edx, dword [esp + 0x3c]
mov ecx, eax
mov eax, dword [esp + 0x34]
test cl, cl
je 0x6a7f8860
lea eax, [0x6a8ddc10]
mov dword [esp], eax
call fcn.6a7c2360
mov eax, dword [esp + 8]
test eax, eax
sete cl
mov edx, dword [esp + 4]
test edx, edx
sete bl
and ebx, ecx
test bl, bl
jne 0x6a7f85ec
mov ecx, dword [esp + 0x34]
cmp ecx, edx
setb cl
mov edx, dword [esp + 0x3c]
cmp edx, eax
setl al
sete dl
and edx, ecx
or edx, eax
test dl, dl
je 0x6a7f8860
call fcn.6a7ebe20
jmp 0x6a7f8860
lea ecx, [0x6a8ddc10]
mov dword [esp], ecx
mov dword [esp + 8], edx
mov dword [esp + 4], eax
call fcn.6a7c2380
mov eax, dword [esp + 0x80]
mov ecx, dword [eax + 0x18]
mov edx, dword [ecx + 0x58]
test edx, edx
jne 0x6a7f8a9c
movzx ecx, byte [ecx + 0x88]
test cl, cl
jne 0x6a7f8a86
mov ecx, dword [esp + 0x3c]
test ecx, ecx
setne dl
mov ebx, dword [esp + 0x34]
test ebx, ebx
xchg ebp, ebx
setne bl
xchg ebp, ebx
or edx, ebp
test dl, dl
je 0x6a7f869c
mov edx, dword [esp + 0x40]
test edx, edx
xchg ebp, ebx
sete bl
xchg ebp, ebx
mov esi, dword [esp + 0x44]
test esi, esi
xchg edi, ebx
sete bl
xchg edi, ebx
and edi, ebp
xchg edi, eax
test al, al
xchg edi, eax
je 0x6a7f868e
nop
call fcn.6a8182b0
mov ecx, dword [esp]
mov eax, dword [esp + 4]
mov ebx, dword [esp + 0x34]
mov esi, eax
mov edx, ecx
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x3c]
sub ebx, edx
sbb ecx, esi
test ecx, ecx
jge 0x6a7f86a6
xor ecx, ecx
xor ebx, ebx
jmp 0x6a7f86a6
mov ecx, 0xffffffff
mov ebx, 0xffffffff
mov edx, dword [0x6a9032d0]
test edx, edx
setne dl
mov ebp, dword [0x6a9032d4]
test ebp, ebp
xchg ebp, ebx
setne bl
xchg ebp, ebx
or ebp, edx
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x6a7f86cc
xor ecx, ecx
xor ebx, ebx
mov dword [esp + 4], ecx
mov dword [esp], ebx
call fcn.6a7ebf20
mov eax, dword [esp + 8]
mov dword [esp + 0x48], eax
lea eax, [0x6a8ddc10]
mov dword [esp], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0
call fcn.6a7c2380
call fcn.6a8182b0
mov eax, dword [esp + 4]
mov ecx, dword [esp]
lea edx, [0x6a8ddc08]
mov dword [esp], edx
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
call fcn.6a7c2380
mov eax, dword [0x6a9032d0]
test eax, eax
setne al
mov ecx, dword [0x6a9032d4]
test ecx, ecx
setne cl
or ecx, eax
test cl, cl
je 0x6a7f8755
mov eax, dword [esp + 0x48]
test eax, eax
jne 0x6a7f8755
call fcn.6a7f7350
mov eax, dword [esp + 0x80]
jmp 0x6a7f7f3d
nop
nop
lea eax, [0x6a8ddc18]
mov dword [esp], eax
call fcn.6a7c87b0
call fcn.6a7ff470
mov eax, dword [esp]
mov dword [esp + 0x7c], eax
nop
nop
lea ecx, [0x6a8ddc18]
mov dword [esp], ecx
call fcn.6a7c89b0
mov eax, dword [esp + 0x7c]
test eax, eax
je 0x6a7f8854
mov dword [esp], eax
call fcn.6a7fd3a0
mov eax, dword [esp + 0x48]
test eax, eax
jne 0x6a7f87d6
movzx eax, byte [esp + 0x2b]
test al, al
je 0x6a7f7f36
mov eax, dword [esp + 0x80]
mov ecx, dword [eax + 0x18]
mov byte [ecx + 0x88], 1
lea ecx, [0x6a8ddc4c]
mov dword [esp], ecx
mov dword [esp + 4], 1
call fcn.6a7c2280
jmp 0x6a7f7f36
nop
nop
mov dword [esp + 0x88], eax
test eax, eax
je 0x6a7f87ea
mov ecx, dword [eax + 0x58]
mov dword [esp + 0x48], ecx
lea eax, [esp + 0x48]
mov dword [esp], eax
call fcn.6a7f95a0
mov eax, dword [esp + 0x88]
mov dword [esp], eax
mov dword [esp + 4], 4
mov dword [esp + 8], 1
call fcn.6a7f5610
movzx eax, byte [0x6a8e7868]
test al, al
je 0x6a7f8837
mov eax, dword [esp + 0x88]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.6a80cfa0
mov eax, dword [esp + 0x88]
mov dword [esp + 0x90], eax
mov byte [esp + 0x94], 0
add esp, 0x8c
ret
lea eax, [esp + 0x48]
mov dword [esp], eax
call fcn.6a7f95a0
call fcn.6a7f7350
mov eax, dword [esp + 0x80]
jmp 0x6a7f7f3d
mov dword [esp + 0x7c], eax
mov dword [esp + 0x84], ecx
call fcn.6a7fd3a0
mov eax, dword [esp + 0x80]
mov eax, dword [eax + 0x18]
mov byte [eax + 0x88], 1
lea eax, [0x6a8ddc4c]
mov dword [esp], eax
mov dword [esp + 4], 1
call fcn.6a7c2280
mov eax, dword [esp + 0x7c]
mov dword [eax + 0x948], 3
mov eax, dword [esp + 0x84]
mov dword [esp], eax
mov dword [esp + 4], 4
mov dword [esp + 8], 1
call fcn.6a7f5610
movzx eax, byte [0x6a8e7868]
test al, al
je 0x6a7f88f7
mov eax, dword [esp + 0x84]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.6a80cfa0
mov eax, dword [esp + 0x84]
mov dword [esp + 0x90], eax
mov byte [esp + 0x94], 0
add esp, 0x8c
ret
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.6a7ff0e0
mov eax, dword [esp + 8]
mov dword [esp + 0x70], eax
nop
nop
lea ecx, [0x6a8ddc18]
mov dword [esp], ecx
call fcn.6a7c89b0
mov eax, dword [esp + 0x70]
mov dword [esp + 0x90], eax
mov byte [esp + 0x94], 0
add esp, 0x8c
ret
mov ecx, dword [esp + 0x88]
mov dword [ecx + 0x948], 3
mov eax, dword [eax + 0xc]
mov dword [esp + 0x88], eax
mov dword [esp], eax
mov dword [esp + 4], 4
mov dword [esp + 8], 1
call fcn.6a7f5610
movzx eax, byte [0x6a8e7868]
test al, al
je 0x6a7f89ab
mov eax, dword [esp + 0x88]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.6a80cfa0
mov eax, dword [esp + 0x88]
mov dword [esp + 0x90], eax
mov byte [esp + 0x94], 0
add esp, 0x8c
ret
mov dword [esp + 0x90], eax
mov byte [esp + 0x94], dl
add esp, 0x8c
ret
nop
nop
mov dword [esp + 0x88], eax
test eax, eax
je 0x6a7f89f1
mov ecx, dword [eax + 0x58]
mov dword [esp + 0x4c], ecx
lea eax, [esp + 0x4c]
mov dword [esp], eax
call fcn.6a7f95a0
mov eax, dword [esp + 0x88]
mov dword [esp], eax
mov dword [esp + 4], 4
mov dword [esp + 8], 1
call fcn.6a7f5610
movzx eax, byte [0x6a8e7868]
test al, al
je 0x6a7f8a3e
mov eax, dword [esp + 0x88]
mov dword [esp], eax
mov dword [esp + 4], 0
call fcn.6a80cfa0
mov eax, dword [esp + 0x88]
mov dword [esp + 0x90], eax
mov byte [esp + 0x94], 0
add esp, 0x8c
ret
mov dword [esp + 0x90], eax
mov byte [esp + 0x94], 0
add esp, 0x8c
ret
mov dword [esp + 0x90], eax
mov byte [esp + 0x94], cl
add esp, 0x8c
ret
lea eax, [0x6a86c44f]
mov dword [esp], eax
mov dword [esp + 4], 0x23
call fcn.6a7f15a0
lea eax, [0x6a86b02a]
mov dword [esp], eax
mov dword [esp + 4], 0x1c
call fcn.6a7f15a0
lea eax, [0x6a86bf77]
mov dword [esp], eax
mov dword [esp + 4], 0x21
call fcn.6a7f15a0
lea eax, [0x6a869302]
mov dword [esp], eax
mov dword [esp + 4], 0x15
call fcn.6a7f15a0
nop
call fcn.6a816010
jmp fcn.6a7f7f00