Function at 0x100c2670
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 0x10217d10
mov dword [esp + 0x30], esi
call dword [sym.imp.MSVCP140.dll__Mtx_lock]
add esp, 4
test eax, eax
je 0x100c26b3
push eax
call dword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_]
mov ecx, esi
call fcn.100c2010
mov edi, dword [0x10215994]
mov eax, dword [edi + 4]
cmp eax, dword [edi + 8]
je 0x100c4401
mov esi, dword [0x1020e41c]
lea eax, [esp + 0xc0]
push eax
mov ecx, 0x1020d390
call fcn.10048f30
cmp dword [esp + 0xd4], 0x10
lea ecx, [esp + 0xc0]
mov eax, dword [0x1020e92c]
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 0x100c2747
mov ecx, dword [esp + 0xc0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100c273d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100c273d
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100d7f7a
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 0x100c4401
nop dword [eax + eax]
mov esi, dword [esi]
mov dword [esp + 0xc], esi
test esi, esi
je 0x100c43ee
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 0x100c280e
push 0
mov ecx, edi
call fcn.10085810
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 0x100c43ea
mov eax, dword [0x1020e298]
mov ecx, dword fs:[0x2c]
mov esi, dword [ecx + eax*4]
mov eax, dword [0x10215b94]
cmp eax, dword [esi + 4]
jle 0x100c2857
push 0x10215b94
call fcn.100d7b55
add esp, 4
cmp dword [0x10215b94], 0xffffffff
jne 0x100c2857
mov eax, dword [0x10215b84]
push 0x10215b94
mov dword [0x10215b6c], eax
call fcn.100d7b0b
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x10215b6c]
mov eax, dword [eax + ecx]
mov dword [esp + 0x24], eax
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
mov ecx, dword [0x10217be0]
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 0x100c28c2
push 0x10217be0
call fcn.100d7b55
mov ecx, dword [0x10217be0]
add esp, 4
cmp ecx, 0xffffffff
jne 0x100c28c2
mov eax, dword [0x10215dd8]
push 0x10217be0
mov dword [0x10217bb8], eax
call fcn.100d7b0b
mov ecx, dword [0x10217be0]
add esp, 4
mov eax, dword [0x10217bb8]
mov edx, dword [esp + 0xc]
cmp dword [eax + edx], 4
je 0x100c2919
cmp ecx, dword [esi + 4]
jle 0x100c2906
push 0x10217be0
call fcn.100d7b55
add esp, 4
cmp dword [0x10217be0], 0xffffffff
jne 0x100c2906
mov eax, dword [0x10215dd8]
push 0x10217be0
mov dword [0x10217bb8], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10217bb8]
mov ecx, dword [esp + 0xc]
cmp dword [eax + ecx], 5
jne 0x100c2c17
mov eax, dword [0x1020e2d0]
mov eax, dword [eax]
mov edi, dword [eax + 0x10]
mov eax, dword [0x10215ce0]
cmp eax, dword [esi + 4]
jle 0x100c295d
push 0x10215ce0
call fcn.100d7b55
add esp, 4
cmp dword [0x10215ce0], 0xffffffff
jne 0x100c295d
mov eax, dword [0x10215ca8]
push 0x10215ce0
mov dword [0x10215c58], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215c58]
mov ecx, dword [esp + 0xc]
push dword [eax + ecx]
mov ecx, dword [0x1020e2d0]
call edi
mov edi, eax
test edi, edi
je 0x100c43e3
mov ecx, dword [0x10215b44]
cmp ecx, dword [esi + 4]
jle 0x100c29b6
push 0x10215b44
call fcn.100d7b55
add esp, 4
cmp dword [0x10215b44], 0xffffffff
jne 0x100c29b6
mov eax, dword [0x10215b4c]
push 0x10215b44
mov dword [0x10215b48], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215b48]
cmp dword [eax + edi], 0
jne 0x100c43e3
mov eax, dword [0x10215b54]
cmp eax, dword [esi + 4]
jle 0x100c29ff
push 0x10215b54
call fcn.100d7b55
add esp, 4
cmp dword [0x10215b54], 0xffffffff
jne 0x100c29ff
mov eax, dword [0x10215b50]
push 0x10215b54
mov dword [0x10215b40], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215b40]
cmp dword [eax + edi], 0
jle 0x100c43e3
cmp edi, dword [0x1020dc14]
je 0x100c43ea
mov ecx, dword [0x10215e68]
cmp ecx, dword [esi + 4]
jle 0x100c2a5d
push 0x10215e68
call fcn.100d7b55
mov ecx, dword [0x10215e68]
add esp, 4
cmp ecx, 0xffffffff
jne 0x100c2a5d
mov eax, dword [0x10215d68]
push 0x10215e68
mov dword [0x10215e54], eax
call fcn.100d7b0b
mov ecx, dword [0x10215e68]
add esp, 4
mov eax, dword [0x10215e54]
mov eax, dword [eax + edi]
mov dword [esp + 0x30], eax
mov eax, dword [0x1020dc14]
mov dword [esp + 0x14], eax
cmp ecx, dword [esi + 4]
jle 0x100c2aa7
push 0x10215e68
call fcn.100d7b55
add esp, 4
cmp dword [0x10215e68], 0xffffffff
jne 0x100c2aa7
mov eax, dword [0x10215d68]
push 0x10215e68
mov dword [0x10215e54], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215e54]
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x30]
cmp ecx, dword [eax + edx]
je 0x100c43ea
mov eax, dword [edi + 8]
lea ecx, [edi + 8]
mov eax, dword [eax + 0x28]
call eax
mov ecx, dword [0x10215c4c]
lea edi, [eax + 0x286a9]
shl edi, 5
add edi, dword [esp + 0x2c]
cmp ecx, dword [esi + 4]
jle 0x100c2b10
push 0x10215c4c
call fcn.100d7b55
add esp, 4
cmp dword [0x10215c4c], 0xffffffff
jne 0x100c2b10
mov eax, dword [0x10215c44]
push 0x10215c4c
mov dword [0x10215c48], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215c48]
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 [0x10155f80]
addss xmm2, xmm1
comiss xmm0, xmm2
jbe 0x100c2c09
mov eax, dword [0x10215c4c]
cmp eax, dword [esi + 4]
jle 0x100c2bab
push 0x10215c4c
call fcn.100d7b55
add esp, 4
cmp dword [0x10215c4c], 0xffffffff
jne 0x100c2ba7
mov eax, dword [0x10215c44]
push 0x10215c4c
mov dword [0x10215c48], eax
call fcn.100d7b0b
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x10215c48]
movq xmm0, qword [eax + ecx]
movq qword [edi + 8], xmm0
mov eax, dword [eax + ecx + 8]
mov dword [edi + 0x10], eax
mov eax, dword [0x10215b94]
cmp eax, dword [esi + 4]
jle 0x100c2bff
push 0x10215b94
call fcn.100d7b55
add esp, 4
cmp dword [0x10215b94], 0xffffffff
jne 0x100c2bfb
mov eax, dword [0x10215b84]
push 0x10215b94
mov dword [0x10215b6c], eax
call fcn.100d7b0b
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x10215b6c]
mov eax, dword [eax + ecx]
mov dword [edi], eax
mov eax, dword [0x1020e2d4]
mov eax, dword [eax]
mov dword [edi + 4], eax
mov edi, dword [esp + 0x10]
mov eax, dword [0x10215b44]
cmp eax, dword [esi + 4]
jle 0x100c2c51
push 0x10215b44
call fcn.100d7b55
add esp, 4
cmp dword [0x10215b44], 0xffffffff
jne 0x100c2c51
mov eax, dword [0x10215b4c]
push 0x10215b44
mov dword [0x10215b48], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215b48]
mov ecx, dword [esp + 0xc]
cmp dword [eax + ecx], 0
jne 0x100c43de
mov eax, dword [0x10215b54]
cmp eax, dword [esi + 4]
jle 0x100c2ca2
push 0x10215b54
call fcn.100d7b55
add esp, 4
cmp dword [0x10215b54], 0xffffffff
jne 0x100c2c9e
mov eax, dword [0x10215b50]
push 0x10215b54
mov dword [0x10215b40], eax
call fcn.100d7b0b
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x10215b40]
cmp dword [eax + ecx], 0
jle 0x100c43de
mov eax, dword [0x10215b44]
mov edi, dword [0x1020dc14]
cmp eax, dword [esi + 4]
jle 0x100c2cf1
push 0x10215b44
call fcn.100d7b55
add esp, 4
cmp dword [0x10215b44], 0xffffffff
jne 0x100c2cf1
mov eax, dword [0x10215b4c]
push 0x10215b44
mov dword [0x10215b48], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215b48]
cmp dword [edi + eax], 0
jne 0x100c2e00
mov eax, dword [0x10215b54]
cmp eax, dword [esi + 4]
jle 0x100c2d3a
push 0x10215b54
call fcn.100d7b55
add esp, 4
cmp dword [0x10215b54], 0xffffffff
jne 0x100c2d3a
mov eax, dword [0x10215b50]
push 0x10215b54
mov dword [0x10215b40], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215b40]
cmp dword [edi + eax], 0
jle 0x100c2e00
mov edi, dword [esp + 0xc]
cmp edi, dword [0x1020dc14]
je 0x100c2df4
mov ecx, dword [0x10215e68]
cmp ecx, dword [esi + 4]
jle 0x100c2d9c
push 0x10215e68
call fcn.100d7b55
mov ecx, dword [0x10215e68]
add esp, 4
cmp ecx, 0xffffffff
jne 0x100c2d9c
mov eax, dword [0x10215d68]
push 0x10215e68
mov dword [0x10215e54], eax
call fcn.100d7b0b
mov ecx, dword [0x10215e68]
add esp, 4
mov eax, dword [0x10215e54]
mov edi, dword [eax + edi]
mov eax, dword [0x1020dc14]
mov dword [esp + 0x14], eax
cmp ecx, dword [esi + 4]
jle 0x100c2de2
push 0x10215e68
call fcn.100d7b55
add esp, 4
cmp dword [0x10215e68], 0xffffffff
jne 0x100c2de2
mov eax, dword [0x10215d68]
push 0x10215e68
mov dword [0x10215e54], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215e54]
mov ecx, dword [esp + 0x14]
cmp edi, dword [eax + ecx]
jne 0x100c2f0f
mov ecx, dword [esp + 0x10]
mov byte [ecx], 0
jmp 0x100c43ea
mov eax, dword [0x1020e2d0]
mov edi, dword [0x1020dc14]
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x14], eax
mov eax, dword [0x10215ce0]
cmp eax, dword [esi + 4]
jle 0x100c2e4e
push 0x10215ce0
call fcn.100d7b55
add esp, 4
cmp dword [0x10215ce0], 0xffffffff
jne 0x100c2e4e
mov eax, dword [0x10215ca8]
push 0x10215ce0
mov dword [0x10215c58], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215c58]
mov ecx, dword [0x1020e2d0]
push dword [edi + eax]
call dword [esp + 0x18]
mov edi, dword [esp + 0xc]
test eax, eax
je 0x100c2e6c
cmp edi, eax
je 0x100c2df4
mov ecx, dword [0x10215e68]
cmp ecx, dword [esi + 4]
jle 0x100c2eaf
push 0x10215e68
call fcn.100d7b55
mov ecx, dword [0x10215e68]
add esp, 4
cmp ecx, 0xffffffff
jne 0x100c2eaf
mov eax, dword [0x10215d68]
push 0x10215e68
mov dword [0x10215e54], eax
call fcn.100d7b0b
mov ecx, dword [0x10215e68]
add esp, 4
mov eax, dword [0x10215e54]
mov edi, dword [eax + edi]
mov eax, dword [0x1020dc14]
mov dword [esp + 0x14], eax
cmp ecx, dword [esi + 4]
jle 0x100c2ef5
push 0x10215e68
call fcn.100d7b55
add esp, 4
cmp dword [0x10215e68], 0xffffffff
jne 0x100c2ef5
mov eax, dword [0x10215d68]
push 0x10215e68
mov dword [0x10215e54], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215e54]
mov ecx, dword [esp + 0x14]
cmp edi, dword [eax + ecx]
jne 0x100c2f0f
mov ecx, dword [esp + 0x10]
mov byte [ecx], 0
jmp 0x100c43ea
mov edi, dword [esp + 0x20]
mov ecx, edi
mov eax, dword [edi]
mov eax, dword [eax + 0x24]
call eax
test al, al
je 0x100c30cf
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x28]
call eax
mov ecx, dword [0x1020e2d4]
lea edi, [eax + 0x286a9]
mov eax, dword [0x10216314]
movss xmm0, dword [ecx]
shl edi, 5
add edi, dword [esp + 0x2c]
subss xmm0, dword [edi + 4]
andps xmm0, xmmword [0x10156530]
comiss xmm0, dword [0x10155d44]
setbe byte [esp + 0x2b]
cmp eax, dword [esi + 4]
jle 0x100c2f96
push 0x10216314
call fcn.100d7b55
add esp, 4
cmp dword [0x10216314], 0xffffffff
jne 0x100c2f96
mov eax, dword [0x10215cfc]
push 0x10216314
mov dword [0x10216304], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10216304]
mov ecx, dword [esp + 0xc]
mov byte [eax + ecx], 1
mov eax, dword [edi]
mov dword [esp + 0x14], eax
mov eax, dword [0x10215b94]
cmp eax, dword [esi + 4]
jle 0x100c2fe3
push 0x10215b94
call fcn.100d7b55
add esp, 4
cmp dword [0x10215b94], 0xffffffff
jne 0x100c2fe3
mov eax, dword [0x10215b84]
push 0x10215b94
mov dword [0x10215b6c], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215b6c]
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 [0x1020e450]
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 [0x1020e2d4]
movss xmm2, dword [eax + 0x14]
je 0x100c3051
mulss xmm2, dword [0x10155ce8]
movss xmm1, dword [0x10155c00]
jmp 0x100c305c
mulss xmm2, dword [0x10155d18]
xorps xmm1, xmm1
call fcn.10084120
xorps xmm1, xmm1
movss dword [edi + 0x10], xmm0
comiss xmm1, xmm0
jb 0x100c3494
mov byte [edi], 0
mov eax, dword [0x10215b94]
cmp eax, dword [esi + 4]
jle 0x100c30af
push 0x10215b94
call fcn.100d7b55
add esp, 4
cmp dword [0x10215b94], 0xffffffff
jne 0x100c30af
mov eax, dword [0x10215b84]
push 0x10215b94
mov dword [0x10215b6c], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215b6c]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x24]
mov dword [eax + ecx], edx
lea eax, [esp + 0x3c]
push eax
call dword [0x1020e450]
jmp 0x100c43ea
mov edi, dword [esp + 0x10]
mov eax, dword [0x1020e2d4]
movss xmm1, dword [0x10155c78]
movss xmm0, dword [edi + 0x10]
mov byte [edi + 1], 0
movss xmm2, dword [eax + 0x14]
mulss xmm2, dword [0x10155cf8]
call fcn.10084120
movss dword [edi + 0x10], xmm0
mov eax, dword [0x10215b54]
cmp eax, dword [esi + 4]
jle 0x100c313a
push 0x10215b54
call fcn.100d7b55
add esp, 4
cmp dword [0x10215b54], 0xffffffff
jne 0x100c313a
mov eax, dword [0x10215b50]
push 0x10215b54
mov dword [0x10215b40], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215b40]
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.10045350
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 [0x1020e344]
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 0x100c3231
or dword [esp + 0x18], 1
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x7c]
call fcn.10044cf0
jmp 0x100c3286
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 0x100c3261
sub ecx, edx
lea eax, [esp + 0xe8]
push ecx
push eax
lea ecx, [esp + 0x98]
call fcn.10045350
lea eax, [esp + 0x90]
push eax
lea ecx, [esp + 0xac]
call fcn.10044cf0
mov eax, dword [esp + 0x18]
test al, 2
je 0x100c32e2
mov edx, dword [esp + 0xa4]
and eax, 0xfffffffd
mov dword [esp + 0x18], eax
cmp edx, 0x10
jb 0x100c32e2
mov ecx, dword [esp + 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100c32d4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c2737
push edx
push ecx
call fcn.100d7f7a
mov eax, dword [esp + 0x20]
add esp, 8
test al, 1
je 0x100c3341
mov edx, dword [esp + 0x8c]
and eax, 0xfffffffe
mov dword [esp + 0x18], eax
cmp edx, 0x10
jb 0x100c3326
mov ecx, dword [esp + 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100c331c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c2737
push edx
push ecx
call fcn.100d7f7a
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.10044be0
mov edx, dword [esp + 0xbc]
cmp edx, 0x10
jb 0x100c338d
mov ecx, dword [esp + 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100c3383
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c2737
push edx
push ecx
call fcn.100d7f7a
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 0x100c33e1
mov ecx, dword [esp + 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100c33d7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c2737
push edx
push ecx
call fcn.100d7f7a
add esp, 8
mov eax, dword [0x1020e298]
mov ecx, dword fs:[0x2c]
mov ecx, dword [ecx + eax*4]
mov eax, dword [0x10215b94]
cmp eax, dword [ecx + 4]
jle 0x100c342a
push 0x10215b94
call fcn.100d7b55
add esp, 4
cmp dword [0x10215b94], 0xffffffff
jne 0x100c342a
mov eax, dword [0x10215b84]
push 0x10215b94
mov dword [0x10215b6c], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215b6c]
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 [0x1020e2d4]
mov eax, dword [eax]
mov dword [edx + 4], eax
jmp 0x100c3498
mov esi, dword [esp + 0x20]
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x18]
mov dword [esp + 0x30], eax
test ecx, ecx
je 0x100c38b3
lea eax, [ecx - 0x14]
test eax, eax
je 0x100c38b3
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 0x24]
call eax
test al, al
je 0x100c38b3
mov ecx, dword fs:[0x2c]
mov eax, dword [0x1020e298]
mov esi, dword [ecx + eax*4]
mov ecx, dword [0x10215e68]
cmp ecx, dword [esi + 4]
jle 0x100c351a
push 0x10215e68
call fcn.100d7b55
mov ecx, dword [0x10215e68]
add esp, 4
cmp ecx, 0xffffffff
jne 0x100c351a
mov eax, dword [0x10215d68]
push 0x10215e68
mov dword [0x10215e54], eax
call fcn.100d7b0b
mov ecx, dword [0x10215e68]
add esp, 4
mov eax, dword [0x10215e54]
mov edx, dword [esp + 0xc]
mov edi, dword [eax + edx]
mov eax, dword [0x1020dc14]
mov dword [esp + 0x14], eax
cmp ecx, dword [esi + 4]
jle 0x100c3564
push 0x10215e68
call fcn.100d7b55
add esp, 4
cmp dword [0x10215e68], 0xffffffff
jne 0x100c3564
mov eax, dword [0x10215d68]
push 0x10215e68
mov dword [0x10215e54], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215e54]
mov ecx, dword [esp + 0x14]
cmp edi, dword [ecx + eax]
je 0x100c38b3
mov eax, dword [0x10216314]
cmp eax, dword [esi + 4]
jle 0x100c35b0
push 0x10216314
call fcn.100d7b55
add esp, 4
cmp dword [0x10216314], 0xffffffff
jne 0x100c35b0
mov eax, dword [0x10215cfc]
push 0x10216314
mov dword [0x10216304], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10216304]
mov edi, dword [esp + 0xc]
cmp byte [eax + edi], 0
je 0x100c38b7
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 0x100c3620
sub ecx, esi
push ecx
push edx
lea ecx, [esp + 0x68]
call fcn.10045350
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 [0x1020e344]
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 0x100c36f0
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x7c]
call fcn.10044cf0
mov ecx, 4
jmp 0x100c374a
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 0x100c3720
sub ecx, edx
lea eax, [esp + 0xe8]
push ecx
push eax
lea ecx, [esp + 0xb0]
call fcn.10045350
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.10044cf0
mov eax, dword [esp + 0x18]
test al, 8
je 0x100c37ae
mov edx, dword [esp + 0xbc]
and eax, 0xfffffff7
mov dword [esp + 0x18], eax
cmp edx, 0x10
jb 0x100c37ae
mov ecx, dword [esp + 0xa8]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100c37a0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c2737
push edx
push ecx
call fcn.100d7f7a
mov eax, dword [esp + 0x20]
add esp, 8
test al, 4
je 0x100c380d
mov edx, dword [esp + 0x8c]
and eax, 0xfffffffb
mov dword [esp + 0x18], eax
cmp edx, 0x10
jb 0x100c37f2
mov ecx, dword [esp + 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100c37e8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c2737
push edx
push ecx
call fcn.100d7f7a
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.10044be0
mov edx, dword [esp + 0xa4]
cmp edx, 0x10
jb 0x100c385d
mov ecx, dword [esp + 0x90]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100c3853
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c2737
push edx
push ecx
call fcn.100d7f7a
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 0x100c38bb
mov ecx, dword [esp + 0x60]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100c38a7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c2737
push edx
push ecx
call fcn.100d7f7a
add esp, 8
jmp 0x100c38bb
mov edi, dword [esp + 0xc]
mov esi, dword [esp + 0x10]
cmp dword [esi + 0x18], 0
jne 0x100c393e
mov eax, dword [edi + 8]
lea ecx, [edi + 8]
mov eax, dword [eax + 0x24]
call eax
test al, al
je 0x100c43ea
mov eax, dword [0x1020e298]
mov ecx, dword fs:[0x2c]
mov byte [esi], 0
mov ecx, dword [ecx + eax*4]
mov eax, dword [0x10215b94]
cmp eax, dword [ecx + 4]
jle 0x100c3920
push 0x10215b94
call fcn.100d7b55
add esp, 4
cmp dword [0x10215b94], 0xffffffff
jne 0x100c3920
mov eax, dword [0x10215b84]
push 0x10215b94
mov dword [0x10215b6c], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215b6c]
mov ecx, edi
mov edx, dword [esp + 0x24]
mov dword [eax + edi], edx
lea eax, [esp + 0x3c]
push eax
call dword [0x1020e450]
jmp 0x100c43ea
lea eax, [esp + 0x60]
mov byte [esi], 1
push eax
mov ecx, edi
call fcn.100c19a0
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 0x100c3997
mov eax, 0x64
jmp 0x100c399e
xor ecx, ecx
test eax, eax
cmovs eax, ecx
mov ecx, dword fs:[0x2c]
movd xmm0, eax
mov eax, dword [0x1020e298]
cvtdq2ps xmm0, xmm0
mov edi, dword [ecx + eax*4]
movss dword [esi + 0xc], xmm0
mov eax, dword [0x1021632c]
cmp eax, dword [edi + 4]
jle 0x100c39f3
push 0x1021632c
call fcn.100d7b55
add esp, 4
cmp dword [0x1021632c], 0xffffffff
jne 0x100c39f3
mov eax, dword [0x10215de4]
push 0x1021632c
mov dword [0x10216330], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10216330]
mov ecx, dword [esp + 0xc]
mov al, byte [eax + ecx]
mov byte [esi + 0x80], al
mov eax, dword [0x102160c8]
cmp eax, dword [edi + 4]
jle 0x100c3a43
push 0x102160c8
call fcn.100d7b55
add esp, 4
cmp dword [0x102160c8], 0xffffffff
jne 0x100c3a3f
mov eax, dword [0x10215df4]
push 0x102160c8
mov dword [0x102160a4], eax
call fcn.100d7b0b
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x102160a4]
mov eax, dword [eax + ecx]
mov dword [esi + 0x8c], eax
cmp byte [esi + 1], 0
jne 0x100c43ea
mov eax, dword [0x10215b90]
cmp eax, dword [edi + 4]
jle 0x100c3a99
push 0x10215b90
call fcn.100d7b55
add esp, 4
cmp dword [0x10215b90], 0xffffffff
jne 0x100c3a95
mov eax, dword [0x10215b80]
push 0x10215b90
mov dword [0x10215b60], eax
call fcn.100d7b0b
add esp, 4
mov ecx, dword [esp + 0xc]
mov eax, dword [0x10215b60]
mov al, byte [eax + ecx]
mov byte [esi + 0x81], al
mov eax, dword [esp + 0xc]
mov esi, dword [eax + 0x3874]
test esi, esi
je 0x100c3b8e
movss xmm0, dword [esi + 0xa4]
ucomiss xmm0, dword [0x10155b24]
lahf
test ah, 0x44
jnp 0x100c3b8e
mov eax, dword [0x10215b94]
cmp eax, dword [edi + 4]
jle 0x100c3b0c
push 0x10215b94
call fcn.100d7b55
add esp, 4
cmp dword [0x10215b94], 0xffffffff
jne 0x100c3b0c
mov eax, dword [0x10215b84]
push 0x10215b94
mov dword [0x10215b6c], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215b6c]
mov ecx, dword [esp + 0xc]
test byte [eax + ecx], 1
je 0x100c3b8e
cmp byte [esi + 0x108], 0
je 0x100c3b8e
cmp byte [esi + 0x109], 0
jne 0x100c3b8e
movss xmm0, dword [esi + 0xa4]
movss xmm1, dword [0x10155c64]
comiss xmm1, xmm0
jbe 0x100c3b7e
comiss xmm0, dword [0x10155c1c]
jbe 0x100c3b7e
mov edi, dword [esp + 0x10]
mov edx, dword [0x1020e2d4]
mov eax, dword [edi + 0x94]
mov ecx, dword [edi + 0x90]
cmp eax, dword [edx + 0x1c]
je 0x100c3b76
inc ecx
mov dword [edi + 0x90], ecx
mov eax, dword [edx + 0x1c]
mov dword [edi + 0x94], eax
cmp ecx, 0x10
setge al
jmp 0x100c3b94
mov edi, dword [esp + 0x10]
mov dword [edi + 0x90], 0
jmp 0x100c3b92
mov edi, dword [esp + 0x10]
xor al, al
mov ecx, dword fs:[0x2c]
mov byte [edi + 0x83], al
mov eax, dword [0x1020e298]
mov esi, dword [ecx + eax*4]
mov eax, dword [0x10215ff0]
cmp eax, dword [esi + 4]
jle 0x100c3be3
push 0x10215ff0
call fcn.100d7b55
add esp, 4
cmp dword [0x10215ff0], 0xffffffff
jne 0x100c3be3
mov eax, dword [0x10215d60]
push 0x10215ff0
mov dword [0x10215fd4], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215fd4]
mov ecx, dword [esp + 0xc]
mov al, byte [eax + ecx]
mov byte [edi + 0x88], al
mov eax, dword [0x10217bc0]
cmp eax, dword [esi + 4]
jle 0x100c3c2f
push 0x10217bc0
call fcn.100d7b55
add esp, 4
cmp dword [0x10217bc0], 0xffffffff
jne 0x100c3c2f
mov eax, dword [0x10215d44]
push 0x10217bc0
mov dword [0x10217be8], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10217be8]
mov esi, dword [esp + 0xc]
push 0x10217d74
mov al, byte [eax + esi]
mov byte [edi + 0x87], al
mov esi, dword [0x102159f0]
call dword [sym.imp.MSVCP140.dll__Mtx_lock]
add esp, 4
test eax, eax
jne 0x100c26ac
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 0x100c3d2f
cmp dword [ecx + 0x3500], 0
je 0x100c3d2f
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 0x100c3cb1
mov edx, dword [edx]
mov dword [esp + 0x24], edx
test edx, edx
je 0x100c3cb9
mov edi, dword [edx]
jmp 0x100c3cbb
mov dword [esp + 0x24], 0
xor edi, edi
cmp esi, eax
je 0x100c3ce0
nop
mov ecx, dword [edi + 8]
mov eax, dword [edi + 4]
dec ecx
and ecx, esi
mov ecx, dword [eax + ecx*4]
call fcn.100a4670
test al, al
jne 0x100c3cdc
inc esi
cmp esi, dword [esp + 0x14]
jne 0x100c3cc0
mov ecx, dword [esp + 0x30]
mov eax, dword [ecx + 0x34fc]
add eax, dword [ecx + 0x3500]
cmp esi, eax
je 0x100c3d1e
mov eax, dword [esp + 0x24]
test eax, eax
je 0x100c3cfc
mov eax, dword [eax]
jmp 0x100c3cfe
xor eax, eax
mov ecx, dword [eax + 8]
mov eax, dword [eax + 4]
dec ecx
and ecx, esi
push 0x10217d74
mov esi, dword [eax + ecx*4]
call dword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov edi, dword [esp + 0x14]
add esp, 4
jmp 0x100c3d3f
push 0x10217d74
call dword [sym.imp.MSVCP140.dll__Mtx_unlock]
mov edi, dword [esp + 0x14]
jmp 0x100c3d3a
push 0x10217d74
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 0x100c3dcc
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 [0x1020e32c]
push eax
mov edx, dword [ecx]
mov edx, dword [edx + 0x78]
call edx
test eax, eax
je 0x100c3dba
push dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, eax
mov esi, dword [0x1020e874]
call esi
cmp eax, 0x3c7
jne 0x100c3dba
movss xmm0, dword [edi + 0x58]
ucomiss xmm0, dword [0x10155b24]
lahf
test ah, 0x44
jnp 0x100c3dba
mov ecx, dword [esp + 0x10]
mov al, 1
mov edx, dword [esp + 0xc]
mov byte [ecx + 0x85], al
jmp 0x100c3dd0
mov ecx, dword [esp + 0x10]
xor al, al
mov edx, dword [esp + 0xc]
mov byte [ecx + 0x85], al
jmp 0x100c3dd0
mov ecx, dword [esp + 0x10]
mov eax, dword [0x102159d0]
mov eax, dword [eax + 0x656a8]
test eax, eax
je 0x100c3de7
cmp eax, edx
jne 0x100c3de7
mov al, 1
jmp 0x100c3de9
xor al, al
mov byte [ecx + 0x82], al
mov eax, dword [0x1020e2d0]
mov ecx, dword fs:[0x2c]
mov eax, dword [eax]
mov edi, dword [eax + 0x10]
mov eax, dword [0x1020e298]
mov esi, dword [ecx + eax*4]
mov eax, dword [0x10215cd8]
cmp eax, dword [esi + 4]
jle 0x100c3e42
push 0x10215cd8
call fcn.100d7b55
add esp, 4
cmp dword [0x10215cd8], 0xffffffff
jne 0x100c3e42
mov eax, dword [0x10215c84]
push 0x10215cd8
mov dword [0x10215c70], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215c70]
mov ecx, dword [esp + 0xc]
push dword [eax + ecx]
mov ecx, dword [0x1020e2d0]
call edi
mov edi, eax
test edi, edi
je 0x100c4294
mov ecx, dword [0x10215b9c]
cmp ecx, dword [esi + 4]
jle 0x100c3e9b
push 0x10215b9c
call fcn.100d7b55
add esp, 4
cmp dword [0x10215b9c], 0xffffffff
jne 0x100c3e9b
mov eax, dword [0x10215ba8]
push 0x10215b9c
mov dword [0x10215ba4], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215ba4]
movsx eax, word [eax + edi]
cmp eax, 0x1f4
jg 0x100c40ca
je 0x100c40c3
dec eax
cmp eax, 0x51
ja case.0x100c40d4.510
movzx eax, byte [eax + 0x100c44f8]
jmp dword [eax*4 + 0x100c4424]
mov ecx, 0x10155a0c
jmp 0x100c411f
mov ecx, 0x10155a18
jmp 0x100c411f
mov ecx, 0x10155a1c
jmp 0x100c411f
mov ecx, 0x10155a10
jmp 0x100c411f
mov ecx, 0x10155a14
jmp 0x100c411f
mov ecx, 0x10155a28
jmp 0x100c411f
mov ecx, 0x10155a2c
jmp 0x100c411f
mov ecx, 0x10155a20
jmp 0x100c411f
mov ecx, 0x10155a24
jmp 0x100c411f
mov ecx, 0x10155a38
jmp 0x100c411f
mov ecx, 0x10155a3c
jmp 0x100c411f
mov ecx, 0x10155a30
jmp 0x100c411f
mov ecx, 0x10155a34
jmp 0x100c411f
mov ecx, 0x10155a48
jmp 0x100c411f
mov ecx, 0x10155a4c
jmp 0x100c411f
mov ecx, 0x10155a40
jmp 0x100c411f
mov ecx, 0x10155a44
jmp 0x100c411f
mov ecx, 0x10155a58
jmp 0x100c411f
mov ecx, 0x10155a5c
jmp 0x100c411f
mov ecx, 0x10155a50
jmp 0x100c411f
mov ecx, 0x10155a54
jmp 0x100c411f
mov ecx, 0x10155a68
jmp 0x100c411f
mov ecx, 0x10155a6c
jmp 0x100c411f
mov ecx, 0x10155a60
jmp 0x100c411f
mov ecx, 0x10155a64
jmp 0x100c411f
mov ecx, 0x10155a78
jmp 0x100c411f
mov ecx, 0x10155a7c
jmp 0x100c411f
mov ecx, 0x10155a70
jmp 0x100c411f
mov ecx, 0x10155a74
jmp 0x100c411f
mov ecx, 0x10155a88
jmp 0x100c411f
mov ecx, 0x10155a8c
jmp 0x100c411f
mov ecx, 0x10155a80
jmp 0x100c411f
mov ecx, 0x10155a84
jmp 0x100c411f
mov ecx, 0x10155a98
jmp 0x100c411f
mov ecx, 0x10155a9c
jmp 0x100c411f
mov ecx, 0x10155a90
jmp 0x100c411f
mov ecx, 0x10155a94
jmp 0x100c411f
mov ecx, 0x10155aa8
jmp 0x100c411f
mov ecx, 0x10155aac
jmp 0x100c411f
mov ecx, 0x10155aa0
jmp 0x100c411f
mov ecx, 0x10155aa4
jmp 0x100c411f
mov ecx, 0x10155ab8
jmp 0x100c411f
mov ecx, 0x10155abc
jmp 0x100c411f
mov ecx, 0x10155ab0
jmp 0x100c411f
mov ecx, 0x10155ab4
jmp 0x100c411f
mov ecx, 0x10155ac8
jmp 0x100c411f
mov ecx, 0x10155acc
jmp 0x100c411f
mov ecx, 0x10155ac0
jmp 0x100c411f
mov ecx, 0x10155ac4
jmp 0x100c411f
mov ecx, 0x10155ad8
jmp 0x100c411f
mov ecx, 0x10155adc
jmp 0x100c411f
mov ecx, 0x10155ad0
jmp 0x100c411f
mov ecx, 0x10155ad4
jmp 0x100c411f
sub eax, 0x1f9
cmp eax, 0xb
ja case.0x100c40d4.510
jmp dword [eax*4 + 0x100c454c]
mov ecx, 0x10155ae8
jmp 0x100c411f
mov ecx, 0x10155aec
jmp 0x100c411f
mov ecx, 0x10155ae0
jmp 0x100c411f
mov ecx, 0x10155ae4
jmp 0x100c411f
mov ecx, 0x10155af8
jmp 0x100c411f
mov ecx, 0x10155afc
jmp 0x100c411f
mov ecx, 0x10155af0
jmp 0x100c411f
mov ecx, 0x10155af4
jmp 0x100c411f
mov ecx, 0x10155b00
jmp 0x100c411f
mov ecx, 0x10155b04
mov edx, ecx
lea esi, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x100c4124
sub edx, esi
mov esi, dword [esp + 0x10]
push edx
push ecx
lea ecx, [esi + 0x38]
call fcn.10045350
lea eax, [esp + 0x78]
mov ecx, edi
push eax
call fcn.100c0390
push eax
lea ecx, [esi + 0x50]
call fcn.10044be0
mov edx, dword [esp + 0x8c]
cmp edx, 0x10
jb 0x100c4189
mov ecx, dword [esp + 0x78]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100c417f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c2737
push edx
push ecx
call fcn.100d7f7a
add esp, 8
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x6f8]
call eax
mov esi, eax
test esi, esi
jne 0x100c419f
xor al, al
jmp 0x100c420e
mov eax, dword [0x1020e298]
mov ecx, dword fs:[0x2c]
mov ecx, dword [ecx + eax*4]
mov eax, dword [0x10215b9c]
cmp eax, dword [ecx + 4]
jle 0x100c41e8
push 0x10215b9c
call fcn.100d7b55
add esp, 4
cmp dword [0x10215b9c], 0xffffffff
jne 0x100c41e8
mov eax, dword [0x10215ba8]
push 0x10215b9c
mov dword [0x10215ba4], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215ba4]
mov ecx, dword [esi + 0xc8]
cmp word [eax + edi], 0x1f
je 0x100c420c
test ecx, ecx
je 0x100c420c
cmp ecx, 7
jl 0x100c4208
cmp ecx, 0x10
jle 0x100c420c
xor al, al
jmp 0x100c420e
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 0x100c4294
mov ecx, dword fs:[0x2c]
mov eax, dword [0x1020e298]
mov edx, dword [ecx + eax*4]
mov ecx, dword [0x10215fb4]
cmp ecx, dword [edx + 4]
jle 0x100c4271
push 0x10215fb4
call fcn.100d7b55
add esp, 4
cmp dword [0x10215fb4], 0xffffffff
jne 0x100c4271
mov eax, dword [0x10215dac]
push 0x10215fb4
mov dword [0x10215fa4], eax
call fcn.100d7b0b
add esp, 4
mov eax, dword [0x10215fa4]
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 [0x1020e32c]
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 0x100c43ea
mov edx, dword [edi + 0x2900]
xor edi, edi
mov ecx, dword [esi + 0x9c]
mov dword [esp + 0x14], edx
test ecx, ecx
jle 0x100c43ea
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 0x100c43bd
mov esi, dword [esi + 0xa0]
add esi, dword [esp + 0xc]
add esi, dword [esp + 0x24]
je 0x100c43b9
test dword [esi + 0xa0], 0x100
je 0x100c43b9
cmp dword [esi + 4], 0xffffffff
je 0x100c43b9
movss xmm0, dword [edx - 0x10]
mov eax, dword [esp + 0x20]
mov ecx, dword [0x1021598c]
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.1005ec10
mov eax, dword [esi + 4]
mov ecx, dword [0x1021598c]
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.1005ec10
mov esi, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov eax, dword [esi + 0x9c]
jmp 0x100c43bd
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 0x100c42f1
jmp 0x100c43ea
mov byte [edi], 0
jmp 0x100c43ea
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 0x100c2780
push 0x10217d10
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.100d7a38
mov esp, ebp
pop ebp
ret