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

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x10091f10
push eax
mov ecx, dword [esp + 0x1c]
mov dword fs:[0], esp
sub esp, 0x28
push ebx
push ebp
xor ebp, ebp
push esi
cmp ecx, ebp
push edi
je 0x1007fb97
jmp 0x1007f7a2
mov ecx, dword [esp + 0x54]
xor ebp, ebp
mov eax, dword [esp + 0x58]
cmp eax, ebp
je 0x1007fb97
lea edx, [ecx + eax]
cmp edx, 2
je 0x1007f968
mov esi, dword [esp + 0x5c]
cmp ecx, eax
jg 0x1007f7ce
mov edx, dword [esi + 0x10]
cmp ecx, dword [edx + 0xc]
jle 0x1007f9c1
mov edx, dword [esi + 0x10]
cmp eax, dword [edx + 0xc]
jle 0x1007fa98
cmp eax, ecx
jge 0x1007f86d
mov eax, ecx
mov ebp, dword [esp + 0x48]
cdq
sub eax, edx
lea ecx, [esp + 0x14]
mov ebx, eax
sar ebx, 1
mov edi, ebx
shl edi, 4
add edi, ebp
push edi
call fcn.10075ce0
mov dword [esp + 0x14], 0x100949f0
mov dword [esp + 0x1c], 0x100949ec
mov dword [esp + 0x20], 0x100949e8
mov eax, dword [esp + 0x60]
mov edx, dword [esp + 0x50]
push 0
lea ecx, [esp + 0x18]
push eax
mov eax, dword [esp + 0x54]
push ecx
push edx
push eax
mov dword [esp + 0x54], 0
call fcn.10083170
mov ecx, dword [esp + 0x2c]
add esp, 0x14
test ecx, ecx
mov esi, eax
mov dword [esp + 0x40], 0xffffffff
mov dword [esp + 0x14], 0x100949f4
je 0x1007f85d
call fcn.10052e70
mov ecx, dword [esp + 0x4c]
mov ebp, esi
sub ebp, ecx
sar ebp, 4
jmp 0x1007f8ed
cdq
sub eax, edx
mov edi, dword [esp + 0x4c]
mov ebp, eax
lea ecx, [esp + 0x24]
sar ebp, 1
mov esi, ebp
shl esi, 4
add esi, edi
push esi
call fcn.10075ce0
mov dword [esp + 0x24], 0x100949f0
mov dword [esp + 0x2c], 0x100949ec
mov dword [esp + 0x30], 0x100949e8
mov ecx, dword [esp + 0x60]
mov eax, dword [esp + 0x48]
push 0
lea edx, [esp + 0x28]
push ecx
push edx
push edi
push eax
mov dword [esp + 0x54], 1
call fcn.10083210
mov ecx, dword [esp + 0x3c]
add esp, 0x14
test ecx, ecx
mov edi, eax
mov dword [esp + 0x40], 0xffffffff
mov dword [esp + 0x24], 0x100949f4
je 0x1007f8e2
call fcn.10052e70
mov ecx, dword [esp + 0x48]
mov ebx, edi
sub ebx, ecx
sar ebx, 4
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x4c]
sub eax, ebx
push ecx
push ebp
push eax
push esi
push edx
push edi
mov dword [esp + 0x6c], eax
call fcn.10081980
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x74]
push ecx
push edx
push ebp
push ebx
mov dword [esp + 0x38], eax
push eax
mov eax, dword [esp + 0x74]
push edi
push eax
call fcn.1007f770
mov edx, dword [esp + 0x8c]
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x44]
add esp, 0x34
sub edx, ebp
mov dword [esp + 0x54], eax
test eax, eax
mov dword [esp + 0x58], edx
mov dword [esp + 0x4c], esi
mov dword [esp + 0x48], ecx
jne 0x1007f79c
mov ecx, dword [esp + 0x38]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x34
ret
mov edx, dword [esp + 0x48]
mov eax, dword [edx + 4]
cmp eax, ebp
jne 0x1007f977
xor ecx, ecx
jmp 0x1007f97a
mov ecx, dword [eax + 8]
call fcn.10087270
mov ebx, dword [esp + 0x4c]
cdq
mov edi, eax
mov eax, dword [ebx + 4]
cmp eax, ebp
mov esi, edx
jne 0x1007f993
xor eax, eax
jmp 0x1007f996
mov eax, dword [eax + 8]
mov ecx, eax
call fcn.10087270
cdq
cmp edx, esi
jg 0x1007fb97
jl 0x1007f9b0
cmp eax, edi
jae 0x1007fb97
mov eax, dword [esp + 0x48]
push ebp
push ebx
push eax
call fcn.10083060
jmp 0x1007fb94
mov ecx, esi
call fcn.10080280
mov ebx, dword [esp + 0x4c]
sub esp, 0x14
mov ecx, esp
mov dword [esp + 0x70], esp
push ebx
mov dword [ecx], ebp
mov dword [ecx + 4], ebp
mov dword [ecx + 8], ebp
mov dword [ecx + 0xc], ebp
mov edx, dword [eax + 0x10]
mov eax, dword [esp + 0x60]
mov dword [ecx + 0x10], edx
lea ecx, [esp + 0x3c]
push eax
push ecx
call fcn.100817c0
mov edi, dword [esp + 0x44]
add esp, 0x20
cmp edi, ebp
je 0x1007fa26
cmp edi, dword [esp + 0x2c]
je 0x1007fa1d
mov edx, dword [edi]
push ebp
mov ecx, edi
call dword [edx]
mov eax, dword [esp + 0x2c]
add edi, 0x10
cmp edi, eax
jne 0x1007fa07
mov edi, dword [esp + 0x24]
push edi
call fcn.10088e50
add esp, 4
mov esi, dword [esi + 0x10]
mov al, byte [esp + 0x60]
mov edi, dword [esp + 0x48]
mov byte [esp + 0x4c], al
mov ebp, dword [esi + 4]
mov esi, dword [esi]
cmp esi, ebp
je 0x1007fa6e
cmp ebx, dword [esp + 0x50]
je 0x1007fa6e
push esi
push ebx
lea ecx, [esp + 0x54]
call fcn.1007e350
test al, al
je 0x1007fa5a
mov eax, ebx
add ebx, 0x10
jmp 0x1007fa5f
mov eax, esi
add esi, 0x10
push eax
mov ecx, edi
call fcn.1007bf70
add edi, 0x10
cmp esi, ebp
jne 0x1007fa3e
push edi
push ebp
push esi
call fcn.10052470
mov ecx, dword [esp + 0x5c]
push eax
push ecx
push ebx
call fcn.10052470
add esp, 0x18
mov ecx, dword [esp + 0x38]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x34
ret
mov ecx, esi
call fcn.10080280
mov ebx, dword [esp + 0x50]
sub esp, 0x14
mov ecx, esp
mov dword [esp + 0x70], esp
push ebx
mov dword [ecx], ebp
mov dword [ecx + 4], ebp
mov dword [ecx + 8], ebp
mov dword [ecx + 0xc], ebp
mov edx, dword [eax + 0x10]
mov ebp, dword [esp + 0x64]
lea eax, [esp + 0x3c]
push ebp
push eax
mov dword [ecx + 0x10], edx
call fcn.100817c0
mov edi, dword [esp + 0x44]
add esp, 0x20
test edi, edi
je 0x1007fafe
cmp edi, dword [esp + 0x2c]
je 0x1007faf5
mov edx, dword [edi]
push 0
mov ecx, edi
call dword [edx]
mov eax, dword [esp + 0x2c]
add edi, 0x10
cmp edi, eax
jne 0x1007fade
mov edi, dword [esp + 0x24]
push edi
call fcn.10088e50
add esp, 4
mov esi, dword [esi + 0x10]
mov cl, byte [esp + 0x60]
mov byte [esp + 0x60], cl
mov edi, ebp
mov eax, dword [esi]
mov esi, dword [esi + 4]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x48]
cmp eax, ebp
je 0x1007fb5b
cmp dword [esp + 0x4c], esi
je 0x1007fb88
sub edi, 0x10
sub esi, 0x10
push edi
push esi
lea ecx, [esp + 0x68]
call fcn.1007e350
test al, al
je 0x1007fb47
sub ebx, 0x10
push edi
mov ecx, ebx
call fcn.1007bf70
add esi, 0x10
jmp 0x1007fb55
sub ebx, 0x10
push esi
mov ecx, ebx
call fcn.1007bf70
add edi, 0x10
cmp dword [esp + 0x48], edi
jne 0x1007fb1c
cmp dword [esp + 0x4c], esi
je 0x1007fb97
sub ebx, esi
sub esi, 0x10
push esi
lea ecx, [ebx + esi]
call fcn.1007bf70
cmp esi, dword [esp + 0x4c]
jne 0x1007fb63
mov ecx, dword [esp + 0x38]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x34
ret
mov edx, dword [esp + 0x48]
push ebx
push edi
push edx
call fcn.10053240
add esp, 0xc
mov ecx, dword [esp + 0x38]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x34
ret