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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xd0
mov eax, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [eax + 8]
lea edx, [esp + 0x30]
mov dword [esp + 0x14], eax
push eax
mov dword [esp + 0x10], ecx
push ecx
push edx
call fcn.1001add0
add esp, 0xc
mov esi, dword [esp + 0x30]
mov ebx, dword [esp + 0x38]
lea eax, [esp + 0x70]
push dword [edi + 0x3c]
push dword [edi + 0x34]
push eax
call fcn.1001add0
add esp, 0xc
mov edi, dword [esp + 0x70]
cmp ebx, dword [esp + 0x78]
jne 0x1018448f
push ebx
push edi
push esi
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
sete bl
cmp dword [esp + 0x74], 0
jne 0x10184498
jmp 0x101844a7
xor ebx, ebx
cmp dword [esp + 0x74], 0
je 0x101844a7
mov eax, dword [0x1035648c]
push edi
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
cmp dword [esp + 0x34], 0
je 0x101844bd
mov eax, dword [0x1035648c]
push esi
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [ebp + 8]
test bl, bl
jne 0x10184655
cmp byte [eax + 0x4c], 0
je 0x101845b7
mov esi, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
lea ebx, [esp + 0x30]
mov dword [esp + 0x10], ebx
shl eax, 2
lea edi, [eax + eax*2]
jmp 0x10184501
add esi, 0xc
add edi, 0xfffffff4
cmp byte [esp + 8], 0
jne 0x10184655
test edi, edi
je 0x101845b7
push dword [esp + 0x14]
push dword [esp + 0x10]
push ebx
call fcn.1001add0
add esp, 0xc
mov eax, dword [esp + 0x30]
mov ebx, dword [esp + 0x38]
mov dword [esp + 4], eax
push dword [esi + 8]
push dword [esi]
lea eax, [esp + 0x78]
push eax
call fcn.1001add0
add esp, 0xc
mov eax, dword [esp + 0x70]
cmp ebx, dword [esp + 0x78]
mov dword [esp + 0x24], eax
jne 0x10184570
push ebx
push eax
push dword [esp + 0xc]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
sete al
mov dword [esp + 8], eax
cmp dword [esp + 0x74], 0
lea ebx, [esp + 0x30]
jne 0x10184583
jmp 0x10184595
mov dword [esp + 8], 0
cmp dword [esp + 0x74], 0
lea ebx, [esp + 0x30]
je 0x10184595
push dword [esp + 0x24]
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
cmp dword [esp + 0x34], 0
je 0x101844f0
push dword [esp + 4]
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x101844f0
mov eax, dword [ebp + 8]
mov dword [esp + 0x70], 0x1034ebb8
mov dword [esp + 0x74], 1
mov dword [esp + 0x80], 0
add eax, 0x40
mov dword [esp + 0x18], eax
mov dword [esp + 4], eax
lea eax, [esp + 0x18]
mov dword [esp + 0x1c], 0x10183d90
mov dword [esp + 0x78], eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x7c], 1
lea ecx, [esp + 0x30]
lea eax, [esp + 0x70]
push eax
push ecx
call fcn.1001ac00
add esp, 8
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x30]
mov edi, dword [esp + 0x34]
sub ecx, eax
jae 0x1018462a
xor ebx, ebx
test edi, edi
jne 0x10184642
jmp 0x10184651
add ecx, dword [esp + 0xc]
push eax
push ecx
push esi
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
sete bl
test edi, edi
je 0x10184651
mov eax, dword [0x1035648c]
push esi
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
test bl, bl
je 0x10184661
xor edx, edx
mov eax, edx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [esp + 4]
mov dword [esp + 0x70], 0x1034ebc0
mov dword [esp + 0x74], 2
mov dword [esp + 0x80], 0
mov dword [esp + 0x30], eax
lea eax, [esp + 0x30]
mov dword [esp + 0x34], 0x10183d90
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], 1
lea eax, [esp + 0x70]
push eax
lea eax, [esp + 0x1c]
push eax
call fcn.1001ac00
add esp, 8
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
test eax, eax
mov dword [esp + 8], ecx
je 0x101846f4
mov edx, dword [esp + 0x14]
cmp eax, edx
jae 0x101846f8
cmp eax, 1
jne 0x1018470c
movzx ecx, byte [ecx]
cmp edx, 7
ja 0x1018473e
mov edi, dword [esp + 0xc]
lea esi, [edx - 1]
nop word [eax + eax]
sub esi, 1
setb al
cmp byte [edi], cl
sete bl
je 0x10184755
inc edi
test al, al
je 0x101846e0
jmp 0x10184755
mov bl, 1
jmp 0x10184755
jne 0x1018473a
push edx
push dword [esp + 0x10]
push ecx
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
jmp 0x10184752
push eax
push ecx
push edx
push dword [esp + 0x18]
lea eax, [esp + 0x80]
push eax
call fcn.1002a920
add esp, 0x14
lea ecx, [esp + 0x30]
lea edx, [esp + 0x70]
call fcn.10183f80
cmp dword [esp + 0x30], 0
setne bl
jmp 0x10184755
xor ebx, ebx
jmp 0x10184755
movzx eax, cl
push edx
push dword [esp + 0x10]
push eax
call fcn.10029f60
add esp, 0xc
cmp eax, 1
sete bl
cmp dword [esp + 0x1c], 0
je 0x1018476e
mov eax, dword [0x1035648c]
push dword [esp + 8]
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov ecx, dword [ebp + 8]
mov esi, dword [esp + 0x14]
mov edx, dword [ecx]
test edx, edx
setne al
test bl, al
je 0x101849c4
mov eax, dword [esp + 4]
mov dword [esp + 0x30], 0x1034ebc0
mov dword [esp + 0x34], 2
mov dword [esp + 8], edx
mov dword [esp + 0x40], 0
mov dword [esp + 0x28], eax
lea eax, [esp + 0x28]
mov dword [esp + 0x2c], 0x10183d90
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], 1
lea eax, [esp + 0x18]
lea edi, [esp + 0x30]
push edi
mov dword [esp + 0x14], eax
push eax
call fcn.1001ac00
add esp, 8
mov eax, dword [esp + 0x18]
push dword [esp + 0x20]
mov dword [esp + 8], eax
push eax
push esi
push dword [esp + 0x18]
push edi
call fcn.1002a920
add esp, 0x14
movsd xmm1, qword [esp + 0x60]
movsd xmm2, qword [esp + 0x58]
movsd xmm0, qword [esp + 0x68]
xor edi, edi
movsd qword [esp + 0xa0], xmm1
movsd xmm1, qword [esp + 0x50]
movsd qword [esp + 0x98], xmm2
movsd xmm2, qword [esp + 0x48]
movsd qword [esp + 0xa8], xmm0
movsd qword [esp + 0x90], xmm1
movsd xmm1, qword [esp + 0x40]
movsd qword [esp + 0x88], xmm2
movsd xmm2, qword [esp + 0x30]
movsd qword [esp + 0x80], xmm1
movsd xmm1, qword [esp + 0x38]
movsd qword [esp + 0x70], xmm2
movsd qword [esp + 0x78], xmm1
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], esi
mov word [esp + 0xb8], 1
nop word cs:[eax + eax]
nop dword [eax + eax]
mov esi, dword [esp + 0xa0]
lea ecx, [esp + 0x30]
lea edx, [esp + 0x70]
call fcn.10183f80
cmp dword [esp + 0x30], 0
je 0x101848d5
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0xb0]
mov ebx, dword [esp + 0x34]
mov dword [esp + 0xb0], eax
add esi, ecx
sub ebx, ecx
cmp byte [esp + 0xb9], 0
mov edi, esi
je 0x10184890
mov edi, esi
jmp 0x1018490b
cmp byte [esp + 0xb9], 0
jne 0x10184903
cmp byte [esp + 0xb8], 0
mov esi, dword [esp + 0xb0]
mov eax, dword [esp + 0xb4]
jne 0x1018498c
cmp eax, esi
jne 0x1018498c
test edi, edi
je 0x101849a8
xor edx, edx
test ebx, ebx
mov dword [esp + 0x28], edi
mov dword [esp + 0x2c], ebx
je 0x1018499e
movzx eax, byte [edi]
cmp eax, 0x2d
je 0x10184930
cmp eax, 0x2b
jne 0x10184935
dec ebx
je 0x1018499e
inc edi
jmp 0x10184935
cmp ebx, 1
je 0x1018499e
cmp ebx, 9
jae 0x10184957
xor edx, edx
nop dword [eax]
movzx eax, byte [edi]
add eax, 0xffffffd0
cmp eax, 9
ja 0x10184988
lea ecx, [edx + edx*4]
inc edi
dec ebx
lea edx, [eax + ecx*2]
jne 0x10184940
jmp 0x1018499e
xor eax, eax
test ebx, ebx
je 0x1018499c
movzx esi, byte [edi]
mov edx, 0xa
mul edx
seto dl
add esi, 0xffffffd0
cmp esi, 0xa
cmovb ecx, esi
jae 0x10184988
test dl, dl
jne 0x10184988
inc edi
dec ebx
add eax, ecx
mov ecx, esi
mov edx, 0
jae 0x10184959
jmp 0x1018499e
xor edx, edx
jmp 0x1018499e
sub eax, esi
add esi, dword [esp + 0xa0]
mov ebx, eax
jmp 0x101848d1
mov edx, eax
cmp edx, dword [esp + 8]
jae 0x10184b6f
cmp dword [esp + 0x1c], 0
je 0x101849c1
mov eax, dword [0x1035648c]
push dword [esp + 4]
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
mov ecx, dword [ebp + 8]
cmp byte [ecx + 0x4e], 0
mov dl, 1
je 0x10184657
mov eax, dword [ecx + 0x30]
test eax, eax
je 0x10184657
mov esi, dword [ecx + 0x28]
lea eax, [eax + eax*2]
lea edi, [eax*4 - 0xc]
lea eax, [esp + 0x18]
mov dword [esp + 0x10], eax
jmp 0x10184a20
mov edx, dword [esp + 0xc0]
add esi, 0xc
test edi, edi
sete al
add edi, 0xfffffff4
or al, dl
cmp al, 1
lea eax, [esp + 0x18]
je 0x10184b67
mov dword [esp + 0x24], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc8], esi
push dword [esp + 0x14]
push dword [esp + 0x10]
push eax
call fcn.1001add0
add esp, 0xc
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 0x20]
mov dword [esp + 0x70], 0x1034ebb8
mov dword [esp + 0x74], 1
mov dword [esp + 0x80], 0
mov dword [esp + 4], eax
lea eax, [esp + 0xc8]
mov dword [esp + 0x28], eax
lea eax, [esp + 0x28]
mov dword [esp + 0x2c], 0x10180f60
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], 1
lea eax, [esp + 0x70]
push eax
lea esi, [esp + 0x34]
push esi
call fcn.1001ac00
add esp, 8
movsd xmm0, qword [esp + 0x30]
mov eax, dword [esp + 0x38]
movsd qword [esp + 0x70], xmm0
mov dword [esp + 0x78], eax
mov ebx, dword [esp + 0x70]
push eax
push ebx
push esi
call fcn.1001add0
add esp, 0xc
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x30]
sub edi, eax
mov dword [esp + 0xc4], ecx
jae 0x10184af0
mov dword [esp + 0xc0], 0
mov esi, dword [esp + 8]
mov edi, dword [esp + 0x24]
cmp dword [esp + 0x34], 0
jne 0x10184b1a
jmp 0x10184b2f
add edi, dword [esp + 4]
push eax
push edi
push ecx
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
sete al
mov dword [esp + 0xc0], eax
mov esi, dword [esp + 8]
mov edi, dword [esp + 0x24]
cmp dword [esp + 0x34], 0
je 0x10184b2f
push dword [esp + 0xc4]
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
cmp dword [esp + 0x74], 0
je 0x10184b45
push ebx
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
cmp dword [esp + 0x1c], 0
je 0x10184a00
push dword [esp + 4]
push 0
mov eax, dword [0x1035648c]
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x10184a00
xor dl, 1
jmp 0x10184657
lea eax, [esp + 0x28]
mov dword [esp + 0x70], 0x1034ebfc
mov dword [esp + 0x74], 2
mov dword [esp + 0x80], 0
mov dword [esp + 0x30], eax
mov eax, dword [ebp + 8]
mov dword [esp + 0x34], 0x10180f80
mov dword [esp + 0x38], eax
lea eax, [esp + 0x30]
mov dword [esp + 0x3c], 0x1002d590
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], 2
lea eax, [esp + 0x70]
push eax
call fcn.1005f950
add esp, 4
cmp dword [esp + 0x1c], 0
je 0x10184655
mov eax, dword [0x1035648c]
push dword [esp + 4]
push 0
push dword [eax]
call sub.KERNEL32.dll_HeapFree
jmp 0x10184655