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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100b005e
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 8
cmp dword [ebp + 0x10], 0
push ebx
mov ebx, ecx
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], ebx
je 0x10014949
mov ecx, dword [ebp + 8]
mov dword [ebx + 8], 0x100b7434
push 0
push dword [ebp + 0xc]
mov eax, dword [ecx + 8]
mov eax, dword [eax + 4]
push dword [eax + ecx + 0x44]
lea ecx, [ebx + 0x4a98]
call fcn.10011930
mov dword [ebp - 0x10], 1
mov eax, dword [ebx + 8]
mov dword [ebx], vtable.g65ddc_ddc2.0
push esi
push edi
mov eax, dword [eax + 4]
mov edi, dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov dword [eax + ebx + 8], vtable.g65ddc_ddc2.1.0
mov eax, dword [ebx + 8]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x4a90]
mov dword [ecx + ebx + 4], eax
lea eax, [ebx + 0x1c]
push eax
call edi
mov esi, dword [sym.imp.KERNEL32.dll_CreateEventA]
push 0
push 0
push 1
push 0
call esi
mov dword [ebx + 0x18], eax
mov dword [ebx + 0x34], 0
mov dword [ebx + 0x38], 0
mov dword [ebx + 0x3c], 0
mov dword [ebx + 0x40], 0
mov dword [ebx + 0x44], 0
lea eax, [ebx + 0x4c]
mov dword [ebp - 4], 1
push eax
call edi
push 0
push 0
push 1
push 0
call esi
mov dword [ebx + 0x48], eax
mov dword [ebx + 0x64], 0
mov dword [ebx + 0x68], 0
mov dword [ebx + 0x6c], 0
mov dword [ebx + 0x70], 0
mov dword [ebx + 0x74], 0
lea eax, [ebx + 0x88]
push eax
call edi
push ebx
lea ecx, [ebx + 0xa0]
mov byte [ebp - 4], 3
call fcn.1001abd0
lea ecx, [ebx + 0x14a0]
call fcn.100150b0
push 0x100151e0
push 0x10015160
push 2
push 0x90
lea eax, [ebx + 0x1530]
mov byte [ebp - 4], 5
push eax
call fcn.1009c707
lea ecx, [ebx + 0x1650]
call fcn.10015210
mov byte [ebp - 4], 7
lea esi, [ebx + 0x4710]
mov edi, 4
lea ecx, [ecx]
mov ecx, esi
call fcn.100954e0
add esi, 4
dec edi
jns 0x10014a50
push 0x10019420
push 0x100193f0
push 5
push 0x2c
lea eax, [ebx + 0x4734]
push eax
call fcn.1009c707
push 0x10014790
push 0x100147a0
push 3
push 0x30
lea edi, [ebx + 0x4810]
mov byte [ebp - 4], 8
push edi
call fcn.1009c707
push 0x10014790
push 0x10014740
push 2
push 0x58
lea eax, [ebx + 0x48a0]
mov byte [ebp - 4], 9
push eax
call fcn.1009c707
lea ecx, [ebx + 0x4978]
call fcn.100152d0
mov byte [ebp - 4], 0xb
lea ecx, [ebx + 0x4a20]
xor eax, eax
xchg dword [ecx], eax
lea ecx, [ebx + 0x4a24]
xor eax, eax
xchg dword [ecx], eax
mov eax, dword [ebp + 8]
lea esi, [ebx + 0x4738]
mov ecx, 3
mov byte [ebx + 0x10], 1
mov dword [ebx + 0x14], eax
mov dword [ebp + 8], ecx
mov dword [ebp + 0x10], ecx
mov dword [esi - 4], edi
test edi, edi
je 0x10014afe
mov byte [edi + 0x20], 1
jmp 0x10014b24
mov eax, dword [esi]
mov dword [esi + 4], 0
mov dword [esi + 8], 0
test eax, eax
je 0x10014b24
push eax
call fcn.1009d16a
mov ecx, dword [ebp + 8]
add esp, 4
mov dword [esi], 0
add edi, 0x30
add esi, 0x2c
dec ecx
mov dword [ebp + 8], ecx
jne 0x10014af1
lea esi, [ebx + 0x48c0]
mov dword [ebp + 8], 2
lea ecx, [ecx]
cmp dword [esi + 8], 0xa
je 0x10014b50
mov dword [esi + 8], 0xa
mov byte [esi], 1
mov eax, dword [ebp + 0x10]
imul edi, eax, 0x2c
inc eax
mov dword [ebp + 0x10], eax
lea eax, [esi - 0x20]
mov dword [edi + ebx + 0x4734], eax
lea eax, [esi - 0x20]
test eax, eax
je 0x10014b70
mov byte [esi], 1
jmp 0x10014ba5
mov eax, dword [edi + ebx + 0x4738]
mov dword [edi + ebx + 0x473c], 0
mov dword [edi + ebx + 0x4740], 0
test eax, eax
je 0x10014ba5
push eax
call fcn.1009d16a
add esp, 4
mov dword [edi + ebx + 0x4738], 0
add esi, 0x58
dec dword [ebp + 8]
jne 0x10014b40
xor eax, eax
lea ecx, [ebx + 0x4a20]
xchg dword [ecx], eax
xor eax, eax
lea ecx, [ebx + 0x4a24]
xchg dword [ecx], eax
lea esi, [ebx + 0x14d8]
mov word [ebx + 0x4950], 0
mov byte [ebx + 0x4952], 0
mov dword [ebx + 0x1498], 0
mov dword [ebx + 0x14a0], 0
mov dword [ebx + 0x14a4], 0x1770
cmp dword [esi + 0x28], 4
je 0x10014c06
mov dword [esi + 0x28], 4
mov byte [esi + 0x20], 1
cmp dword [esi + 0x10], 0x200
je 0x10014c34
xor edx, edx
mov eax, 0x200
div dword [esi + 8]
test edx, edx
jne 0x10014c34
cmp eax, 4
jb 0x10014c34
mov eax, dword [esi]
mov ecx, esi
mov dword [esi + 0x10], 0x200
mov byte [esi + 0x20], 1
call dword [eax + 8]
mov dword [ebx + 0x14a8], esi
test esi, esi
je 0x10014c44
mov byte [esi + 0x20], 1
jmp 0x10014c75
mov eax, dword [ebx + 0x14ac]
mov dword [ebx + 0x14b0], 0
mov dword [ebx + 0x14b4], 0
test eax, eax
je 0x10014c75
push eax
call fcn.1009d16a
add esp, 4
mov dword [ebx + 0x14ac], 0
mov eax, 2
lea esi, [ebx + 0x1540]
mov dword [ebp + 8], eax
jmp 0x10014c90
lea edi, [esi + 0x28]
mov byte [esi - 0x10], 0
mov dword [esi - 0xc], 0
mov dword [esi - 8], 0xbb8
mov dword [esi - 4], edi
test edi, edi
je 0x10014cb2
mov byte [esi + 0x48], 1
jmp 0x10014cd8
mov eax, dword [esi]
mov dword [esi + 4], 0
mov dword [esi + 8], 0
test eax, eax
je 0x10014cd5
push eax
call fcn.1009d16a
add esp, 4
mov dword [esi], 0
mov eax, dword [ebp + 8]
cmp dword [esi + 0x50], 4
je 0x10014ce9
mov dword [esi + 0x50], 4
mov byte [esi + 0x48], 1
cmp dword [esi + 0x38], 0x100
je 0x10014d1a
xor edx, edx
mov eax, 0x100
div dword [esi + 0x30]
test edx, edx
jne 0x10014d17
cmp eax, 4
jb 0x10014d17
mov eax, dword [edi]
mov ecx, edi
mov dword [esi + 0x38], 0x100
mov byte [esi + 0x48], 1
call dword [eax + 8]
mov eax, dword [ebp + 8]
add esi, 0x90
dec eax
mov dword [ebp + 8], eax
jne 0x10014c90
fldz
lea ecx, [ebx + 0x1654]
fstp dword [ebp + 8]
mov eax, dword [ebp + 8]
mov byte [ebx + 0x1650], 0
xchg dword [ecx], eax
fld qword [0x100b9170]
lea esi, [ebx + 0x1698]
fstp qword [ebx + 0x1660]
fld qword [0x100b91b0]
fstp qword [ebx + 0x1658]
mov dword [ebx + 0x4708], 3
cmp dword [esi + 0x10], 0x80
je 0x10014d97
xor edx, edx
mov eax, 0x80
div dword [esi + 8]
test edx, edx
jne 0x10014d97
cmp eax, 4
jb 0x10014d97
mov eax, dword [esi]
mov ecx, esi
mov dword [esi + 0x10], 0x80
mov byte [esi + 0x20], 1
call dword [eax + 8]
cmp dword [esi + 0x28], 4
je 0x10014da8
mov dword [esi + 0x28], 4
mov byte [esi + 0x20], 1
mov dword [ebx + 0x166c], esi
test esi, esi
je 0x10014db8
mov byte [esi + 0x20], 1
jmp 0x10014de9
mov eax, dword [ebx + 0x1670]
mov dword [ebx + 0x1674], 0
mov dword [ebx + 0x1678], 0
test eax, eax
je 0x10014de9
push eax
call fcn.1009d16a
add esp, 4
mov dword [ebx + 0x1670], 0
fld qword [ebx + 0x1658]
lea esi, [ebx + 0x49a8]
fmul qword [0x100b8fa8]
fadd qword [0x100b90e8]
fstp dword [ebx + 0x1668]
fld qword [0x100b8fc8]
fstp qword [ebx + 0x4a38]
fld qword [0x100b9178]
fstp qword [ebx + 0x4a40]
fld qword [0x100b92a8]
fstp qword [ebx + 0x4a48]
fld qword [0x100b91a8]
fstp qword [ebx + 0x4a50]
fldz
fstp qword [ebx + 0x4a78]
fld1
fstp dword [ebx + 0x4a80]
mov dword [ebx + 0x497c], esi
test esi, esi
je 0x10014e57
mov byte [esi + 0x20], 1
jmp 0x10014e88
mov eax, dword [ebx + 0x4980]
mov dword [ebx + 0x4984], 0
mov dword [ebx + 0x4988], 0
test eax, eax
je 0x10014e88
push eax
call fcn.1009d16a
add esp, 4
mov dword [ebx + 0x4980], 0
cmp dword [esi + 0x10], 0x100
je 0x10014eb6
xor edx, edx
mov eax, 0x100
div dword [esi + 8]
test edx, edx
jne 0x10014eb6
cmp eax, 4
jb 0x10014eb6
mov eax, dword [esi]
mov ecx, esi
mov dword [esi + 0x10], 0x100
mov byte [esi + 0x20], 1
call dword [eax + 8]
fld qword [esi + 0x30]
fld qword [0x100b91f8]
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x44
jnp 0x10014efd
mov eax, dword [esi + 8]
fst qword [esi + 0x30]
fild dword [esi + 8]
test eax, eax
jns 0x10014edd
fadd qword [0x100b9260]
mov eax, dword [esi + 0xc]
fmulp st(1)
fst qword [esi + 0x40]
fild dword [esi + 0xc]
test eax, eax
jns 0x10014ef2
fadd qword [0x100b9260]
fdivp st(1)
mov byte [esi + 0x20], 1
fstp qword [esi + 0x38]
jmp 0x10014eff
fstp st(0)
cmp dword [esi + 0x28], 4
je 0x10014f10
mov dword [esi + 0x28], 4
mov byte [esi + 0x20], 1
fld qword [esi + 0x58]
fld qword [0x100b91e8]
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x44
jnp 0x10014f40
fst qword [esi + 0x58]
fcomp qword [esi + 0x50]
fnstsw ax
test ah, 0x41
jp 0x10014f3a
fld qword [0x100b91e0]
fstp qword [esi + 0x50]
mov byte [esi + 0x20], 1
jmp 0x10014f42
fstp st(0)
fld qword [esi + 0x50]
fld qword [0x100b91b8]
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x44
jnp 0x10014f72
fst qword [esi + 0x50]
fcomp qword [esi + 0x58]
fnstsw ax
test ah, 1
jne 0x10014f6c
fld qword [0x100b91c0]
fstp qword [esi + 0x58]
mov byte [esi + 0x20], 1
jmp 0x10014f74
fstp st(0)
fld qword [esi + 0x48]
fldz
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x44
jnp 0x10014f8b
fst qword [esi + 0x48]
mov byte [esi + 0x20], 1
fstp qword [ebx + 0x4968]
fld1
mov ecx, ebx
fstp dword [ebx + 0x4a84]
fld dword [0x100b8f2c]
fst dword [ebx + 0x4a88]
fstp dword [ebx + 0x4a8c]
mov byte [ebx + 0x4978], 0
mov byte [ebx + 0x4960], 0x14
mov byte [ebx + 0x4974], 0
mov dword [ebx + 0x78], 0
mov dword [ebx + 0x4a10], 0
call fcn.10017940
mov ecx, ebx
call fcn.100179e0
movzx eax, byte [ebx + 0x4960]
mov dword [ebp + 8], eax
fild dword [ebp + 8]
fmul qword [0x100b8fe0]
fld qword [0x100b9158]
call fcn.100ad380
mov ecx, ebx
fstp dword [ebx + 0x4964]
call fcn.100189b0
mov ecx, dword [ebx + 0x14a4]
mov dword [ebp + 8], ecx
pop edi
pop esi
test ecx, ecx
jle 0x10015044
mov eax, dword [ebx + 8]
mov eax, dword [eax + 4]
mov eax, dword [eax + ebx + 0x50]
cmp ecx, eax
jge 0x10015044
mov dword [ebp + 0x10], eax
fild dword [ebp + 0x10]
test eax, eax
jns 0x10015037
fadd qword [0x100b9260]
fild dword [ebp + 8]
fmul qword [0x100b9160]
fdivp st(1)
jmp 0x1001504a
fld dword [0x100b8f8c]
mov ecx, dword [ebp - 0xc]
mov eax, ebx
fstp dword [ebx + 0x4a28]
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0xc