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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x280
mov esi, esp
mov dword [esi + 0x268], ebp
mov dword [esi + 0x26c], esp
mov dword [esi + 0x278], 0xffffffff
mov dword [esi + 0x274], 0x1008cb70
lea eax, [esi + 0x270]
mov ecx, dword fs:[0]
mov dword [esi + 0x270], ecx
mov dword fs:[0], eax
mov eax, dword [0x1027132c]
mov eax, dword [eax]
test eax, eax
je 0x1008c221
lea eax, [esi + 0x48]
mov dword [esi + 0x48], 2
mov dword [esi + 0x58], 0
mov dword [esi + 0xc], eax
mov eax, dword [ebp + 0xc]
lea ecx, [eax + 0xd0]
add eax, 0x1e8
mov dword [esi + 8], ecx
mov dword [esi + 0x68], eax
nop word cs:[eax + eax]
nop dword [eax + eax]
mov eax, dword [0x1027132c]
mov eax, dword [eax]
test eax, eax
je 0x1008c010
mov dword [esi + 0x278], 1
push dword [ebp + 0x10]
push dword [esi + 8]
lea eax, [esi + 0x1cc]
push eax
call fcn.100c0a90
add esp, 0xc
mov eax, dword [esi + 0x1cc]
cmp eax, 2
je 0x1008c2ac
test eax, eax
je 0x1008c2c1
mov ecx, dword [esi + 0x1d0]
mov edi, dword [esi + 0x1d4]
mov eax, dword [esi + 0x1d8]
test ecx, ecx
je 0x1008c2d6
mov dword [esi + 0x70], ecx
mov dword [esi + 0x78], eax
mov eax, dword [esi + 0x1dc]
mov dword [esi + 0x74], edi
mov dword [esi + 0x7c], eax
mov eax, dword [0x1027132c]
mov eax, dword [eax]
test eax, eax
je 0x1008c120
mov edi, dword [ebp + 0xc]
movsd xmm0, qword [esi + 0x70]
movsd xmm1, qword [esi + 0x78]
lea edx, [esi + 0x10]
mov byte [esi + 7], 0
mov dword [esi + 0x278], 2
mov eax, dword [edi + 0x21c]
mov ecx, dword [edi + 0x220]
movsd qword [esi + 0x18], xmm1
movsd qword [esi + 0x10], xmm0
push edx
push edi
push ecx
push eax
push dword [esi + 0x68]
lea eax, [esi + 0x110]
push eax
call fcn.10121730
add esp, 0x18
movzx ebx, byte [esi + 0x110]
cmp bl, 0xa
je 0x1008c353
lea ecx, [esi + 0x114]
mov eax, dword [ecx + 0x14]
movsd xmm2, qword [ecx - 3]
movsd xmm1, qword [ecx + 5]
movsd xmm0, qword [ecx + 0xd]
mov dword [esi + 0x97], eax
movsd qword [esi + 0x90], xmm0
movsd qword [esi + 0x88], xmm1
movsd qword [esi + 0x80], xmm2
push 0x9c
lea eax, [esi + 0x12c]
push eax
lea eax, [esi + 0x1cc]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
cmp bl, 9
je 0x1008bed0
jmp 0x1008c3e0
mov eax, dword [0x10270d80]
movzx eax, byte [eax + 8]
mov dword [esi + 0x278], 1
movzx ecx, al
lea edx, [ecx - 1]
cmp edx, 2
jb 0x1008c04c
test ecx, ecx
je 0x1008bedf
push dword [0x10270d80]
call fcn.101c9ee0
add esp, 4
test al, al
je 0x1008bedf
movzx eax, al
push eax
mov eax, dword [0x10270d80]
push dword [eax]
call fcn.10149b60
add esp, 8
test al, al
je 0x1008bedf
mov eax, dword [0x10270d80]
mov eax, dword [eax]
cmp dword [eax + 0x20], 0
je 0x1008c65f
lea ecx, [eax + 0x1c]
mov edx, dword [ecx]
test edx, edx
je 0x1008c65f
lea edi, [eax + 0x20]
mov dword [esi + 0x1cc], edx
lea ebx, [esi + 0x1d0]
mov edx, dword [edi + 8]
mov dword [ebx + 8], edx
lea edx, [esi + 0x28]
movsd xmm0, qword [edi]
mov dword [esi + 0x10], edx
mov dword [esi + 0x14], 1
mov dword [esi + 0x18], ecx
lea ecx, [esi + 0x1cc]
mov dword [esi + 0x110], 0x101db194
mov dword [esi + 0x114], 1
mov dword [esi + 0x120], 0
mov dword [esi + 0x118], 4
mov dword [esi + 0x11c], 0
mov dword [esi + 0x28], ecx
lea ecx, [esi + 0x110]
mov dword [esi + 0x2c], ecx
lea ecx, [esi + 0x10]
mov dword [esi + 0x30], 0x101da66c
movsd qword [ebx], xmm0
mov dword [esi + 0x1dc], 0
push ecx
push eax
call fcn.1014a450
add esp, 8
jmp 0x1008bedf
mov eax, dword [0x10270d84]
movzx eax, byte [eax + 8]
mov dword [esi + 0x64], edi
movzx ecx, al
lea edx, [ecx - 1]
cmp edx, 2
jb 0x1008c163
test ecx, ecx
je 0x1008bf50
mov byte [esi + 7], 1
mov dword [esi + 0x278], 2
push dword [0x10270d84]
call fcn.101c9ee0
add esp, 4
test al, al
je 0x1008bf50
mov ecx, dword [0x10270d84]
movzx eax, al
mov byte [esi + 7], 1
mov dword [esi + 0x278], 2
mov ecx, dword [ecx]
push eax
push ecx
call fcn.10149b60
add esp, 8
test al, al
je 0x1008bf50
mov eax, dword [0x10270d84]
mov eax, dword [eax]
cmp dword [eax + 0x20], 0
je 0x1008c675
lea ecx, [eax + 0x1c]
mov edx, dword [ecx]
test edx, edx
je 0x1008c675
lea edi, [eax + 0x20]
mov dword [esi + 0x110], edx
lea ebx, [esi + 0x114]
mov edx, dword [edi + 8]
mov dword [ebx + 8], edx
mov edx, dword [esi + 0x64]
movsd xmm0, qword [edi]
lea edi, [esi + 0x10]
mov byte [esi + 7], 1
mov dword [esi + 0x1cc], edi
mov dword [esi + 0x1d0], 1
mov dword [esi + 0x1d4], ecx
lea ecx, [esi + 0x110]
mov dword [esi + 0x10], ecx
lea ecx, [esi + 0x28]
mov dword [esi + 0x14], ecx
lea ecx, [esi + 0x1cc]
mov dword [esi + 0x28], edx
mov dword [esi + 0x18], 0x101da6f8
movsd qword [ebx], xmm0
mov dword [esi + 0x120], 0
push ecx
push eax
call fcn.1014a450
add esp, 8
jmp 0x1008bf50
mov edi, dword [0x10270d7c]
movzx eax, byte [edi + 8]
movzx ecx, al
lea edx, [ecx - 1]
cmp edx, 2
jae 0x1008c641
movzx eax, al
push eax
push dword [edi]
call fcn.10149b60
add esp, 8
test al, al
je 0x1008be99
mov eax, dword [edi]
mov dword [esi + 0x110], 4
mov dword [esi + 0x114], 0
lea edi, [esi + 0x40]
lea ecx, [eax + 0x1c]
mov dword [esi + 0x118], ecx
lea ecx, [esi + 0x110]
push ecx
push eax
push edi
call fcn.10149860
add esp, 0xc
cmp dword [esi + 0x48], 2
lea eax, [esi + 0x48]
mov dword [esi + 0xc], eax
je 0x1008bead
mov dword [esi + 0x278], 0
push edi
push eax
call fcn.1014a930
add esp, 8
jmp 0x1008bead
mov eax, dword [ebp + 8]
mov byte [eax], 0xb
cmp dword [esi + 0x48], 2
jne 0x1008c5c5
jmp 0x1008c62a
mov eax, dword [ebp + 8]
mov byte [eax], 0xa
cmp dword [esi + 0x48], 2
je 0x1008c62a
jmp 0x1008c5c5
mov dword [esi + 0xa0], eax
lea eax, [esi + 0x9c]
mov dword [esi + 0x9c], edi
push eax
lea eax, [esi + 0x110]
push eax
call fcn.10125590
add esp, 8
movsd xmm0, qword [esi + 0x120]
movsd xmm1, qword [esi + 0x118]
mov ecx, dword [ebp + 8]
movsd qword [esi + 0xc5], xmm0
movsd xmm0, qword [esi + 0x110]
movsd qword [esi + 0xbd], xmm1
mov byte [ecx], 9
movsd qword [esi + 0xb5], xmm0
movsd xmm1, qword [esi + 0xba]
movsd xmm0, qword [esi + 0xb2]
mov eax, dword [esi + 0xc9]
movsd qword [ecx + 9], xmm1
movsd xmm1, qword [esi + 0xc2]
jmp 0x1008c3c4
movsd xmm0, qword [esi + 0x124]
movsd xmm1, qword [esi + 0x114]
movsd xmm2, qword [esi + 0x11c]
mov ecx, dword [ebp + 8]
movsd qword [esi + 0xd0], xmm1
movsd qword [esi + 0xd8], xmm2
movsd qword [esi + 0xe0], xmm0
movsd qword [esi + 0x83], xmm1
movsd qword [esi + 0x93], xmm0
mov byte [ecx], 9
movsd qword [esi + 0x8b], xmm2
movsd xmm1, qword [esi + 0xd5]
movsd xmm0, qword [esi + 0xcd]
mov eax, dword [esi + 0xe4]
movsd qword [ecx + 9], xmm1
movsd xmm1, qword [esi + 0xdd]
movsd qword [ecx + 1], xmm0
movsd qword [ecx + 0x11], xmm1
mov dword [ecx + 0x18], eax
cmp dword [esi + 0x48], 2
jne 0x1008c5c5
jmp 0x1008c62a
movsd xmm1, qword [esi + 0x88]
mov byte [esi + 0x110], bl
movsd xmm0, qword [esi + 0x80]
mov eax, dword [esi + 0x97]
movsd qword [esi + 0x119], xmm1
movsd xmm1, qword [esi + 0x90]
movsd qword [esi + 0x111], xmm0
movsd qword [esi + 0x121], xmm1
mov dword [esi + 0x128], eax
push 0x9c
lea eax, [esi + 0x1cc]
push eax
lea eax, [esi + 0x12c]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [0x1027132c]
mov eax, dword [eax]
cmp eax, 2
jae 0x1008c5a8
mov edi, dword [0x10270d88]
movzx eax, byte [edi + 8]
movzx ecx, al
lea edx, [ecx - 1]
cmp edx, 2
jb 0x1008c48b
test ecx, ecx
je 0x1008c5a8
mov dword [esi + 0x278], 3
push edi
call fcn.101c9ee0
add esp, 4
mov edi, dword [0x10270d88]
test al, al
je 0x1008c5a8
mov ecx, dword [edi]
movzx eax, al
mov dword [esi + 0x278], 3
push eax
push ecx
call fcn.10149b60
add esp, 8
test al, al
mov eax, dword [0x10270d88]
je 0x1008c5a8
mov eax, dword [eax]
mov ebx, dword [eax + 0x20]
test ebx, ebx
je 0x1008c68f
lea ecx, [eax + 0x1c]
mov edx, dword [ecx]
mov dword [esi + 8], ecx
test edx, edx
je 0x1008c68f
lea edi, [eax + 0x20]
mov dword [esi + 0xe8], edx
cmp ebx, 1
movsd xmm0, qword [edi]
movsd qword [esi + 0xec], xmm0
mov ecx, dword [edi + 8]
mov dword [esi + 0x10], 0x101db1c4
mov dword [esi + 0x14], 1
mov dword [esi + 0x20], 0
mov dword [esi + 0x18], 4
mov dword [esi + 0x1c], 0
mov dword [esi + 0xf4], ecx
mov dword [esi + 0xf8], 0
je 0x1008c6a5
mov ecx, dword [edi + 8]
mov dword [esi + 0x108], ecx
lea ecx, [esi + 0xe8]
movsd xmm0, qword [edi]
mov dword [esi + 0x28], ecx
lea ecx, [esi + 0x10]
mov dword [esi + 0x2c], ecx
lea ecx, [esi + 0xfc]
mov dword [esi + 0x30], 0x101da66c
mov dword [esi + 0x34], ecx
lea ecx, [esi + 0x6c]
mov dword [esi + 0x38], ecx
lea ecx, [esi + 0x28]
mov dword [esi + 0x3c], 0x101db1cc
mov dword [esi + 0xa4], ecx
mov ecx, dword [esi + 8]
mov dword [esi + 0xa8], 2
movsd qword [esi + 0x100], xmm0
mov dword [esi + 0xfc], edx
mov dword [esi + 0x10c], 1
mov dword [esi + 0xac], ecx
lea ecx, [esi + 0x110]
mov dword [esi + 0x6c], ecx
lea ecx, [esi + 0xa4]
push ecx
push eax
call fcn.1014a450
add esp, 8
push 0xb8
lea eax, [esi + 0x110]
push eax
push dword [ebp + 8]
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
cmp dword [esi + 0x48], 2
je 0x1008c62a
lea eax, [esi + 0x40]
mov dword [esi + 0x278], 0
push eax
push dword [esi + 0xc]
call fcn.1014a960
add esp, 8
mov eax, dword [esi + 0x48]
cmp eax, 2
je 0x1008c62a
mov ecx, dword [esi + 0x44]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x40]
mov dword [esi + 0x278], 4
push ecx
push eax
push dword [esi + 0xc]
call fcn.1014a990
add esp, 0xc
cmp dword [esi + 8], 0
je 0x1008c62a
mov eax, dword [esi + 0x4c]
lock dec dword [eax]
jne 0x1008c62a
lea eax, [esi + 0x4c]
mov dword [esi + 0x278], 0xffffffff
push eax
call fcn.10006ea0
add esp, 4
mov eax, dword [esi + 0x270]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
test ecx, ecx
je 0x1008be99
push edi
call fcn.101c9ee0
add esp, 4
test al, al
jne 0x1008c23a
jmp 0x1008be99
push 0x101db180
push 0x22
push 0x101da60c
call fcn.101cc830
add esp, 0xc
jmp 0x1008c6b9
mov byte [esi + 7], 1
push 0x101db19c
push 0x22
push 0x101da60c
call fcn.101cc830
add esp, 0xc
jmp 0x1008c6b9
push 0x101db1ac
push 0x22
push 0x101da60c
call fcn.101cc830
add esp, 0xc
jmp 0x1008c6b9
push 0x101db1ac
push 0x22
push 0x101da60c
call fcn.101cc830
add esp, 0xc
ud2