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

Disassembly:
push 0xffffffffffffffff
push 0x10190a52
mov eax, dword fs:[0]
push eax
sub esp, 0x168
push ebx
push ebp
push esi
push edi
mov eax, dword [0x10218460]
xor eax, esp
push eax
lea eax, [esp + 0x17c]
mov dword fs:[0], eax
mov ebp, dword [esp + 0x18c]
mov eax, dword [ebp + 0x10]
mov edx, dword [esp + 0x190]
mov ecx, dword [ebp + 0x14]
mov dword [esp + 0x4c], eax
push edx
mov eax, ebp
mov dword [esp + 0x48], ecx
call fcn.100e7570
mov eax, dword [esp + 0x198]
mov ebx, dword [eax + 0x10]
mov esi, dword [esp + 0x1a0]
push 0
push ebx
mov dword [esp + 0x98], ebx
call fcn.10009380
mov esi, dword [esp + 0x1a4]
mov edi, ebx
call fcn.10006150
mov ecx, dword [esp + 0x19c]
mov edx, dword [ecx]
mov eax, dword [edx + 0x50]
push ebx
call eax
mov ecx, dword [ebp + 0x20]
add ecx, dword [esp + 0x4c]
mov edx, dword [ebp + 0x24]
add edx, dword [esp + 0x44]
mov dword [esp + 0x30], ecx
fild dword [esp + 0x30]
mov dword [esp + 0x30], edx
fld qword [0x101e9328]
lea eax, [esp + 0x100]
fmul st(1), st(0)
fxch st(1)
fstp dword [esp + 0x94]
fimul dword [esp + 0x30]
fstp dword [esp + 0x9c]
call fcn.100f3170
lea eax, [esp + 0xc4]
mov dword [esp + 0x184], 0
call fcn.100f3170
lea eax, [esp + 0x64]
call fcn.100f3770
lea eax, [ebp + 0x3f0]
push eax
mov eax, dword [esp + 0x194]
lea edi, [ebp + 8]
push eax
mov eax, edi
lea esi, [esp + 0x108]
mov byte [esp + 0x18c], 2
call fcn.100e6d10
mov ecx, dword [esp + 0x198]
lea eax, [ebp + 0x3f0]
push eax
push ecx
mov eax, edi
lea esi, [esp + 0xd4]
call fcn.100e6d10
fld dword [ebp + 0x2c]
mov edi, dword [ebp + 0x28]
fstp dword [esp + 0x9c]
xor eax, eax
mov dword [esp + 0x68], edi
sar edi, 1
add esp, 0x10
cmp ebx, eax
mov dword [esp + 0x34], edi
mov dword [esp + 0x30], eax
jle 0x100e750f
mov dword [esp + 0x38], eax
jmp 0x100e6f94
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x198]
mov esi, dword [edx + 0xc]
mov ecx, dword [esp + 0x194]
mov edx, dword [ecx + 0xc]
mov ebx, dword [eax + edx + 8]
add esi, eax
mov eax, dword [ebx]
mov edx, dword [eax + 0x3c]
mov ecx, ebx
call edx
fld dword [esi + 4]
fsub dword [esp + 0x94]
mov dword [esp + 0x54], eax
fstp dword [esp + 0x1c]
fld dword [esp + 0x1c]
fistp dword [esp + 0x60]
fld dword [esi + 8]
mov eax, dword [esp + 0x60]
fsub dword [esp + 0x9c]
add eax, edi
mov dword [esp + 0x50], eax
fstp dword [esp + 0x1c]
fld dword [esp + 0x1c]
fistp dword [esp + 0x5c]
mov ecx, dword [esp + 0x5c]
mov esi, dword [ebp + 0x20]
lea edx, [ecx + edi]
mov ecx, dword [ebp + 0x24]
sub esi, edi
sub ecx, edi
add esi, eax
add ecx, edx
cmp edi, eax
mov dword [esp + 0x24], edx
mov dword [esp + 0x40], esi
mov dword [esp + 0x3c], ecx
lea eax, [esp + 0x34]
jg 0x100e701e
lea eax, [esp + 0x50]
cmp edi, edx
mov eax, dword [eax]
mov dword [esp + 0x50], eax
lea eax, [esp + 0x34]
jg 0x100e7030
lea eax, [esp + 0x24]
mov ecx, dword [eax]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x190]
mov edx, dword [ecx + 0x1c]
mov eax, dword [edx + 0x3c]
add ecx, 0x1c
call eax
sub eax, edi
sub eax, dword [esp + 0x4c]
mov dword [esp + 0x1c], eax
cmp eax, esi
lea eax, [esp + 0x1c]
jl 0x100e705e
lea eax, [esp + 0x40]
mov ecx, dword [eax]
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x190]
mov edx, dword [ecx + 0x1c]
mov eax, dword [edx + 0x40]
add ecx, 0x1c
call eax
sub eax, edi
sub eax, dword [esp + 0x44]
cmp eax, dword [esp + 0x3c]
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x1c]
jl 0x100e708e
lea eax, [esp + 0x3c]
fldz
mov ecx, dword [eax]
sub esp, 8
fst dword [esp + 0x34]
fst dword [esp + 4]
lea eax, [esp + 0xa8]
fstp dword [esp]
mov dword [esp + 0x44], ecx
mov byte [esp + 0x23], 0
call fcn.100489e0
mov eax, dword [esp + 0x24]
cmp eax, ecx
mov dword [esp + 0x24], eax
jg 0x100e73d7
jmp 0x100e70d0
mov esi, dword [esp + 0x50]
cmp esi, dword [esp + 0x40]
mov dword [esp + 0x48], esi
jg 0x100e73c3
mov edi, dword [esp + 0x190]
mov edx, dword [esp + 0x24]
lea eax, [ebp + 0x424]
push eax
lea eax, [ebp + 0x3f0]
push eax
lea eax, [esp + 0x108]
call fcn.100e6d50
fild dword [esp + 0x128]
lea eax, [esp + 0xc0]
fstp dword [esp + 4]
fild dword [esp + 0x124]
fstp dword [esp]
call fcn.100489e0
mov byte [esp + 0x184], 4
fldz
xor eax, eax
fst dword [esp + 0x6c]
mov dword [esp + 0x74], eax
fstp dword [esp + 0x7c]
mov dword [esp + 0x70], eax
lea eax, [esp + 0x64]
or edi, 0xffffffff
mov dword [esp + 0x78], edi
mov edx, dword [ebx]
mov edx, dword [edx + 0x6c]
push eax
lea ecx, [esp + 0x104]
push ecx
mov ecx, ebx
call edx
fld dword [esp + 0x7c]
cmp dword [esp + 0x78], edi
fstp dword [esp + 0x20]
jne 0x100e71a1
mov eax, dword [esp + 0x54]
sub eax, dword [esp + 0x70]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], eax
lea eax, [esp + 0x1c]
js 0x100e718d
lea eax, [esp + 0x20]
fld dword [ebp + 0x74]
fild dword [eax]
call fcn.1018a0c0
fmul dword [esp + 0x7c]
fstp dword [esp + 0x20]
jmp 0x100e71a6
mov byte [esp + 0x1b], 1
fld dword [esp + 0x20]
push ecx
fld st(0)
lea ecx, [esp + 0xbc]
fadd dword [esp + 0x30]
lea eax, [esp + 0x140]
fstp dword [esp + 0x30]
fstp dword [esp]
call fcn.10013c30
mov ecx, eax
add esp, 4
lea eax, [esp + 0xa0]
call fcn.10048ac0
lea ecx, [esp + 0x13c]
call fcn.10048a00
mov edi, dword [esp + 0x34]
test edi, edi
jle 0x100e739d
lea eax, [esp + 0x64]
call fcn.100f3980
fld dword [esp + 0x8c]
fcompp
fnstsw ax
test ah, 5
jp 0x100e739d
mov ecx, edi
neg ecx
mov edx, ecx
cmp edx, edi
mov dword [esp + 0x28], ecx
mov dword [esp + 0x1c], ecx
jg 0x100e739d
mov eax, dword [esp + 0x34]
mov ebp, ecx
cmp ebp, eax
jg 0x100e7383
test ebp, ebp
jne 0x100e7241
test edx, edx
je 0x100e7374
mov ecx, dword [esp + 0x18c]
mov edi, dword [esp + 0x190]
lea eax, [ecx + 0x424]
push eax
lea eax, [ecx + 0x3f0]
mov ecx, dword [esp + 0x28]
push eax
mov eax, dword [esp + 0x50]
lea esi, [eax + ebp]
add edx, ecx
lea eax, [esp + 0xcc]
call fcn.100e6d50
fild dword [esp + 0xec]
lea eax, [esp + 0xb4]
fstp dword [esp + 4]
fild dword [esp + 0xe8]
fstp dword [esp]
call fcn.100489e0
mov byte [esp + 0x184], 5
fldz
fst dword [esp + 0x6c]
xor esi, esi
lea eax, [esp + 0x64]
fstp dword [esp + 0x7c]
or edi, 0xffffffff
mov dword [esp + 0x74], esi
mov dword [esp + 0x70], esi
mov dword [esp + 0x78], edi
mov edx, dword [ebx]
mov edx, dword [edx + 0x6c]
push eax
lea ecx, [esp + 0xc8]
push ecx
mov ecx, ebx
call edx
fld dword [esp + 0x7c]
cmp dword [esp + 0x78], edi
fstp dword [esp + 0x20]
jne 0x100e7319
mov eax, dword [esp + 0x54]
sub eax, dword [esp + 0x70]
mov dword [esp + 0x20], esi
mov dword [esp + 0x98], eax
lea eax, [esp + 0x20]
js 0x100e72fe
lea eax, [esp + 0x98]
mov ecx, dword [esp + 0x18c]
fld dword [ecx + 0x74]
fild dword [eax]
call fcn.1018a0c0
fmul dword [esp + 0x7c]
fstp dword [esp + 0x20]
jmp 0x100e731e
mov byte [esp + 0x1b], 1
fld dword [esp + 0x20]
push ecx
fld st(0)
lea ecx, [esp + 0xb0]
fadd dword [esp + 0x30]
lea eax, [esp + 0x14c]
fstp dword [esp + 0x30]
fstp dword [esp]
call fcn.10013c30
mov ecx, eax
add esp, 4
lea eax, [esp + 0xa0]
call fcn.10048ac0
lea ecx, [esp + 0x148]
call fcn.10048a00
lea ecx, [esp + 0xac]
call fcn.10048a00
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x34]
add ebp, 1
cmp ebp, eax
jle 0x100e7235
mov ecx, dword [esp + 0x28]
add edx, 1
cmp edx, eax
mov dword [esp + 0x1c], edx
jle 0x100e7227
mov esi, dword [esp + 0x48]
mov ebp, dword [esp + 0x18c]
lea ecx, [esp + 0xb8]
call fcn.10048a00
add esi, dword [esp + 0x58]
cmp esi, dword [esp + 0x40]
mov dword [esp + 0x48], esi
jle 0x100e70e2
mov edi, dword [esp + 0x34]
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x24]
add eax, dword [esp + 0x58]
cmp eax, ecx
mov dword [esp + 0x24], eax
jle 0x100e70d0
fld dword [esp + 0x2c]
fcomp qword [0x101e9420]
fnstsw ax
test ah, 0x41
jne 0x100e749b
fild dword [esp + 0x44]
sub esp, 8
fld qword [0x101e9328]
lea eax, [esp + 0x168]
fmul st(1), st(0)
fxch st(1)
fstp dword [esp + 0x30]
fld dword [esp + 0x30]
fstp dword [esp + 4]
fimul dword [esp + 0x54]
fstp dword [esp + 0x30]
fld dword [esp + 0x30]
fstp dword [esp]
call fcn.100489e0
fld dword [esp + 0x2c]
push ecx
fld1
mov esi, eax
fdivrp st(1)
lea ecx, [esp + 0xa4]
lea eax, [esp + 0x170]
fstp dword [esp + 0x2c]
fld dword [esp + 0x2c]
fstp dword [esp]
call fcn.10013c30
mov edx, eax
add esp, 4
mov ecx, esi
lea eax, [esp + 0x154]
call fcn.10048a40
mov edx, dword [esp + 0x19c]
mov ecx, eax
mov eax, dword [edx + 0xc]
add eax, dword [esp + 0x38]
call fcn.10048a30
lea ecx, [esp + 0x154]
call fcn.10048a00
lea ecx, [esp + 0x16c]
call fcn.10048a00
lea ecx, [esp + 0x160]
call fcn.10048a00
jmp 0x100e74bc
mov eax, dword [esp + 0x198]
mov ecx, dword [eax + 0xc]
mov eax, dword [esp + 0x19c]
mov edx, dword [esp + 0x38]
mov eax, dword [eax + 0xc]
add ecx, edx
add eax, edx
call fcn.10048a30
mov ecx, dword [esp + 0x1a0]
fld dword [esp + 0x2c]
mov edx, dword [ecx + 4]
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x1a4]
fstp dword [edx + eax*4]
mov edx, dword [ecx + 4]
mov cl, byte [esp + 0x1b]
mov byte [eax + edx], cl
lea ecx, [esp + 0xa0]
mov byte [esp + 0x184], 2
call fcn.10048a00
add dword [esp + 0x38], 0xc
add eax, 1
cmp eax, dword [esp + 0x90]
mov dword [esp + 0x30], eax
jl 0x100e6f90
lea ecx, [esp + 0x84]
call fcn.100f3890
mov esi, vtable.ert_RefCounter.0
lea ecx, [esp + 0xf8]
mov dword [esp + 0x84], esi
call fcn.100f3290
lea ecx, [esp + 0x134]
mov dword [esp + 0xf8], esi
call fcn.100f3290
mov ecx, dword [esp + 0x17c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x174
ret 0x1c