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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x100171c8
mov eax, dword fs:[0]
push eax
sub esp, 0x58
push ebx
push esi
push edi
mov eax, dword [0x1001d018]
xor eax, esp
push eax
lea eax, [esp + 0x68]
mov dword fs:[0], eax
mov eax, dword [ebp + 0xc]
mov edi, ecx
mov cl, byte [ebp + 0xf]
xor esi, esi
mov byte [esp + 0x14], al
mov al, byte [ebp + 0xe]
mov byte [esp + 0x15], ah
mov byte [esp + 0x16], al
mov byte [esp + 0x17], cl
mov dword [esp + 0x38], esi
mov dword [esp + 0x3c], esi
mov dword [esp + 0x40], esi
push 0x1c
lea edx, [esp + 0x4c]
push edx
mov dword [esp + 0x78], esi
push edi
mov dword [esp + 0x60], 0x1000
call dword [sym.imp.KERNEL32.dll_VirtualQuery]
test eax, eax
je 0x1000804f
mov eax, dword [ebp + 8]
lea ecx, [edi + eax]
mov dword [esp + 0x2c], ecx
cmp edi, dword [esp + 0x2c]
jae 0x1000804f
mov ebx, dword [esp + 0x54]
lea edx, [edi + ebx]
cmp edx, edi
jbe 0x1000804f
cmp dword [esp + 0x58], 0x1000
jne 0x10008031
mov eax, dword [esp + 0x5c]
test eax, 0x100
jne 0x10008031
cmp eax, 1
je 0x10008031
test dword [esp + 0x50], 0x200
jne 0x10008031
mov edx, dword [esp + 0x3c]
mov edi, dword [esp + 0x48]
mov ecx, dword [esp + 0x38]
lea eax, [esp + 0x24]
mov dword [esp + 0x28], 0
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], ebx
cmp eax, edx
jae 0x10007fd4
cmp ecx, eax
ja 0x10007fd4
mov edi, eax
sub edi, ecx
sar edi, 3
cmp edx, esi
jne 0x10007fc2
mov eax, edx
sub eax, ecx
sar eax, 3
cmp eax, 0x1ffffffe
ja 0x10008063
mov ecx, esi
sub ecx, dword [esp + 0x38]
inc eax
sar ecx, 3
cmp eax, ecx
jbe 0x10007fbe
mov edx, ecx
shr edx, 1
mov esi, 0x1fffffff
sub esi, edx
cmp esi, ecx
jae 0x10007fa4
xor ecx, ecx
jmp 0x10007fa6
add ecx, edx
cmp ecx, eax
jae 0x10007fac
mov ecx, eax
push ecx
lea ecx, [esp + 0x3c]
call fcn.10014cd0
mov esi, dword [esp + 0x40]
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
test edx, edx
je 0x1000802a
mov eax, dword [ecx + edi*8]
mov dword [edx], eax
mov ecx, dword [ecx + edi*8 + 4]
mov dword [edx + 4], ecx
jmp 0x1000802a
cmp edx, esi
jne 0x10008021
mov eax, edx
sub eax, ecx
sar eax, 3
cmp eax, 0x1ffffffe
ja 0x10008063
mov ecx, esi
sub ecx, dword [esp + 0x38]
inc eax
sar ecx, 3
cmp eax, ecx
jbe 0x1000801d
mov edx, ecx
shr edx, 1
mov esi, 0x1fffffff
sub esi, edx
cmp esi, ecx
jae 0x10008007
xor ecx, ecx
jmp 0x10008009
add ecx, edx
cmp ecx, eax
jae 0x1000800f
mov ecx, eax
push ecx
lea ecx, [esp + 0x3c]
call fcn.10014cd0
mov esi, dword [esp + 0x40]
mov edx, dword [esp + 0x3c]
test edx, edx
je 0x1000802a
mov dword [edx], edi
mov dword [edx + 4], ebx
add edx, 8
mov dword [esp + 0x3c], edx
mov edi, dword [esp + 0x48]
add edi, dword [esp + 0x54]
push 0x1c
lea ecx, [esp + 0x4c]
push ecx
push edi
call dword [sym.imp.KERNEL32.dll_VirtualQuery]
test eax, eax
jne 0x10007ef1
mov eax, dword [esp + 0x38]
mov dword [esp + 0x2c], eax
cmp eax, dword [esp + 0x3c]
je 0x10008232
jmp 0x10008074
push str.vector_T__too_long
call dword [sym.imp.MSVCP100.dll_void___cdecl_std::_Xlength_error_char_const__]
mov edi, edi
mov eax, dword [esp + 0x2c]
mov edi, dword [eax + 4]
mov esi, dword [eax]
push edi
mov dword [esp + 0x34], esi
mov dword [esp + 0x24], 0
call fcn.100165ee
push edi
mov ebx, eax
push 0
push ebx
mov dword [esp + 0x34], ebx
call sub.MSVCR100.dll_memset
add esp, 0x10
lea edx, [esp + 0x20]
push edx
push edi
push ebx
push esi
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov eax, dword [esp + 0x20]
test eax, eax
jg 0x100080c0
push ebx
jmp 0x10008214
mov edx, dword [esp + 0x24]
lea ecx, [esp + 0x14]
push ecx
push eax
push edx
xor ebx, ebx
call fcn.10002890
add esp, 0xc
cmp eax, 0xffffffff
je 0x1000820b
jmp 0x100080e8
mov esi, dword [esp + 0x30]
mov ebx, dword [esp + 0x18]
add ebx, eax
lea edi, [ebx + esi]
mov esi, dword [ebp + 0x10]
mov eax, dword [esi + 4]
lea ecx, [esp + 0x1c]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], edi
cmp ecx, eax
jae 0x10008166
mov edx, dword [esi]
cmp edx, ecx
ja 0x10008166
mov edi, ecx
mov ecx, dword [esi + 8]
sub edi, edx
sar edi, 2
cmp eax, ecx
jne 0x10008156
sub eax, edx
sar eax, 2
cmp eax, 0x3ffffffe
ja 0x10008063
sub ecx, edx
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x10008156
mov edx, ecx
shr edx, 1
mov ebx, 0x3fffffff
sub ebx, edx
cmp ebx, ecx
jae 0x10008144
xor ecx, ecx
jmp 0x10008146
add ecx, edx
cmp ecx, eax
jae 0x1000814c
mov ecx, eax
push ecx
call fcn.10014c50
mov ebx, dword [esp + 0x18]
mov eax, dword [esi + 4]
test eax, eax
je 0x100081b7
mov edx, dword [esi]
mov ecx, dword [edx + edi*4]
mov dword [eax], ecx
jmp 0x100081b7
mov ecx, dword [esi + 8]
cmp eax, ecx
jne 0x100081ae
mov edx, dword [esi]
sub eax, edx
sar eax, 2
cmp eax, 0x3ffffffe
ja 0x10008063
sub ecx, edx
inc eax
sar ecx, 2
cmp eax, ecx
jbe 0x100081ae
mov edx, ecx
shr edx, 1
mov ebx, 0x3fffffff
sub ebx, edx
cmp ebx, ecx
jae 0x1000819c
xor ecx, ecx
jmp 0x1000819e
add ecx, edx
cmp ecx, eax
jae 0x100081a4
mov ecx, eax
push ecx
call fcn.10014c50
mov ebx, dword [esp + 0x18]
mov eax, dword [esi + 4]
test eax, eax
je 0x100081b7
mov dword [eax], edi
add dword [esi + 4], 4
mov esi, dword [esp + 0x20]
add ebx, 4
sub esi, ebx
sub esi, 4
mov dword [esp + 0x18], ebx
js 0x1000820b
xor edi, edi
test esi, esi
je 0x1000820b
add ebx, dword [esp + 0x24]
xor eax, eax
lea edx, [ebx + edi]
lea esp, [esp]
mov cl, byte [esp + eax + 0x14]
cmp byte [edx + eax], cl
je 0x100081ee
cmp cl, 0x3f
jne 0x100081f4
inc eax
cmp eax, 4
jb 0x100081e0
cmp eax, 4
je 0x10008200
inc edi
cmp edi, esi
jb 0x100081d7
jmp 0x1000820b
mov eax, edi
cmp edi, 0xffffffff
jne 0x100080e0
mov eax, dword [esp + 0x24]
test eax, eax
je 0x1000821d
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete___void__]
add esp, 4
mov eax, dword [esp + 0x2c]
add eax, 8
mov dword [esp + 0x2c], eax
cmp eax, dword [esp + 0x3c]
jne 0x10008070
mov eax, dword [esp + 0x38]
test eax, eax
je 0x10008244
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete_void__]
add esp, 4
mov ecx, dword [esp + 0x68]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret