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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x74
mov edx, dword [eax + 4]
mov ecx, dword [eax]
mov dword [esp + 0x24], edx
mov edx, dword [eax + 8]
push ebx
mov dword [esp + 0x2c], edx
mov edx, dword [eax + 0xc]
push esi
xor esi, esi
push edi
mov edi, dword [eax + 0x10]
mov dword [esp + 0x38], edx
mov edx, dword [eax + 0x14]
mov eax, dword [eax + 0x18]
mov ebx, 1
mov dword [esp + 0x48], ebx
mov dword [esp + 0x60], esi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x58], esi
mov dword [esp + 0x54], esi
mov dword [esp + 0x50], esi
mov dword [esp + 0x4c], esi
mov dword [esp + 0x28], esi
mov dword [esp + 0x24], esi
mov dword [esp + 0x20], esi
mov dword [esp + 0x1c], esi
mov dword [esp + 0x18], esi
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], esi
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x3c], edi
mov dword [esp + 0x40], edx
mov dword [esp + 0x44], eax
mov dword [esp + 0x64], ebx
mov dword [esp + 0x6c], esi
mov dword [esp + 0x68], esi
mov dword [esp + 0x70], 0xffffffff
mov dword [esp + 0x74], 0xffffffff
mov dword [esp + 0x78], 0xffffffff
mov dword [esp + 0x7c], 0xffffffff
test eax, eax
je 0x10080202
mov edi, 0xc0
jmp 0x1008025b
test edx, edx
je 0x1008020f
mov eax, edx
mov edi, 0xa0
jmp 0x1008025b
test edi, edi
je 0x1008021c
mov eax, edi
mov edi, 0x80
jmp 0x1008025b
cmp dword [esp + 0x38], esi
je 0x1008022d
mov eax, dword [esp + 0x38]
mov edi, 0x60
jmp 0x1008025b
cmp dword [esp + 0x34], esi
je 0x1008023e
mov eax, dword [esp + 0x34]
mov edi, 0x40
jmp 0x1008025b
cmp dword [esp + 0x30], esi
je 0x1008024f
mov eax, dword [esp + 0x30]
mov edi, 0x20
jmp 0x1008025b
test ecx, ecx
je 0x100808bd
mov eax, ecx
xor edi, edi
test eax, eax
je 0x100802aa
test eax, 0xffff0000
je 0x1008028b
test eax, 0xff000000
je 0x1008027c
shr eax, 0x18
movsx eax, byte [eax + 0x10098458]
add eax, 0x18
jmp 0x100802a8
shr eax, 0x10
movsx eax, byte [eax + 0x10098458]
add eax, 0x10
jmp 0x100802a8
test eax, 0xff00
je 0x100802a1
shr eax, 8
movsx eax, byte [eax + 0x10098458]
add eax, 8
jmp 0x100802a8
movsx eax, byte [eax + 0x10098458]
add edi, eax
mov edx, 0xe0
cmp edi, 1
je 0x100807e9
jmp 0x100802c0
cmp edx, 1
je 0x100807e9
test cl, 1
jne 0x1008043b
mov edi, dword [esp + 0x58]
mov eax, dword [esp + 0x30]
mov edx, eax
shl edx, 0x1f
shr eax, 1
shr ecx, 1
or ecx, edx
mov edx, dword [esp + 0x34]
shl edx, 0x1f
or edx, eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x30], edx
mov edx, dword [esp + 0x34]
shl eax, 0x1f
shr edx, 1
or eax, edx
mov edx, dword [esp + 0x38]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x3c]
shl eax, 0x1f
shr edx, 1
or eax, edx
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x40]
shl eax, 0x1f
shr edx, 1
or eax, edx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x44]
shr dword [esp + 0x44], 1
shl eax, 0x1f
shr edx, 1
or eax, edx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x40], eax
test bl, 1
jne 0x100803a9
mov eax, dword [esp + 0x4c]
mov edx, eax
shl edx, 0x1f
shr eax, 1
shr ebx, 1
or ebx, edx
mov edx, dword [esp + 0x50]
shl edx, 0x1f
or edx, eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x4c], edx
mov edx, dword [esp + 0x50]
shl eax, 0x1f
shr edx, 1
or eax, edx
mov edx, dword [esp + 0x54]
mov dword [esp + 0x50], eax
mov eax, edi
shl eax, 0x1f
shr edx, 1
or eax, edx
mov dword [esp + 0x54], eax
mov eax, esi
shl eax, 0x1f
shr edi, 1
or edi, eax
mov eax, dword [esp + 0x60]
mov edx, eax
shl edx, 0x1f
shr esi, 1
or esi, edx
mov dword [esp + 0x48], ebx
shr eax, 1
jmp 0x10080426
lea eax, [esp + 0x48]
mov ecx, 0x100e7d78
mov edx, eax
call fcn.1007eaa0
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x48]
mov ebx, ecx
shr edx, 1
shl ebx, 0x1f
or ebx, edx
mov edx, dword [esp + 0x50]
mov esi, edx
shl esi, 0x1f
shr ecx, 1
or esi, ecx
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x4c], esi
mov esi, ecx
shl esi, 0x1f
shr edx, 1
or esi, edx
mov edx, dword [esp + 0x58]
mov dword [esp + 0x50], esi
mov esi, edx
shl esi, 0x1f
shr ecx, 1
or esi, ecx
mov ecx, dword [esp + 0x5c]
mov edi, ecx
shr edx, 1
shl edi, 0x1f
or edi, edx
mov edx, dword [esp + 0x60]
mov dword [esp + 0x54], esi
mov esi, edx
shr ecx, 1
shl esi, 0x1f
or esi, ecx
mov ecx, dword [esp + 0x2c]
shl eax, 0x1f
shr edx, 1
mov dword [esp + 0x48], ebx
or eax, edx
mov dword [esp + 0x60], eax
mov dword [esp + 0x5c], esi
mov dword [esp + 0x58], edi
test cl, 1
je 0x100802d6
test byte [esp + 0x64], 1
jne 0x100805d3
mov edi, dword [esp + 0x74]
mov ecx, dword [esp + 0x78]
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x64]
shl eax, 0x1f
shr edx, 1
or eax, edx
mov edx, dword [esp + 0x68]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x6c]
shl eax, 0x1f
shr edx, 1
or eax, edx
mov edx, dword [esp + 0x6c]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x70]
shl eax, 0x1f
shr edx, 1
or eax, edx
mov edx, dword [esp + 0x70]
mov dword [esp + 0x6c], eax
mov eax, edi
shl eax, 0x1f
shr edx, 1
or eax, edx
mov dword [esp + 0x70], eax
mov eax, ecx
shl eax, 0x1f
shr edi, 1
or edi, eax
mov eax, dword [esp + 0x7c]
mov edx, eax
shr eax, 1
shl edx, 0x1f
shr ecx, 1
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x10]
or ecx, edx
mov dword [esp + 0x74], edi
mov dword [esp + 0x78], ecx
test al, 1
jne 0x1008053b
mov edx, dword [esp + 0x14]
shr eax, 1
shl edx, 0x1f
or edx, eax
mov eax, dword [esp + 0x18]
shl eax, 0x1f
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x14]
shr edx, 1
or eax, edx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x1c]
shl eax, 0x1f
shr edx, 1
or eax, edx
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x20]
shl eax, 0x1f
shr edx, 1
or eax, edx
mov edx, dword [esp + 0x20]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x24]
shl eax, 0x1f
shr edx, 1
or eax, edx
mov edx, dword [esp + 0x24]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x28]
shl eax, 0x1f
shr edx, 1
or eax, edx
shr dword [esp + 0x28], 1
mov dword [esp + 0x24], eax
jmp 0x100805c8
lea eax, [esp + 0x10]
mov ecx, 0x100e7d78
mov edx, eax
call fcn.1007eaa0
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov edi, ecx
shl edi, 0x1f
shr edx, 1
or edi, edx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x10], edi
mov edi, edx
shl edi, 0x1f
shr ecx, 1
or edi, ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x14], edi
mov edi, ecx
shl edi, 0x1f
shr edx, 1
or edi, edx
mov edx, dword [esp + 0x20]
mov dword [esp + 0x18], edi
mov edi, edx
shl edi, 0x1f
shr ecx, 1
or edi, ecx
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x1c], edi
mov edi, ecx
shl edi, 0x1f
shr edx, 1
or edi, edx
mov edx, dword [esp + 0x28]
mov dword [esp + 0x20], edi
mov edi, edx
shl edi, 0x1f
shr ecx, 1
or edi, ecx
mov ecx, dword [esp + 0x78]
shl eax, 0x1f
shr edx, 1
or eax, edx
mov dword [esp + 0x24], edi
mov edi, dword [esp + 0x74]
mov dword [esp + 0x28], eax
test byte [esp + 0x64], 1
je 0x1008044e
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x7c]
cmp ecx, eax
jne 0x100805f7
xor eax, eax
mov ecx, dword [esp + eax + 0x40]
mov edx, dword [esp + eax + 0x78]
cmp edx, ecx
jne 0x100805f7
sub eax, 4
cmp eax, 0xffffffec
jge 0x100805e1
jmp 0x10080601
sbb eax, eax
and eax, 2
dec eax
test eax, eax
jl 0x1008064b
lea eax, [esp + 0x2c]
lea edx, [esp + 0x64]
mov edi, eax
call fcn.1007eba0
lea eax, [esp + 0x48]
lea edx, [esp + 0x10]
mov edi, eax
call fcn.1007eba0
test eax, eax
je 0x10080631
mov ecx, 0x100e7d78
mov eax, edi
mov edx, edi
call fcn.1007eaa0
mov ebx, dword [esp + 0x48]
mov esi, dword [esp + 0x5c]
mov eax, dword [esp + 0x44]
test eax, eax
je 0x1008067d
mov ecx, 0xc0
jmp 0x100806d6
lea eax, [esp + 0x64]
lea edx, [esp + 0x2c]
mov edi, eax
call fcn.1007eba0
lea eax, [esp + 0x10]
lea edx, [esp + 0x48]
mov edi, eax
call fcn.1007eba0
test eax, eax
je 0x10080639
mov ecx, 0x100e7d78
mov eax, edi
mov edx, edi
call fcn.1007eaa0
jmp 0x10080639
mov eax, dword [esp + 0x40]
test eax, eax
je 0x1008068c
mov ecx, 0xa0
jmp 0x100806d6
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x1008069b
mov ecx, 0x80
jmp 0x100806d6
mov eax, dword [esp + 0x38]
test eax, eax
je 0x100806aa
mov ecx, 0x60
jmp 0x100806d6
mov eax, dword [esp + 0x34]
test eax, eax
je 0x100806b9
mov ecx, 0x40
jmp 0x100806d6
mov eax, dword [esp + 0x30]
test eax, eax
je 0x100806c8
mov ecx, 0x20
jmp 0x100806d6
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x100808bd
xor ecx, ecx
test eax, eax
je 0x10080725
test eax, 0xffff0000
je 0x10080706
test eax, 0xff000000
je 0x100806f7
shr eax, 0x18
movsx eax, byte [eax + 0x10098458]
add eax, 0x18
jmp 0x10080723
shr eax, 0x10
movsx eax, byte [eax + 0x10098458]
add eax, 0x10
jmp 0x10080723
test eax, 0xff00
je 0x1008071c
shr eax, 8
movsx eax, byte [eax + 0x10098458]
add eax, 8
jmp 0x10080723
movsx eax, byte [eax + 0x10098458]
add ecx, eax
mov eax, dword [esp + 0x7c]
test eax, eax
je 0x10080734
mov edx, 0xc0
jmp 0x1008078d
mov eax, dword [esp + 0x78]
test eax, eax
je 0x10080743
mov edx, 0xa0
jmp 0x1008078d
mov eax, dword [esp + 0x74]
test eax, eax
je 0x10080752
mov edx, 0x80
jmp 0x1008078d
mov eax, dword [esp + 0x70]
test eax, eax
je 0x10080761
mov edx, 0x60
jmp 0x1008078d
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x10080770
mov edx, 0x40
jmp 0x1008078d
mov eax, dword [esp + 0x68]
test eax, eax
je 0x1008077f
mov edx, 0x20
jmp 0x1008078d
mov eax, dword [esp + 0x64]
test eax, eax
je 0x100808bd
xor edx, edx
test eax, eax
je 0x100807dc
test eax, 0xffff0000
je 0x100807bd
test eax, 0xff000000
je 0x100807ae
shr eax, 0x18
movsx eax, byte [eax + 0x10098458]
add eax, 0x18
jmp 0x100807da
shr eax, 0x10
movsx eax, byte [eax + 0x10098458]
add eax, 0x10
jmp 0x100807da
test eax, 0xff00
je 0x100807d3
shr eax, 8
movsx eax, byte [eax + 0x10098458]
add eax, 8
jmp 0x100807da
movsx eax, byte [eax + 0x10098458]
add edx, eax
cmp ecx, 1
mov ecx, dword [esp + 0x2c]
jne 0x100802c0
mov eax, dword [esp + 0x44]
test eax, eax
je 0x100807f8
mov ecx, 0xc0
jmp 0x1008084b
mov eax, dword [esp + 0x40]
test eax, eax
je 0x10080807
mov ecx, 0xa0
jmp 0x1008084b
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x10080816
mov ecx, 0x80
jmp 0x1008084b
mov eax, dword [esp + 0x38]
test eax, eax
je 0x10080825
mov ecx, 0x60
jmp 0x1008084b
mov eax, dword [esp + 0x34]
test eax, eax
je 0x10080834
mov ecx, 0x40
jmp 0x1008084b
mov eax, dword [esp + 0x30]
test eax, eax
je 0x10080843
mov ecx, 0x20
jmp 0x1008084b
test ecx, ecx
je 0x100808bd
mov eax, ecx
xor ecx, ecx
test eax, eax
je 0x10080856
call fcn.10049f70
add ecx, eax
mov eax, dword [ebp + 8]
cmp ecx, 1
jne 0x1008088d
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x50]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x54]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x58]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x60]
mov dword [eax], ebx
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], esi
mov dword [eax + 0x18], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [eax], edx
mov edx, dword [esp + 0x18]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x1c]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x20]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x24]
mov dword [eax + 0x10], edx
mov edx, dword [esp + 0x28]
mov dword [eax + 0x14], ecx
mov dword [eax + 0x18], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret