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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x230
mov eax, dword [0x1015a368]
xor eax, esp
mov dword [esp + 0x22c], eax
push esi
push edi
mov esi, ecx
mov dword [esp + 0x18], 0
push 0x1022d370
mov dword [esp + 0x30], esi
call dword [sym.imp.MSVCP140.dll__Mtx_lock]
add esp, 4
test eax, eax
je 0x100c2d63
push eax
call dword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
mov ecx, esi
call fcn.100c26d0
mov edi, dword [0x1022aff4]
mov eax, dword [edi + 4]
cmp eax, dword [edi + 8]
je 0x100c4ab1
mov esi, dword [0x10223aa8]
lea eax, [esp + 0xc0]
push eax
mov ecx, 0x10222a28
call fcn.10048f90
cmp dword [esp + 0xd4], 0x10
lea ecx, [esp + 0xc0]
mov eax, dword [0x10223fbc]
cmovae ecx, dword [esp + 0xc0]
push ecx
mov ecx, dword [eax]
call esi
mov edx, dword [esp + 0xd4]
mov dword [esp + 0x34], eax
cmp edx, 0x10
jb 0x100c2df7
mov ecx, dword [esp + 0xc0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100c2ded
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100c2ded
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100d869a
add esp, 8
mov esi, dword [edi + 4]
mov eax, dword [edi + 8]
mov dword [esp + 0xd0], 0
mov dword [esp + 0xd4], 0xf
mov byte [esp + 0xc0], 0
mov dword [esp + 0x38], esi
mov dword [esp + 0x1c], eax
cmp esi, eax
je 0x100c4ab1
nop dword [eax + eax]
mov esi, dword [esi]
mov dword [esp + 0xc], esi
test esi, esi
je 0x100c4a9e
mov eax, dword [esi + 8]
lea ecx, [esi + 8]
mov dword [esp + 0x20], ecx
mov eax, dword [eax + 0x28]
call eax
imul edi, eax, 0xd20
add edi, dword [esp + 0x2c]
mov dword [esp + 0x10], edi
cmp dword [edi + 0x68], esi
je 0x100c2ebe
push 0
mov ecx, edi
call fcn.10085960
lea ecx, [esi + 8]
mov dword [edi + 0x68], esi
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
add eax, 0x286a9
shl eax, 5
add eax, dword [esp + 0x2c]
mov dword [eax + 4], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0xc], 0
mov dword [eax + 8], 0
mov dword [eax + 0x1c], 0
mov dword [eax + 0x18], 0
mov dword [eax + 0x14], 0
mov dword [eax], 0
jmp 0x100c4a9a
mov eax, dword [0x10223928]
mov ecx, dword fs:[0x2c]
mov esi, dword [ecx + eax*4]
mov eax, dword [0x1022b1f4]
cmp eax, dword [esi + 4]
jle 0x100c2f07
push 0x1022b1f4
call fcn.100d8275
add esp, 4
cmp dword [0x1022b1f4], 0xffffffff
jne 0x100c2f07
mov eax, dword [0x1022b1e4]
push 0x1022b1f4
mov dword [0x1022b1cc], eax
call fcn.100d822b
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x1022b1cc]
mov eax, dword [eax + ecx]
mov dword [esp + 0x24], eax
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
mov ecx, dword [0x1022d240]
movq xmm0, qword [eax]
movq qword [esp + 0x3c], xmm0
mov eax, dword [eax + 8]
mov dword [esp + 0x44], eax
cmp ecx, dword [esi + 4]
jle 0x100c2f72
push 0x1022d240
call fcn.100d8275
mov ecx, dword [0x1022d240]
add esp, 4
cmp ecx, 0xffffffff
jne 0x100c2f72
mov eax, dword [0x1022b430]
push 0x1022d240
mov dword [0x1022d218], eax
call fcn.100d822b
mov ecx, dword [0x1022d240]
add esp, 4
mov eax, dword [0x1022d218]
mov edx, dword [esp + 0xc]
cmp dword [eax + edx], 4
je 0x100c2fc9
cmp ecx, dword [esi + 4]
jle 0x100c2fb6
push 0x1022d240
call fcn.100d8275
add esp, 4
cmp dword [0x1022d240], 0xffffffff
jne 0x100c2fb6
mov eax, dword [0x1022b430]
push 0x1022d240
mov dword [0x1022d218], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022d218]
mov ecx, dword [esp + 0xc]
cmp dword [eax + ecx], 5
jne 0x100c32c7
mov eax, dword [0x10223960]
mov eax, dword [eax]
mov edi, dword [eax + 0x10]
mov eax, dword [0x1022b33c]
cmp eax, dword [esi + 4]
jle 0x100c300d
push 0x1022b33c
call fcn.100d8275
add esp, 4
cmp dword [0x1022b33c], 0xffffffff
jne 0x100c300d
mov eax, dword [0x1022b308]
push 0x1022b33c
mov dword [0x1022b2b8], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b2b8]
mov ecx, dword [esp + 0xc]
push dword [eax + ecx]
mov ecx, dword [0x10223960]
call edi
mov edi, eax
test edi, edi
je 0x100c4a93
mov ecx, dword [0x1022b1a4]
cmp ecx, dword [esi + 4]
jle 0x100c3066
push 0x1022b1a4
call fcn.100d8275
add esp, 4
cmp dword [0x1022b1a4], 0xffffffff
jne 0x100c3066
mov eax, dword [0x1022b1ac]
push 0x1022b1a4
mov dword [0x1022b1a8], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b1a8]
cmp dword [eax + edi], 0
jne 0x100c4a93
mov eax, dword [0x1022b1b4]
cmp eax, dword [esi + 4]
jle 0x100c30af
push 0x1022b1b4
call fcn.100d8275
add esp, 4
cmp dword [0x1022b1b4], 0xffffffff
jne 0x100c30af
mov eax, dword [0x1022b1b0]
push 0x1022b1b4
mov dword [0x1022b1a0], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b1a0]
cmp dword [eax + edi], 0
jle 0x100c4a93
cmp edi, dword [0x102232ac]
je 0x100c4a9a
mov ecx, dword [0x1022b4c8]
cmp ecx, dword [esi + 4]
jle 0x100c310d
push 0x1022b4c8
call fcn.100d8275
mov ecx, dword [0x1022b4c8]
add esp, 4
cmp ecx, 0xffffffff
jne 0x100c310d
mov eax, dword [0x1022b3c0]
push 0x1022b4c8
mov dword [0x1022b4b4], eax
call fcn.100d822b
mov ecx, dword [0x1022b4c8]
add esp, 4
mov eax, dword [0x1022b4b4]
mov eax, dword [eax + edi]
mov dword [esp + 0x30], eax
mov eax, dword [0x102232ac]
mov dword [esp + 0x14], eax
cmp ecx, dword [esi + 4]
jle 0x100c3157
push 0x1022b4c8
call fcn.100d8275
add esp, 4
cmp dword [0x1022b4c8], 0xffffffff
jne 0x100c3157
mov eax, dword [0x1022b3c0]
push 0x1022b4c8
mov dword [0x1022b4b4], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b4b4]
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x30]
cmp ecx, dword [eax + edx]
je 0x100c4a9a
mov eax, dword [edi + 8]
lea ecx, [edi + 8]
mov eax, dword [eax + 0x28]
call eax
mov ecx, dword [0x1022b2ac]
lea edi, [eax + 0x286a9]
shl edi, 5
add edi, dword [esp + 0x2c]
cmp ecx, dword [esi + 4]
jle 0x100c31c0
push 0x1022b2ac
call fcn.100d8275
add esp, 4
cmp dword [0x1022b2ac], 0xffffffff
jne 0x100c31c0
mov eax, dword [0x1022b2a4]
push 0x1022b2ac
mov dword [0x1022b2a8], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b2a8]
mov ecx, dword [esp + 0xc]
movq xmm0, qword [eax + ecx]
movq qword [edi + 0x14], xmm0
mov eax, dword [eax + ecx + 8]
mov dword [edi + 0x1c], eax
movss xmm0, dword [edi + 0x18]
movss xmm2, dword [edi + 0x14]
subss xmm2, dword [edi + 8]
subss xmm0, dword [edi + 0xc]
movss xmm1, dword [edi + 0x1c]
subss xmm1, dword [edi + 0x10]
mulss xmm2, xmm2
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm2, xmm0
movss xmm0, dword [0x10155f90]
addss xmm2, xmm1
comiss xmm0, xmm2
jbe 0x100c32b9
mov eax, dword [0x1022b2ac]
cmp eax, dword [esi + 4]
jle 0x100c325b
push 0x1022b2ac
call fcn.100d8275
add esp, 4
cmp dword [0x1022b2ac], 0xffffffff
jne 0x100c3257
mov eax, dword [0x1022b2a4]
push 0x1022b2ac
mov dword [0x1022b2a8], eax
call fcn.100d822b
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x1022b2a8]
movq xmm0, qword [eax + ecx]
movq qword [edi + 8], xmm0
mov eax, dword [eax + ecx + 8]
mov dword [edi + 0x10], eax
mov eax, dword [0x1022b1f4]
cmp eax, dword [esi + 4]
jle 0x100c32af
push 0x1022b1f4
call fcn.100d8275
add esp, 4
cmp dword [0x1022b1f4], 0xffffffff
jne 0x100c32ab
mov eax, dword [0x1022b1e4]
push 0x1022b1f4
mov dword [0x1022b1cc], eax
call fcn.100d822b
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x1022b1cc]
mov eax, dword [eax + ecx]
mov dword [edi], eax
mov eax, dword [0x10223964]
mov eax, dword [eax]
mov dword [edi + 4], eax
mov edi, dword [esp + 0x10]
mov eax, dword [0x1022b1a4]
cmp eax, dword [esi + 4]
jle 0x100c3301
push 0x1022b1a4
call fcn.100d8275
add esp, 4
cmp dword [0x1022b1a4], 0xffffffff
jne 0x100c3301
mov eax, dword [0x1022b1ac]
push 0x1022b1a4
mov dword [0x1022b1a8], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b1a8]
mov ecx, dword [esp + 0xc]
cmp dword [eax + ecx], 0
jne 0x100c4a8e
mov eax, dword [0x1022b1b4]
cmp eax, dword [esi + 4]
jle 0x100c3352
push 0x1022b1b4
call fcn.100d8275
add esp, 4
cmp dword [0x1022b1b4], 0xffffffff
jne 0x100c334e
mov eax, dword [0x1022b1b0]
push 0x1022b1b4
mov dword [0x1022b1a0], eax
call fcn.100d822b
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x1022b1a0]
cmp dword [eax + ecx], 0
jle 0x100c4a8e
mov eax, dword [0x1022b1a4]
mov edi, dword [0x102232ac]
cmp eax, dword [esi + 4]
jle 0x100c33a1
push 0x1022b1a4
call fcn.100d8275
add esp, 4
cmp dword [0x1022b1a4], 0xffffffff
jne 0x100c33a1
mov eax, dword [0x1022b1ac]
push 0x1022b1a4
mov dword [0x1022b1a8], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b1a8]
cmp dword [edi + eax], 0
jne 0x100c34b0
mov eax, dword [0x1022b1b4]
cmp eax, dword [esi + 4]
jle 0x100c33ea
push 0x1022b1b4
call fcn.100d8275
add esp, 4
cmp dword [0x1022b1b4], 0xffffffff
jne 0x100c33ea
mov eax, dword [0x1022b1b0]
push 0x1022b1b4
mov dword [0x1022b1a0], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b1a0]
cmp dword [edi + eax], 0
jle 0x100c34b0
mov edi, dword [esp + 0xc]
cmp edi, dword [0x102232ac]
je 0x100c34a4
mov ecx, dword [0x1022b4c8]
cmp ecx, dword [esi + 4]
jle 0x100c344c
push 0x1022b4c8
call fcn.100d8275
mov ecx, dword [0x1022b4c8]
add esp, 4
cmp ecx, 0xffffffff
jne 0x100c344c
mov eax, dword [0x1022b3c0]
push 0x1022b4c8
mov dword [0x1022b4b4], eax
call fcn.100d822b
mov ecx, dword [0x1022b4c8]
add esp, 4
mov eax, dword [0x1022b4b4]
mov edi, dword [eax + edi]
mov eax, dword [0x102232ac]
mov dword [esp + 0x14], eax
cmp ecx, dword [esi + 4]
jle 0x100c3492
push 0x1022b4c8
call fcn.100d8275
add esp, 4
cmp dword [0x1022b4c8], 0xffffffff
jne 0x100c3492
mov eax, dword [0x1022b3c0]
push 0x1022b4c8
mov dword [0x1022b4b4], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b4b4]
mov ecx, dword [esp + 0x14]
cmp edi, dword [eax + ecx]
jne 0x100c35bf
mov ecx, dword [esp + 0x10]
mov byte [ecx], 0
jmp 0x100c4a9a
mov eax, dword [0x10223960]
mov edi, dword [0x102232ac]
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x14], eax
mov eax, dword [0x1022b33c]
cmp eax, dword [esi + 4]
jle 0x100c34fe
push 0x1022b33c
call fcn.100d8275
add esp, 4
cmp dword [0x1022b33c], 0xffffffff
jne 0x100c34fe
mov eax, dword [0x1022b308]
push 0x1022b33c
mov dword [0x1022b2b8], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b2b8]
mov ecx, dword [0x10223960]
push dword [edi + eax]
call dword [esp + 0x18]
mov edi, dword [esp + 0xc]
test eax, eax
je 0x100c351c
cmp edi, eax
je 0x100c34a4
mov ecx, dword [0x1022b4c8]
cmp ecx, dword [esi + 4]
jle 0x100c355f
push 0x1022b4c8
call fcn.100d8275
mov ecx, dword [0x1022b4c8]
add esp, 4
cmp ecx, 0xffffffff
jne 0x100c355f
mov eax, dword [0x1022b3c0]
push 0x1022b4c8
mov dword [0x1022b4b4], eax
call fcn.100d822b
mov ecx, dword [0x1022b4c8]
add esp, 4
mov eax, dword [0x1022b4b4]
mov edi, dword [eax + edi]
mov eax, dword [0x102232ac]
mov dword [esp + 0x14], eax
cmp ecx, dword [esi + 4]
jle 0x100c35a5
push 0x1022b4c8
call fcn.100d8275
add esp, 4
cmp dword [0x1022b4c8], 0xffffffff
jne 0x100c35a5
mov eax, dword [0x1022b3c0]
push 0x1022b4c8
mov dword [0x1022b4b4], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b4b4]
mov ecx, dword [esp + 0x14]
cmp edi, dword [eax + ecx]
jne 0x100c35bf
mov ecx, dword [esp + 0x10]
mov byte [ecx], 0
jmp 0x100c4a9a
mov edi, dword [esp + 0x20]
mov ecx, edi
mov eax, dword [edi]
mov eax, dword [eax + 0x24]
call eax
test al, al
je 0x100c377f
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x28]
call eax
mov ecx, dword [0x10223964]
lea edi, [eax + 0x286a9]
mov eax, dword [0x1022b974]
movss xmm0, dword [ecx]
shl edi, 5
add edi, dword [esp + 0x2c]
subss xmm0, dword [edi + 4]
andps xmm0, xmmword [0x10156540]
comiss xmm0, dword [0x10155d54]
setbe byte [esp + 0x2b]
cmp eax, dword [esi + 4]
jle 0x100c3646
push 0x1022b974
call fcn.100d8275
add esp, 4
cmp dword [0x1022b974], 0xffffffff
jne 0x100c3646
mov eax, dword [0x1022b35c]
push 0x1022b974
mov dword [0x1022b964], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b964]
mov ecx, dword [esp + 0xc]
mov byte [eax + ecx], 1
mov eax, dword [edi]
mov dword [esp + 0x14], eax
mov eax, dword [0x1022b1f4]
cmp eax, dword [esi + 4]
jle 0x100c3693
push 0x1022b1f4
call fcn.100d8275
add esp, 4
cmp dword [0x1022b1f4], 0xffffffff
jne 0x100c3693
mov eax, dword [0x1022b1e4]
push 0x1022b1f4
mov dword [0x1022b1cc], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b1cc]
mov edx, dword [esp + 0xc]
mov ecx, dword [esp + 0x14]
mov dword [eax + edx], ecx
lea eax, [edi + 8]
push eax
mov ecx, edx
call dword [0x10223ae0]
mov edi, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov al, byte [esp + 0x2b]
mov byte [edi + 1], al
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
cmp byte [edi + 1], 0
movq xmm0, qword [eax]
movq qword [edi + 0xa4], xmm0
mov eax, dword [eax + 8]
movss xmm0, dword [edi + 0x10]
mov dword [edi + 0xac], eax
mov eax, dword [0x10223964]
movss xmm2, dword [eax + 0x14]
je 0x100c3701
mulss xmm2, dword [0x10155cf8]
movss xmm1, dword [0x10155c08]
jmp 0x100c370c
mulss xmm2, dword [0x10155d28]
xorps xmm1, xmm1
call fcn.10083fc0
xorps xmm1, xmm1
movss dword [edi + 0x10], xmm0
comiss xmm1, xmm0
jb 0x100c3b44
mov byte [edi], 0
mov eax, dword [0x1022b1f4]
cmp eax, dword [esi + 4]
jle 0x100c375f
push 0x1022b1f4
call fcn.100d8275
add esp, 4
cmp dword [0x1022b1f4], 0xffffffff
jne 0x100c375f
mov eax, dword [0x1022b1e4]
push 0x1022b1f4
mov dword [0x1022b1cc], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b1cc]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x24]
mov dword [eax + ecx], edx
lea eax, [esp + 0x3c]
push eax
call dword [0x10223ae0]
jmp 0x100c4a9a
mov edi, dword [esp + 0x10]
mov eax, dword [0x10223964]
movss xmm1, dword [0x10155c80]
movss xmm0, dword [edi + 0x10]
mov byte [edi + 1], 0
movss xmm2, dword [eax + 0x14]
mulss xmm2, dword [0x10155d08]
call fcn.10083fc0
movss dword [edi + 0x10], xmm0
mov eax, dword [0x1022b1b4]
cmp eax, dword [esi + 4]
jle 0x100c37ea
push 0x1022b1b4
call fcn.100d8275
add esp, 4
cmp dword [0x1022b1b4], 0xffffffff
jne 0x100c37ea
mov eax, dword [0x1022b1b0]
push 0x1022b1b4
mov dword [0x1022b1a0], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b1a0]
lea ecx, [esp + 0x60]
mov esi, dword [esp + 0xc]
push 0
push 0x1014f4a5
mov dword [esp + 0x68], 0
mov eax, dword [eax + esi]
mov dword [edi + 0x18], eax
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0xf
call fcn.100453b0
push 0x90
lea eax, [esp + 0xdc]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [esp + 0x168], 0
xorps xmm0, xmm0
mov dword [esp + 0x18c], 0
lea eax, [esp + 0x194]
mov dword [esp + 0x190], 0
movups xmmword [esp + 0x16c], xmm0
push 0x80
push 0
push eax
movups xmmword [esp + 0x188], xmm0
call sub.VCRUNTIME140.dll_memset
mov eax, dword [esi + 8]
lea ecx, [esi + 8]
add esp, 0xc
mov word [esp + 0x214], 0
xorps xmm0, xmm0
mov byte [esp + 0x228], 0
movups xmmword [esp + 0x218], xmm0
mov eax, dword [eax + 0x28]
call eax
mov ecx, dword [0x102239d4]
lea esi, [esp + 0xd8]
push esi
push eax
mov edx, dword [ecx]
mov eax, dword [edx + 0x20]
call eax
cmp dword [esp + 0x70], 0
mov esi, dword [esp + 0xc]
je 0x100c38e1
or dword [esp + 0x18], 1
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x7c]
call fcn.10044d50
jmp 0x100c3936
or dword [esp + 0x18], 2
lea ecx, [esp + 0xe8]
mov dword [esp + 0x90], 0
lea edx, [ecx + 1]
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0xf
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100c3911
sub ecx, edx
lea eax, [esp + 0xe8]
push ecx
push eax
lea ecx, [esp + 0x98]
call fcn.100453b0
lea eax, [esp + 0x90]
push eax
lea ecx, [esp + 0xac]
call fcn.10044d50
mov eax, dword [esp + 0x18]
test al, 2
je 0x100c3992
mov edx, dword [esp + 0xa4]
and eax, 0xfffffffd
mov dword [esp + 0x18], eax
cmp edx, 0x10
jb 0x100c3992
mov ecx, dword [esp + 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100c3984
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c2de7
push edx
push ecx
call fcn.100d869a
mov eax, dword [esp + 0x20]
add esp, 8
test al, 1
je 0x100c39f1
mov edx, dword [esp + 0x8c]
and eax, 0xfffffffe
mov dword [esp + 0x18], eax
cmp edx, 0x10
jb 0x100c39d6
mov ecx, dword [esp + 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100c39cc
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c2de7
push edx
push ecx
call fcn.100d869a
add esp, 8
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0xf
mov byte [esp + 0x78], 0
lea eax, [esp + 0xa8]
push eax
lea ecx, [edi + 0x20]
call fcn.10044c40
mov edx, dword [esp + 0xbc]
cmp edx, 0x10
jb 0x100c3a3d
mov ecx, dword [esp + 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100c3a33
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c2de7
push edx
push ecx
call fcn.100d869a
add esp, 8
mov edx, dword [esp + 0x74]
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], 0xf
mov byte [esp + 0xa8], 0
cmp edx, 0x10
jb 0x100c3a91
mov ecx, dword [esp + 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100c3a87
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c2de7
push edx
push ecx
call fcn.100d869a
add esp, 8
mov eax, dword [0x10223928]
mov ecx, dword fs:[0x2c]
mov ecx, dword [ecx + eax*4]
mov eax, dword [0x1022b1f4]
cmp eax, dword [ecx + 4]
jle 0x100c3ada
push 0x1022b1f4
call fcn.100d8275
add esp, 4
cmp dword [0x1022b1f4], 0xffffffff
jne 0x100c3ada
mov eax, dword [0x1022b1e4]
push 0x1022b1f4
mov dword [0x1022b1cc], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b1cc]
mov ecx, esi
mov eax, dword [eax + esi]
mov dword [edi + 0x1c], eax
mov eax, dword [esi]
mov eax, dword [eax + 0x28]
call eax
mov esi, dword [esp + 0x20]
mov ecx, esi
movq xmm0, qword [eax]
movq qword [edi + 0xb0], xmm0
mov eax, dword [eax + 8]
mov dword [edi + 0xb8], eax
mov eax, dword [esi]
mov eax, dword [eax + 0x28]
call eax
movq xmm0, qword [edi + 0xb0]
lea edx, [eax + 0x286a9]
shl edx, 5
add edx, dword [esp + 0x2c]
movq qword [edx + 8], xmm0
mov ecx, dword [edi + 0xb8]
mov dword [edx + 0x10], ecx
mov eax, dword [edi + 0x1c]
mov dword [edx], eax
mov eax, dword [0x10223964]
mov eax, dword [eax]
mov dword [edx + 4], eax
jmp 0x100c3b48
mov esi, dword [esp + 0x20]
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x18]
mov dword [esp + 0x30], eax
test ecx, ecx
je 0x100c3f63
lea eax, [ecx - 0x14]
test eax, eax
je 0x100c3f63
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 0x24]
call eax
test al, al
je 0x100c3f63
mov ecx, dword fs:[0x2c]
mov eax, dword [0x10223928]
mov esi, dword [ecx + eax*4]
mov ecx, dword [0x1022b4c8]
cmp ecx, dword [esi + 4]
jle 0x100c3bca
push 0x1022b4c8
call fcn.100d8275
mov ecx, dword [0x1022b4c8]
add esp, 4
cmp ecx, 0xffffffff
jne 0x100c3bca
mov eax, dword [0x1022b3c0]
push 0x1022b4c8
mov dword [0x1022b4b4], eax
call fcn.100d822b
mov ecx, dword [0x1022b4c8]
add esp, 4
mov eax, dword [0x1022b4b4]
mov edx, dword [esp + 0xc]
mov edi, dword [eax + edx]
mov eax, dword [0x102232ac]
mov dword [esp + 0x14], eax
cmp ecx, dword [esi + 4]
jle 0x100c3c14
push 0x1022b4c8
call fcn.100d8275
add esp, 4
cmp dword [0x1022b4c8], 0xffffffff
jne 0x100c3c14
mov eax, dword [0x1022b3c0]
push 0x1022b4c8
mov dword [0x1022b4b4], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b4b4]
mov ecx, dword [esp + 0x14]
cmp edi, dword [ecx + eax]
je 0x100c3f63
mov eax, dword [0x1022b974]
cmp eax, dword [esi + 4]
jle 0x100c3c60
push 0x1022b974
call fcn.100d8275
add esp, 4
cmp dword [0x1022b974], 0xffffffff
jne 0x100c3c60
mov eax, dword [0x1022b35c]
push 0x1022b974
mov dword [0x1022b964], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b964]
mov edi, dword [esp + 0xc]
cmp byte [eax + edi], 0
je 0x100c3f67
mov eax, dword [edi + 8]
lea ecx, [edi + 8]
mov eax, dword [eax + 0x28]
call eax
mov ecx, dword [esp + 0x34]
imul eax, eax, 0x174
mov eax, dword [eax + ecx + 0x188]
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x18], eax
lea ecx, [edi + 8]
mov eax, dword [edi + 8]
mov eax, dword [eax + 0x28]
call eax
mov edx, dword [esp + 0x34]
imul eax, eax, 0x174
add edx, 0x18c
mov dword [esp + 0x60], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0xf
add edx, eax
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100c3cd0
sub ecx, esi
push ecx
push edx
lea ecx, [esp + 0x68]
call fcn.100453b0
push 0x90
lea eax, [esp + 0xdc]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [esp + 0x168], 0
xorps xmm0, xmm0
mov dword [esp + 0x18c], 0
lea eax, [esp + 0x194]
mov dword [esp + 0x190], 0
movups xmmword [esp + 0x16c], xmm0
push 0x80
push 0
push eax
movups xmmword [esp + 0x188], xmm0
call sub.VCRUNTIME140.dll_memset
mov eax, dword [edi + 8]
lea ecx, [edi + 8]
add esp, 0xc
mov word [esp + 0x214], 0
xorps xmm0, xmm0
mov byte [esp + 0x228], 0
movups xmmword [esp + 0x218], xmm0
mov eax, dword [eax + 0x28]
call eax
mov ecx, dword [0x102239d4]
lea esi, [esp + 0xd8]
push esi
push eax
mov edx, dword [ecx]
mov eax, dword [edx + 0x20]
call eax
cmp dword [esp + 0x70], 0
je 0x100c3da0
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x7c]
call fcn.10044d50
mov ecx, 4
jmp 0x100c3dfa
lea ecx, [esp + 0xe8]
mov dword [esp + 0xa8], 0
mov dword [esp + 0xb8], 0
lea edx, [ecx + 1]
mov dword [esp + 0xbc], 0xf
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100c3dd0
sub ecx, edx
lea eax, [esp + 0xe8]
push ecx
push eax
lea ecx, [esp + 0xb0]
call fcn.100453b0
lea eax, [esp + 0xa8]
mov ecx, 8
or ecx, dword [esp + 0x30]
mov dword [esp + 0x18], ecx
lea ecx, [esp + 0x90]
push eax
call fcn.10044d50
mov eax, dword [esp + 0x18]
test al, 8
je 0x100c3e5e
mov edx, dword [esp + 0xbc]
and eax, 0xfffffff7
mov dword [esp + 0x18], eax
cmp edx, 0x10
jb 0x100c3e5e
mov ecx, dword [esp + 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100c3e50
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c2de7
push edx
push ecx
call fcn.100d869a
mov eax, dword [esp + 0x20]
add esp, 8
test al, 4
je 0x100c3ebd
mov edx, dword [esp + 0x8c]
and eax, 0xfffffffb
mov dword [esp + 0x18], eax
cmp edx, 0x10
jb 0x100c3ea2
mov ecx, dword [esp + 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100c3e98
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c2de7
push edx
push ecx
call fcn.100d869a
add esp, 8
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0xf
mov byte [esp + 0x78], 0
mov esi, dword [esp + 0x10]
lea eax, [esp + 0x90]
push eax
lea ecx, [esi + 0x20]
call fcn.10044c40
mov edx, dword [esp + 0xa4]
cmp edx, 0x10
jb 0x100c3f0d
mov ecx, dword [esp + 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100c3f03
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c2de7
push edx
push ecx
call fcn.100d869a
add esp, 8
mov edx, dword [esp + 0x74]
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0xf
mov byte [esp + 0x90], 0
cmp edx, 0x10
jb 0x100c3f6b
mov ecx, dword [esp + 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100c3f57
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c2de7
push edx
push ecx
call fcn.100d869a
add esp, 8
jmp 0x100c3f6b
mov edi, dword [esp + 0xc]
mov esi, dword [esp + 0x10]
cmp dword [esi + 0x18], 0
jne 0x100c3fee
mov eax, dword [edi + 8]
lea ecx, [edi + 8]
mov eax, dword [eax + 0x24]
call eax
test al, al
je 0x100c4a9a
mov eax, dword [0x10223928]
mov ecx, dword fs:[0x2c]
mov byte [esi], 0
mov ecx, dword [ecx + eax*4]
mov eax, dword [0x1022b1f4]
cmp eax, dword [ecx + 4]
jle 0x100c3fd0
push 0x1022b1f4
call fcn.100d8275
add esp, 4
cmp dword [0x1022b1f4], 0xffffffff
jne 0x100c3fd0
mov eax, dword [0x1022b1e4]
push 0x1022b1f4
mov dword [0x1022b1cc], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b1cc]
mov ecx, edi
mov edx, dword [esp + 0x24]
mov dword [eax + edi], edx
lea eax, [esp + 0x3c]
push eax
call dword [0x10223ae0]
jmp 0x100c4a9a
lea eax, [esp + 0x60]
mov byte [esi], 1
push eax
mov ecx, edi
call fcn.100c2060
add esp, 4
mov ecx, edi
movups xmm0, xmmword [eax]
mov eax, dword [eax + 0x10]
movups xmmword [esi + 0x6c], xmm0
mov dword [esi + 0x7c], eax
mov eax, dword [edi]
mov eax, dword [eax + 0x28]
call eax
lea ecx, [edi + 8]
movq xmm0, qword [eax]
movq qword [esi + 0x98], xmm0
mov eax, dword [eax + 8]
mov dword [esi + 0xa0], eax
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
mov dword [esi + 0x14], eax
mov eax, dword [esi + 0x18]
cmp eax, 0x64
jle 0x100c4047
mov eax, 0x64
jmp 0x100c404e
xor ecx, ecx
test eax, eax
cmovs eax, ecx
mov ecx, dword fs:[0x2c]
movd xmm0, eax
mov eax, dword [0x10223928]
cvtdq2ps xmm0, xmm0
mov edi, dword [ecx + eax*4]
movss dword [esi + 0xc], xmm0
mov eax, dword [0x1022b990]
cmp eax, dword [edi + 4]
jle 0x100c40a3
push 0x1022b990
call fcn.100d8275
add esp, 4
cmp dword [0x1022b990], 0xffffffff
jne 0x100c40a3
mov eax, dword [0x1022b448]
push 0x1022b990
mov dword [0x1022b98c], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b98c]
mov ecx, dword [esp + 0xc]
mov al, byte [eax + ecx]
mov byte [esi + 0x80], al
mov eax, dword [0x1022b720]
cmp eax, dword [edi + 4]
jle 0x100c40f3
push 0x1022b720
call fcn.100d8275
add esp, 4
cmp dword [0x1022b720], 0xffffffff
jne 0x100c40ef
mov eax, dword [0x1022b458]
push 0x1022b720
mov dword [0x1022b728], eax
call fcn.100d822b
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x1022b728]
mov eax, dword [eax + ecx]
mov dword [esi + 0x8c], eax
cmp byte [esi + 1], 0
jne 0x100c4a9a
mov eax, dword [0x1022b1f0]
cmp eax, dword [edi + 4]
jle 0x100c4149
push 0x1022b1f0
call fcn.100d8275
add esp, 4
cmp dword [0x1022b1f0], 0xffffffff
jne 0x100c4145
mov eax, dword [0x1022b1e0]
push 0x1022b1f0
mov dword [0x1022b1c0], eax
call fcn.100d822b
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x1022b1c0]
mov al, byte [eax + ecx]
mov byte [esi + 0x81], al
mov eax, dword [esp + 0xc]
mov esi, dword [eax + 0x3874]
test esi, esi
je 0x100c423e
movss xmm0, dword [esi + 0xa4]
ucomiss xmm0, dword [0x10155b20]
lahf
test ah, 0x44
jnp 0x100c423e
mov eax, dword [0x1022b1f4]
cmp eax, dword [edi + 4]
jle 0x100c41bc
push 0x1022b1f4
call fcn.100d8275
add esp, 4
cmp dword [0x1022b1f4], 0xffffffff
jne 0x100c41bc
mov eax, dword [0x1022b1e4]
push 0x1022b1f4
mov dword [0x1022b1cc], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b1cc]
mov ecx, dword [esp + 0xc]
test byte [eax + ecx], 1
je 0x100c423e
cmp byte [esi + 0x108], 0
je 0x100c423e
cmp byte [esi + 0x109], 0
jne 0x100c423e
movss xmm0, dword [esi + 0xa4]
movss xmm1, dword [0x10155c6c]
comiss xmm1, xmm0
jbe 0x100c422e
comiss xmm0, dword [0x10155c24]
jbe 0x100c422e
mov edi, dword [esp + 0x10]
mov edx, dword [0x10223964]
mov eax, dword [edi + 0x94]
mov ecx, dword [edi + 0x90]
cmp eax, dword [edx + 0x1c]
je 0x100c4226
inc ecx
mov dword [edi + 0x90], ecx
mov eax, dword [edx + 0x1c]
mov dword [edi + 0x94], eax
cmp ecx, 0x10
setge al
jmp 0x100c4244
mov edi, dword [esp + 0x10]
mov dword [edi + 0x90], 0
jmp 0x100c4242
mov edi, dword [esp + 0x10]
xor al, al
mov ecx, dword fs:[0x2c]
mov byte [edi + 0x83], al
mov eax, dword [0x10223928]
mov esi, dword [ecx + eax*4]
mov eax, dword [0x1022b650]
cmp eax, dword [esi + 4]
jle 0x100c4293
push 0x1022b650
call fcn.100d8275
add esp, 4
cmp dword [0x1022b650], 0xffffffff
jne 0x100c4293
mov eax, dword [0x1022b3bc]
push 0x1022b650
mov dword [0x1022b634], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b634]
mov ecx, dword [esp + 0xc]
mov al, byte [eax + ecx]
mov byte [edi + 0x88], al
mov eax, dword [0x1022d220]
cmp eax, dword [esi + 4]
jle 0x100c42df
push 0x1022d220
call fcn.100d8275
add esp, 4
cmp dword [0x1022d220], 0xffffffff
jne 0x100c42df
mov eax, dword [0x1022b3a8]
push 0x1022d220
mov dword [0x1022d248], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022d248]
mov esi, dword [esp + 0xc]
push 0x1022d3d4
mov al, byte [eax + esi]
mov byte [edi + 0x87], al
mov esi, dword [0x1022b050]
call dword [sym.imp.MSVCP140.dll__Mtx_lock]
add esp, 4
test eax, eax
jne 0x100c2d5c
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
imul ecx, eax, 0x3504
add ecx, esi
mov dword [esp + 0x30], ecx
je 0x100c43df
cmp dword [ecx + 0x3500], 0
je 0x100c43df
mov eax, dword [ecx + 0x3500]
lea edx, [ecx + 0x34f0]
mov esi, dword [ecx + 0x34fc]
add eax, esi
mov dword [esp + 0x14], eax
test edx, edx
je 0x100c4361
mov edx, dword [edx]
mov dword [esp + 0x24], edx
test edx, edx
je 0x100c4369
mov edi, dword [edx]
jmp 0x100c436b
mov dword [esp + 0x24], 0
xor edi, edi
cmp esi, eax
je 0x100c4390
nop
mov ecx, dword [edi + 8]
mov eax, dword [edi + 4]
dec ecx
and ecx, esi
mov ecx, dword [eax + ecx*4]
call fcn.100a4c70
test al, al
jne 0x100c438c
inc esi
cmp esi, dword [esp + 0x14]
jne 0x100c4370
mov ecx, dword [esp + 0x30]
mov eax, dword [ecx + 0x34fc]
add eax, dword [ecx + 0x3500]
cmp esi, eax
je 0x100c43ce
mov eax, dword [esp + 0x24]
test eax, eax
je 0x100c43ac
mov eax, dword [eax]
jmp 0x100c43ae
xor eax, eax
mov ecx, dword [eax + 8]
mov eax, dword [eax + 4]
dec ecx
and ecx, esi
push 0x1022d3d4
mov esi, dword [eax + ecx*4]
call dword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov edi, dword [esp + 0x14]
add esp, 4
jmp 0x100c43ef
push 0x1022d3d4
call dword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov edi, dword [esp + 0x14]
jmp 0x100c43ea
push 0x1022d3d4
call dword [sym.imp.MSVCP140.dll__Mtx_unlock]
add esp, 4
xor esi, esi
mov edx, dword [esp + 0xc]
test esi, esi
sete al
mov byte [edi + 0x84], al
mov edi, dword [edx + 0x2970]
cmp dword [edi + 0x68], 0
je 0x100c447c
mov eax, dword [edi + 0x50]
lea ecx, [edx + 4]
mov dword [esp + 0x14], eax
mov eax, dword [ecx]
mov eax, dword [eax + 0x20]
call eax
mov ecx, dword [0x102239bc]
push eax
mov edx, dword [ecx]
mov edx, dword [edx + 0x78]
call edx
test eax, eax
je 0x100c446a
push dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, eax
mov esi, dword [0x10223f04]
call esi
cmp eax, 0x3c7
jne 0x100c446a
movss xmm0, dword [edi + 0x58]
ucomiss xmm0, dword [0x10155b20]
lahf
test ah, 0x44
jnp 0x100c446a
mov ecx, dword [esp + 0x10]
mov al, 1
mov edx, dword [esp + 0xc]
mov byte [ecx + 0x85], al
jmp 0x100c4480
mov ecx, dword [esp + 0x10]
xor al, al
mov edx, dword [esp + 0xc]
mov byte [ecx + 0x85], al
jmp 0x100c4480
mov ecx, dword [esp + 0x10]
mov eax, dword [0x1022b030]
mov eax, dword [eax + 0x656a8]
test eax, eax
je 0x100c4497
cmp eax, edx
jne 0x100c4497
mov al, 1
jmp 0x100c4499
xor al, al
mov byte [ecx + 0x82], al
mov eax, dword [0x10223960]
mov ecx, dword fs:[0x2c]
mov eax, dword [eax]
mov edi, dword [eax + 0x10]
mov eax, dword [0x10223928]
mov esi, dword [ecx + eax*4]
mov eax, dword [0x1022b338]
cmp eax, dword [esi + 4]
jle 0x100c44f2
push 0x1022b338
call fcn.100d8275
add esp, 4
cmp dword [0x1022b338], 0xffffffff
jne 0x100c44f2
mov eax, dword [0x1022b2e4]
push 0x1022b338
mov dword [0x1022b2d0], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b2d0]
mov ecx, dword [esp + 0xc]
push dword [eax + ecx]
mov ecx, dword [0x10223960]
call edi
mov edi, eax
test edi, edi
je 0x100c4944
mov ecx, dword [0x1022b1fc]
cmp ecx, dword [esi + 4]
jle 0x100c454b
push 0x1022b1fc
call fcn.100d8275
add esp, 4
cmp dword [0x1022b1fc], 0xffffffff
jne 0x100c454b
mov eax, dword [0x1022b208]
push 0x1022b1fc
mov dword [0x1022b204], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b204]
movsx eax, word [eax + edi]
cmp eax, 0x1f4
jg 0x100c477a
je 0x100c4773
dec eax
cmp eax, 0x51
ja case.0x100c4784.510
movzx eax, byte [eax + 0x100c4ba8]
jmp dword [eax*4 + 0x100c4ad4]
mov ecx, 0x10155a08
jmp 0x100c47cf
mov ecx, 0x10155a14
jmp 0x100c47cf
mov ecx, 0x10155a18
jmp 0x100c47cf
mov ecx, 0x10155a0c
jmp 0x100c47cf
mov ecx, 0x10155a10
jmp 0x100c47cf
mov ecx, 0x10155a24
jmp 0x100c47cf
mov ecx, 0x10155a28
jmp 0x100c47cf
mov ecx, 0x10155a1c
jmp 0x100c47cf
mov ecx, 0x10155a20
jmp 0x100c47cf
mov ecx, 0x10155a34
jmp 0x100c47cf
mov ecx, 0x10155a38
jmp 0x100c47cf
mov ecx, 0x10155a2c
jmp 0x100c47cf
mov ecx, 0x10155a30
jmp 0x100c47cf
mov ecx, 0x10155a44
jmp 0x100c47cf
mov ecx, 0x10155a48
jmp 0x100c47cf
mov ecx, 0x10155a3c
jmp 0x100c47cf
mov ecx, 0x10155a40
jmp 0x100c47cf
mov ecx, 0x10155a54
jmp 0x100c47cf
mov ecx, 0x10155a58
jmp 0x100c47cf
mov ecx, 0x10155a4c
jmp 0x100c47cf
mov ecx, 0x10155a50
jmp 0x100c47cf
mov ecx, 0x10155a64
jmp 0x100c47cf
mov ecx, 0x10155a68
jmp 0x100c47cf
mov ecx, 0x10155a5c
jmp 0x100c47cf
mov ecx, 0x10155a60
jmp 0x100c47cf
mov ecx, 0x10155a74
jmp 0x100c47cf
mov ecx, 0x10155a78
jmp 0x100c47cf
mov ecx, 0x10155a6c
jmp 0x100c47cf
mov ecx, 0x10155a70
jmp 0x100c47cf
mov ecx, 0x10155a84
jmp 0x100c47cf
mov ecx, 0x10155a88
jmp 0x100c47cf
mov ecx, 0x10155a7c
jmp 0x100c47cf
mov ecx, 0x10155a80
jmp 0x100c47cf
mov ecx, 0x10155a94
jmp 0x100c47cf
mov ecx, 0x10155a98
jmp 0x100c47cf
mov ecx, 0x10155a8c
jmp 0x100c47cf
mov ecx, 0x10155a90
jmp 0x100c47cf
mov ecx, 0x10155aa4
jmp 0x100c47cf
mov ecx, 0x10155aa8
jmp 0x100c47cf
mov ecx, 0x10155a9c
jmp 0x100c47cf
mov ecx, 0x10155aa0
jmp 0x100c47cf
mov ecx, 0x10155ab4
jmp 0x100c47cf
mov ecx, 0x10155ab8
jmp 0x100c47cf
mov ecx, 0x10155aac
jmp 0x100c47cf
mov ecx, 0x10155ab0
jmp 0x100c47cf
mov ecx, 0x10155ac4
jmp 0x100c47cf
mov ecx, 0x10155ac8
jmp 0x100c47cf
mov ecx, 0x10155abc
jmp 0x100c47cf
mov ecx, 0x10155ac0
jmp 0x100c47cf
mov ecx, 0x10155ad4
jmp 0x100c47cf
mov ecx, 0x10155ad8
jmp 0x100c47cf
mov ecx, 0x10155acc
jmp 0x100c47cf
mov ecx, 0x10155ad0
jmp 0x100c47cf
sub eax, 0x1f9
cmp eax, 0xb
ja case.0x100c4784.510
jmp dword [eax*4 + 0x100c4bfc]
mov ecx, 0x10155ae4
jmp 0x100c47cf
mov ecx, 0x10155ae8
jmp 0x100c47cf
mov ecx, 0x10155adc
jmp 0x100c47cf
mov ecx, 0x10155ae0
jmp 0x100c47cf
mov ecx, 0x10155af4
jmp 0x100c47cf
mov ecx, 0x10155af8
jmp 0x100c47cf
mov ecx, 0x10155aec
jmp 0x100c47cf
mov ecx, 0x10155af0
jmp 0x100c47cf
mov ecx, 0x10155afc
jmp 0x100c47cf
mov ecx, 0x10155b00
mov edx, ecx
lea esi, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x100c47d4
sub edx, esi
mov esi, dword [esp + 0x10]
push edx
push ecx
lea ecx, [esi + 0x38]
call fcn.100453b0
lea eax, [esp + 0x78]
mov ecx, edi
push eax
call fcn.100c0a50
push eax
lea ecx, [esi + 0x50]
call fcn.10044c40
mov edx, dword [esp + 0x8c]
cmp edx, 0x10
jb 0x100c4839
mov ecx, dword [esp + 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100c482f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c2de7
push edx
push ecx
call fcn.100d869a
add esp, 8
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x6f8]
call eax
mov esi, eax
test esi, esi
jne 0x100c484f
xor al, al
jmp 0x100c48be
mov eax, dword [0x10223928]
mov ecx, dword fs:[0x2c]
mov ecx, dword [ecx + eax*4]
mov eax, dword [0x1022b1fc]
cmp eax, dword [ecx + 4]
jle 0x100c4898
push 0x1022b1fc
call fcn.100d8275
add esp, 4
cmp dword [0x1022b1fc], 0xffffffff
jne 0x100c4898
mov eax, dword [0x1022b208]
push 0x1022b1fc
mov dword [0x1022b204], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b204]
mov ecx, dword [esi + 0xc8]
cmp word [eax + edi], 0x1f
je 0x100c48bc
test ecx, ecx
je 0x100c48bc
cmp ecx, 7
jl 0x100c48b8
cmp ecx, 0x10
jle 0x100c48bc
xor al, al
jmp 0x100c48be
mov al, 1
mov ecx, dword [esp + 0x10]
mov byte [ecx + 2], al
mov ecx, edi
mov eax, dword [edi]
mov eax, dword [eax + 0x6f8]
call eax
mov esi, eax
test esi, esi
je 0x100c4944
mov ecx, dword fs:[0x2c]
mov eax, dword [0x10223928]
mov edx, dword [ecx + eax*4]
mov ecx, dword [0x1022b614]
cmp ecx, dword [edx + 4]
jle 0x100c4921
push 0x1022b614
call fcn.100d8275
add esp, 4
cmp dword [0x1022b614], 0xffffffff
jne 0x100c4921
mov eax, dword [0x1022b404]
push 0x1022b614
mov dword [0x1022b604], eax
call fcn.100d822b
add esp, 4
mov eax, dword [0x1022b604]
movd xmm0, dword [eax + edi]
mov eax, dword [esp + 0x10]
cvtdq2ps xmm0, xmm0
movss dword [eax + 4], xmm0
movd xmm0, dword [esi + 0x14]
cvtdq2ps xmm0, xmm0
movss dword [eax + 8], xmm0
mov edi, dword [esp + 0xc]
mov eax, dword [edi + 4]
lea ecx, [edi + 4]
mov eax, dword [eax + 0x20]
call eax
mov ecx, dword [0x102239bc]
push eax
mov edx, dword [ecx]
mov eax, dword [edx + 0x78]
call eax
mov esi, eax
mov dword [esp + 0xc], esi
test esi, esi
je 0x100c4a9a
mov edx, dword [edi + 0x2900]
xor edi, edi
mov ecx, dword [esi + 0x9c]
mov dword [esp + 0x14], edx
test ecx, ecx
jle 0x100c4a9a
mov eax, dword [esp + 0x10]
add eax, 0x4c0
mov dword [esp + 0x24], edi
add edx, 0x1c
mov dword [esp + 0x20], eax
mov dword [esp + 0x10], edx
mov eax, ecx
cmp edi, ecx
jg 0x100c4a6d
mov esi, dword [esi + 0xa0]
add esi, dword [esp + 0xc]
add esi, dword [esp + 0x24]
je 0x100c4a69
test dword [esi + 0xa0], 0x100
je 0x100c4a69
cmp dword [esi + 4], 0xffffffff
je 0x100c4a69
movss xmm0, dword [edx - 0x10]
mov eax, dword [esp + 0x20]
mov ecx, dword [0x1022afec]
add eax, 0xfffffc00
movss dword [esp + 0x48], xmm0
movss xmm0, dword [edx]
push 1
push eax
movss dword [esp + 0x54], xmm0
lea eax, [esp + 0x50]
movss xmm0, dword [edx + 0x10]
push eax
movss dword [esp + 0x5c], xmm0
call fcn.1005ec80
mov eax, dword [esi + 4]
mov ecx, dword [0x1022afec]
push 1
push dword [esp + 0x24]
lea eax, [eax + eax*2]
shl eax, 4
add eax, dword [esp + 0x1c]
movss xmm0, dword [eax + 0xc]
movss dword [esp + 0x5c], xmm0
movss xmm0, dword [eax + 0x1c]
movss dword [esp + 0x60], xmm0
movss xmm0, dword [eax + 0x2c]
lea eax, [esp + 0x5c]
push eax
movss dword [esp + 0x68], xmm0
call fcn.1005ec80
mov esi, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov eax, dword [esi + 0x9c]
jmp 0x100c4a6d
mov esi, dword [esp + 0xc]
add dword [esp + 0x24], 0xd8
inc edi
add dword [esp + 0x20], 8
add edx, 0x30
mov dword [esp + 0x10], edx
mov ecx, eax
cmp edi, eax
jl 0x100c49a1
jmp 0x100c4a9a
mov byte [edi], 0
jmp 0x100c4a9a
mov eax, dword [esp + 0x10]
mov byte [eax], 0
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x38]
add esi, 0xc
mov dword [esp + 0x38], esi
cmp esi, eax
jne 0x100c2e30
push 0x1022d370
call dword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov ecx, dword [esp + 0x238]
add esp, 4
pop edi
pop esi
xor ecx, esp
call fcn.100d8158
mov esp, ebp
pop ebp
ret