Function at 0x100b8530
Capabilities:
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xffffffe0
sub esp, 0x240
mov esi, esp
mov dword [esi + 0x218], ebp
mov dword [esi + 0x21c], esp
mov dword [esi + 0x228], 0xffffffff
lea eax, [esi + 0x220]
mov dword [esi + 0x224], 0x100bd3b0
mov edx, dword fs:[0]
mov dword [esi + 0x220], edx
mov dword fs:[0], eax
mov eax, dword [0x1025adc4]
cmp dword [eax + 0x190], 0
je 0x100b9b72
mov dword [esi + 0x13c], ecx
mov ecx, dword [eax + 0x194]
mov eax, dword [eax + 0x198]
mov dword [esp + 4], eax
mov dword [esp], ecx
xor ebx, ebx
call fcn.10087260
test al, al
je 0x100b9b74
mov dword [esi + 0x100], 0
mov ecx, dword [0x1025ae10]
mov dword [esi + 0x184], 0
xorps xmm0, xmm0
movlps qword [esi + 0x17c], xmm0
mov eax, dword [ecx]
lea edx, [esi + 0x17c]
mov dword [esp], edx
call dword [eax + 0x48]
sub esp, 4
movss xmm0, dword [0x101a99dc]
movaps xmmword [esi + 0xd0], xmm0
mov ebx, 1
jmp 0x100b8731
cvtss2sd xmm0, xmm0
movsd qword [esi + 0x188], xmm0
movsd qword [esp], xmm0
movsd qword [esi + 0xf8], xmm4
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
fstp st(0)
movsd xmm0, qword [esi + 0x188]
movsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
fstp st(0)
movsd xmm4, qword [esi + 0xf8]
movsd xmm0, qword [esi + 0x120]
cvtsd2ss xmm0, xmm0
movaps xmm1, xmm0
cmpneqss xmm1, dword [0x101a9780]
andps xmm0, xmm1
movss xmm2, dword [0x101a8280]
andnps xmm1, xmm2
orps xmm1, xmm0
movsd xmm0, qword [esi + 0x78]
cvtsd2ss xmm0, xmm0
movss xmm3, dword [esi + 0x40]
divss xmm3, xmm1
mulss xmm3, xmm0
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm4
movss xmm4, dword [esi + 0x50]
divss xmm4, xmm1
movss xmm2, dword [esi + 0xe0]
divss xmm2, xmm1
movsd xmm1, qword [esi + 0x118]
cvtsd2ss xmm1, xmm1
mulss xmm0, xmm1
mulss xmm0, xmm2
movsd xmm2, qword [esi + 0x140]
cvtsd2ss xmm2, xmm2
mulss xmm2, xmm1
mulss xmm2, xmm4
addss xmm2, xmm0
subss xmm2, xmm3
xorps xmm0, xmm0
cvtss2sd xmm0, xmm2
movsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_acos
fstp dword [esi + 0x178]
movss xmm0, dword [esi + 0x178]
mulss xmm0, dword [0x101b1748]
xorps xmm1, xmm1
maxss xmm1, xmm0
movaps xmm2, xmmword [esi + 0xd0]
ucomiss xmm1, xmm2
movaps xmm0, xmm2
cmpnless xmm0, xmm1
andps xmm1, xmm0
andnps xmm0, xmm2
orps xmm0, xmm1
mov eax, dword [esi + 0x100]
cmovb eax, dword [esi + 0x60]
mov dword [esi + 0x100], eax
movaps xmmword [esi + 0xd0], xmm0
nop dword [eax]
inc ebx
mov eax, dword [0x1025ae0c]
cmp ebx, dword [eax + 0x18]
jg 0x100b923c
mov ecx, dword [0x1025ae14]
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
mov dword [esi + 0x228], 0xffffffff
mov dword [esp], ebx
call eax
sub esp, 4
test eax, eax
je 0x100b8730
lea ecx, [eax + 8]
mov dword [esi + 0x60], eax
mov eax, dword [eax + 8]
call dword [eax + 0x24]
test al, al
jne 0x100b8730
mov eax, dword [0x1025af58]
test al, 1
je 0x100b899e
mov edi, dword [0x1025af54]
mov edx, dword [esi + 0x60]
mov eax, dword [edi + 4]
cmp dword [eax + edx], 0
jle 0x100b8730
mov eax, dword [0x1025af60]
test al, 1
je 0x100b8ace
mov edi, dword [0x1025af5c]
mov eax, dword [edi + 4]
cmp byte [eax + edx], 0
jne 0x100b8730
mov eax, dword [0x102606e4]
test al, 1
je 0x100b8ce9
mov edi, dword [0x102606e0]
mov ecx, dword [edi + 4]
mov edi, dword [ecx + edx]
mov edx, dword [0x1025ae04]
mov edx, dword [edx]
test al, 1
je 0x100b8e19
cmp edi, dword [ecx + edx]
jne 0x100b87fd
mov eax, dword [0x1025adc8]
mov ecx, dword [eax + 0x154]
mov eax, dword [ecx]
mov eax, dword [eax + 0x34]
mov dword [esi + 0x228], 0xffffffff
call eax
test eax, eax
je 0x100b8730
mov eax, dword [0x1025ae04]
mov ecx, dword [esi + 0x60]
cmp ecx, dword [eax]
je 0x100b8730
mov eax, dword [ecx]
mov eax, dword [eax + 0x138]
mov dword [esi + 0x228], 0xffffffff
call eax
mov ecx, dword [0x1025adc8]
movss xmm2, dword [eax + 8]
subss xmm2, dword [ecx + 0x198]
movss xmm1, dword [eax]
movss xmm0, dword [eax + 4]
subss xmm0, dword [ecx + 0x194]
subss xmm1, dword [ecx + 0x190]
movss dword [esi + 0x50], xmm0
mulss xmm0, xmm0
movss dword [esi + 0xe0], xmm1
mulss xmm1, xmm1
addss xmm1, xmm0
movss dword [esi + 0x40], xmm2
movaps xmm0, xmm2
mulss xmm0, xmm2
addss xmm0, xmm1
cvtss2sd xmm0, xmm0
ucomisd xmm0, qword [0x101a9fb0]
jb 0x100b888a
sqrtsd xmm0, xmm0
jmp 0x100b88a2
movsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
fstp qword [esi + 0x1f8]
movsd xmm0, qword [esi + 0x1f8]
movsd qword [esi + 0x120], xmm0
movss xmm0, dword [esi + 0x17c]
movss xmm1, dword [0x101b173c]
mulss xmm0, xmm1
cvtss2sd xmm0, xmm0
movsd qword [esi + 0x118], xmm0
movsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
fstp qword [esi + 0x1f0]
movsd xmm0, qword [esi + 0x1f0]
movsd qword [esi + 0x78], xmm0
movsd xmm0, qword [esi + 0x118]
movsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
fstp qword [esi + 0x1e8]
movsd xmm0, qword [esi + 0x1e8]
movsd qword [esi + 0x118], xmm0
movss xmm0, dword [esi + 0x180]
mulss xmm0, dword [0x101b173c]
cvtss2sd xmm0, xmm0
movsd qword [esi + 0xf8], xmm0
movsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
fstp qword [esi + 0x1e0]
movsd xmm0, qword [esi + 0x1e0]
movsd qword [esi + 0x140], xmm0
movsd xmm0, qword [esi + 0xf8]
movsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
fstp qword [esi + 0x1d8]
movsd xmm4, qword [esi + 0x1d8]
movss xmm0, dword [esi + 0x184]
mulss xmm0, dword [0x101b173c]
ucomiss xmm0, dword [0x101b1740]
jae 0x100b8602
movss xmm1, dword [0x101b1744]
ucomiss xmm1, xmm0
jb 0x100b863e
jmp 0x100b8602
mov dword [esi + 0x120], ebx
or eax, 1
mov dword [0x1025af58], eax
mov eax, 0x8ed6b37d
mov ecx, 0xde3f1734
mov dword [esi + 0x24], eax
mov dword [esi + 0x20], ecx
mov eax, 0x7bb5ab13
mov ecx, 0x92328649
mov dword [esi + 0x2c], eax
mov dword [esi + 0x28], ecx
mov eax, 0x62354c46
mov ecx, 0x7fb35fa9
mov dword [esi + 0x34], eax
mov dword [esi + 0x30], ecx
mov ecx, 0x7278c207
mov eax, 0x9db8cf2
mov edx, 0xefbae318
mov edi, 0xad5e5577
mov dword [esi + 0xa4], edx
mov dword [esi + 0xa0], edi
mov edx, 0x12eac62d
mov edi, 0xbf40e330
mov dword [esi + 0xac], edx
mov dword [esi + 0xa8], edi
mov edx, 0x62352432
mov edi, 0x13d23ae1
mov dword [esi + 0xb4], edx
mov dword [esi + 0xb0], edi
mov dword [esi + 0x3c], ecx
mov dword [esi + 0x38], eax
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
xor eax, eax
lea ecx, [esi + 0xa0]
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [ecx]
movaps xmmword [esi + 0x20], xmm0
movaps xmm0, xmmword [esi + 0x30]
xorps xmm0, xmmword [ecx + 0x10]
mov eax, dword [0x1025adcc]
mov dword [esi + 0x78], eax
movaps xmmword [esi + 0x30], xmm0
mov dword [esi + 0x228], 0
lea eax, [esi + 0x20]
mov dword [esp], eax
lea ecx, [esi + 0x80]
call fcn.10015170
sub esp, 4
cmp dword [esi + 0x94], 0x10
lea eax, [esi + 0x80]
mov dword [esi + 0x50], eax
jb 0x100b8a9a
mov eax, dword [esi + 0x80]
mov dword [esi + 0x50], eax
mov eax, dword [esi + 0x90]
mov dword [esi + 0x40], eax
test eax, eax
je 0x100b8bfe
mov eax, dword [esi + 0x40]
mov ecx, eax
and ecx, 3
mov dword [esi + 0xe0], ecx
cmp eax, 4
jae 0x100b8c05
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b8c4f
mov dword [esi + 0x120], ebx
or eax, 1
mov dword [0x1025af60], eax
mov eax, 0x8ed6b37d
mov ecx, 0xde3f1734
mov dword [esi + 0x24], eax
mov dword [esi + 0x20], ecx
mov eax, 0x7eb5ab13
mov ecx, 0x92328649
mov dword [esi + 0x2c], eax
mov dword [esi + 0x28], ecx
mov eax, 0x7414546
mov ecx, 0x40b75c88
mov dword [esi + 0x34], eax
mov dword [esi + 0x30], ecx
mov ecx, 0x7278c207
mov eax, 0x9db8cf2
mov edx, 0xefbae318
mov edi, 0xad5e5577
mov dword [esi + 0xa4], edx
mov dword [esi + 0xa0], edi
mov edx, 0x12eac62d
mov edi, 0xbf40e330
mov dword [esi + 0xac], edx
mov dword [esi + 0xa8], edi
mov edx, 0x62352432
mov edi, 0x13d23ae1
mov dword [esi + 0xb4], edx
mov dword [esi + 0xb0], edi
mov dword [esi + 0x3c], ecx
mov dword [esi + 0x38], eax
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
xor eax, eax
lea ecx, [esi + 0xa0]
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [ecx]
movaps xmmword [esi + 0x20], xmm0
movaps xmm0, xmmword [esi + 0x30]
xorps xmm0, xmmword [ecx + 0x10]
mov eax, dword [0x1025adcc]
mov dword [esi + 0x78], eax
movaps xmmword [esi + 0x30], xmm0
mov dword [esi + 0x228], 2
lea eax, [esi + 0x20]
mov dword [esp], eax
lea ecx, [esi + 0x80]
call fcn.10015170
sub esp, 4
cmp dword [esi + 0x94], 0x10
lea eax, [esi + 0x80]
mov dword [esi + 0x50], eax
jb 0x100b8bca
mov eax, dword [esi + 0x80]
mov dword [esi + 0x50], eax
mov eax, dword [esi + 0x90]
mov dword [esi + 0x40], eax
test eax, eax
je 0x100b8f55
mov eax, dword [esi + 0x40]
mov ecx, eax
and ecx, 3
mov dword [esi + 0xe0], ecx
cmp eax, 4
jae 0x100b8f5c
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b8fa6
mov ecx, 0x811c9dc5
jmp 0x100b8c72
mov edi, dword [esi + 0x40]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 0x50]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100b8c12
cmp dword [esi + 0xe0], 0
je 0x100b8c72
add edx, dword [esi + 0x50]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0xe0], edi
jne 0x100b8c5d
mov edx, dword [esi + 0x78]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b9e87
add ecx, ecx
mov ebx, dword [eax + ecx*4]
mov eax, dword [esi + 0x40]
cmp eax, dword [edi + 0x18]
jne 0x100b8cbd
cmp dword [edi + 0x1c], 0x10
jb 0x100b8ca0
mov eax, dword [edi + 8]
jmp 0x100b8ca3
lea eax, [edi + 8]
mov ecx, dword [esi + 0x40]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov eax, dword [esi + 0x50]
mov dword [esp], eax
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x100b8cca
cmp edi, ebx
je 0x100b9e87
mov edi, dword [edi + 4]
jmp 0x100b8c8d
add edi, 0x20
lea ecx, [esi + 0x80]
call fcn.10015110
mov dword [0x1025af54], edi
mov ebx, dword [esi + 0x120]
jmp 0x100b8783
mov dword [esi + 0x120], ebx
or eax, 1
mov dword [0x102606e4], eax
mov eax, 0x9bd4a67d
mov ecx, 0xde3f1734
mov dword [esi + 0x24], eax
mov dword [esi + 0x20], ecx
mov eax, 0x7bb5ab13
mov ecx, 0x92399759
mov dword [esi + 0x2c], eax
mov dword [esi + 0x28], ecx
mov eax, 0x6258517c
mov ecx, 0x7eb35fb5
mov dword [esi + 0x34], eax
mov dword [esi + 0x30], ecx
mov ecx, 0x7278c207
mov eax, 0x9db8cf2
mov edx, 0xefbae318
mov edi, 0xad5e5577
mov dword [esi + 0xa4], edx
mov dword [esi + 0xa0], edi
mov edx, 0x12eac62d
mov edi, 0xbf40e330
mov dword [esi + 0xac], edx
mov dword [esi + 0xa8], edi
mov edx, 0x62352432
mov edi, 0x13d23ae1
mov dword [esi + 0xb4], edx
mov dword [esi + 0xb0], edi
mov dword [esi + 0x3c], ecx
mov dword [esi + 0x38], eax
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
xor eax, eax
lea ecx, [esi + 0xa0]
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [ecx]
movaps xmmword [esi + 0x20], xmm0
movaps xmm0, xmmword [esi + 0x30]
xorps xmm0, xmmword [ecx + 0x10]
mov eax, dword [0x1025adcc]
mov dword [esi + 0x78], eax
movaps xmmword [esi + 0x30], xmm0
mov dword [esi + 0x228], 4
lea eax, [esi + 0x20]
mov dword [esp], eax
lea ecx, [esi + 0x80]
call fcn.10015170
sub esp, 4
cmp dword [esi + 0x94], 0x10
lea eax, [esi + 0x80]
mov dword [esi + 0x50], eax
jb 0x100b8de5
mov eax, dword [esi + 0x80]
mov dword [esi + 0x50], eax
mov eax, dword [esi + 0x90]
mov dword [esi + 0x40], eax
test eax, eax
je 0x100b9043
mov eax, dword [esi + 0x40]
mov ecx, eax
and ecx, 3
mov dword [esi + 0xe0], ecx
cmp eax, 4
jae 0x100b9054
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b909e
mov dword [esi + 0x140], edx
mov dword [esi + 0x118], edi
mov dword [esi + 0x120], ebx
or eax, 1
mov dword [0x102606e4], eax
mov eax, 0x9bd4a67d
mov ecx, 0xde3f1734
mov dword [esi + 0x24], eax
mov dword [esi + 0x20], ecx
mov eax, 0x7bb5ab13
mov ecx, 0x92399759
mov dword [esi + 0x2c], eax
mov dword [esi + 0x28], ecx
mov eax, 0x6258517c
mov ecx, 0x7eb35fb5
mov dword [esi + 0x34], eax
mov dword [esi + 0x30], ecx
mov ecx, 0x7278c207
mov eax, 0x9db8cf2
mov edx, 0xefbae318
mov edi, 0xad5e5577
mov dword [esi + 0xa4], edx
mov dword [esi + 0xa0], edi
mov edx, 0x12eac62d
mov edi, 0xbf40e330
mov dword [esi + 0xac], edx
mov dword [esi + 0xa8], edi
mov edx, 0x62352432
mov edi, 0x13d23ae1
mov dword [esi + 0xb4], edx
mov dword [esi + 0xb0], edi
mov dword [esi + 0x3c], ecx
mov dword [esi + 0x38], eax
mov dword [esi + 0xbc], ecx
mov dword [esi + 0xb8], eax
xor eax, eax
lea ecx, [esi + 0xa0]
movaps xmm0, xmmword [esi + 0x20]
xorps xmm0, xmmword [ecx]
movaps xmmword [esi + 0x20], xmm0
movaps xmm0, xmmword [esi + 0x30]
xorps xmm0, xmmword [ecx + 0x10]
mov eax, dword [0x1025adcc]
mov dword [esi + 0x78], eax
movaps xmmword [esi + 0x30], xmm0
mov dword [esi + 0x228], 6
lea eax, [esi + 0x20]
mov dword [esp], eax
lea ecx, [esi + 0x80]
call fcn.10015170
sub esp, 4
cmp dword [esi + 0x94], 0x10
lea eax, [esi + 0x80]
mov dword [esi + 0x50], eax
jb 0x100b8f21
mov eax, dword [esi + 0x80]
mov dword [esi + 0x50], eax
mov eax, dword [esi + 0x90]
mov dword [esi + 0x40], eax
test eax, eax
je 0x100b904a
mov eax, dword [esi + 0x40]
mov ecx, eax
and ecx, 3
mov dword [esi + 0xe0], ecx
cmp eax, 4
jae 0x100b9140
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b918a
mov ecx, 0x811c9dc5
jmp 0x100b8fc9
mov edi, dword [esi + 0x40]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 0x50]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100b8f69
cmp dword [esi + 0xe0], 0
je 0x100b8fc9
add edx, dword [esi + 0x50]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0xe0], edi
jne 0x100b8fb4
mov edx, dword [esi + 0x78]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b9e5b
add ecx, ecx
mov ebx, dword [eax + ecx*4]
mov eax, dword [esi + 0x40]
cmp eax, dword [edi + 0x18]
jne 0x100b9014
cmp dword [edi + 0x1c], 0x10
jb 0x100b8ff7
mov eax, dword [edi + 8]
jmp 0x100b8ffa
lea eax, [edi + 8]
mov ecx, dword [esi + 0x40]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov eax, dword [esi + 0x50]
mov dword [esp], eax
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x100b9021
cmp edi, ebx
je 0x100b9e5b
mov edi, dword [edi + 4]
jmp 0x100b8fe4
add edi, 0x20
lea ecx, [esi + 0x80]
call fcn.10015110
mov dword [0x1025af5c], edi
mov ebx, dword [esi + 0x120]
mov edx, dword [esi + 0x60]
jmp 0x100b87a2
mov ecx, 0x811c9dc5
jmp 0x100b90c1
mov ecx, 0x811c9dc5
jmp 0x100b91ad
mov edi, dword [esi + 0x40]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 0x50]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100b9061
cmp dword [esi + 0xe0], 0
je 0x100b90c1
add edx, dword [esi + 0x50]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0xe0], edi
jne 0x100b90ac
mov edx, dword [esi + 0x78]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b9e71
add ecx, ecx
mov ebx, dword [eax + ecx*4]
mov eax, dword [esi + 0x40]
cmp eax, dword [edi + 0x18]
jne 0x100b910c
cmp dword [edi + 0x1c], 0x10
jb 0x100b90ef
mov eax, dword [edi + 8]
jmp 0x100b90f2
lea eax, [edi + 8]
mov ecx, dword [esi + 0x40]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov eax, dword [esi + 0x50]
mov dword [esp], eax
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x100b9119
cmp edi, ebx
je 0x100b9e71
mov edi, dword [edi + 4]
jmp 0x100b90dc
add edi, 0x20
lea ecx, [esi + 0x80]
call fcn.10015110
mov dword [0x102606e0], edi
mov eax, dword [0x102606e4]
mov ebx, dword [esi + 0x120]
mov edx, dword [esi + 0x60]
jmp 0x100b87be
mov edi, dword [esi + 0x40]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 0x50]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100b914d
cmp dword [esi + 0xe0], 0
je 0x100b91ad
add edx, dword [esi + 0x50]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0xe0], edi
jne 0x100b9198
mov edx, dword [esi + 0x78]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b9e45
add ecx, ecx
mov ebx, dword [eax + ecx*4]
mov eax, dword [esi + 0x40]
cmp eax, dword [edi + 0x18]
jne 0x100b91f8
cmp dword [edi + 0x1c], 0x10
jb 0x100b91db
mov eax, dword [edi + 8]
jmp 0x100b91de
lea eax, [edi + 8]
mov ecx, dword [esi + 0x40]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov eax, dword [esi + 0x50]
mov dword [esp], eax
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x100b9205
cmp edi, ebx
je 0x100b9e45
mov edi, dword [edi + 4]
jmp 0x100b91c8
lea ebx, [edi + 0x20]
lea ecx, [esi + 0x80]
call fcn.10015110
mov dword [0x102606e0], ebx
mov ecx, dword [edi + 0x24]
mov ebx, dword [esi + 0x120]
mov edi, dword [esi + 0x118]
mov edx, dword [esi + 0x140]
cmp edi, dword [ecx + edx]
je 0x100b87d9
jmp 0x100b87fd
cmp dword [esi + 0x100], 0
je 0x100b9b72
mov edi, dword [ebp + 8]
movss xmm0, dword [edi]
addss xmm0, dword [0x101b17e0]
movss dword [esp], xmm0
mov dword [esp + 4], 0x43b40000
mov ebx, dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_remainderf]
call ebx
fstp dword [esi + 0x174]
movss xmm0, dword [esi + 0x174]
mov dword [esi + 0xa0], 0
movss dword [esi + 0xd0], xmm0
movss dword [esi + 0xa4], xmm0
mov dword [esi + 0xa8], 0
mov byte [esi + 0xac], 0
movss xmm0, dword [edi]
addss xmm0, dword [0x101b0a2c]
movss dword [esp], xmm0
mov dword [esp + 4], 0x43b40000
call ebx
mov dword [esi + 0xb0], 0
fstp dword [esi + 0xb4]
mov dword [esi + 0xb8], 0
mov byte [esi + 0xbc], 0
movss xmm0, dword [edi]
addss xmm0, dword [0x101b0a14]
movss dword [esp], xmm0
mov dword [esp + 4], 0x43b40000
call ebx
mov dword [esi + 0xc0], 0
fstp dword [esi + 0xc4]
mov dword [esi + 0xc8], 0
mov byte [esi + 0xcc], 0
mov eax, dword [0x102606b4]
test al, 1
je 0x100b9c40
mov ebx, dword [0x102606b0]
mov dword [esi + 0x228], 0xffffffff
mov eax, dword [ebx + 4]
mov edi, dword [esi + 0x100]
movsd xmm0, qword [eax + edi]
movaps xmmword [esi + 0x140], xmm0
shufps xmm0, xmm0, 0x55
movaps xmmword [esi + 0x60], xmm0
movss xmm0, dword [eax + edi + 8]
addss xmm0, dword [0x101b1a58]
movss dword [esi + 0xf8], xmm0
movss xmm0, dword [esi + 0xd0]
mulss xmm0, dword [0x101b173c]
mov ebx, dword [0x1025adc8]
mov eax, dword [0x1025ade4]
mov dword [esi + 0x40], eax
cvtss2sd xmm1, xmm0
movsd qword [esi + 0x50], xmm1
movss xmm0, dword [ebx + 0x190]
movaps xmmword [esi + 0xd0], xmm0
movsd qword [esp], xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
fstp qword [esi + 0x1d0]
movss xmm0, dword [ebx + 0x194]
movaps xmm1, xmmword [esi + 0xd0]
unpcklps xmm1, xmm0
movaps xmmword [esi + 0xd0], xmm1
movsd xmm0, qword [esi + 0x50]
movsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
fstp qword [esi + 0x1c8]
movsd xmm0, qword [esi + 0x1d0]
movhpd xmm0, qword [esi + 0x1c8]
cvtpd2ps xmm0, xmm0
mulps xmm0, xmmword [0x101b1a60]
addps xmm0, xmmword [esi + 0xd0]
movss xmm1, dword [ebx + 0x198]
movlps qword [esi + 0x80], xmm0
movss dword [esi + 0x88], xmm1
mov eax, dword [0x1025ae04]
mov eax, dword [eax]
mov dword [esp + 8], eax
lea eax, [esi + 0x80]
mov dword [esp + 0x18], eax
movss xmm0, dword [esi + 0xf8]
movss dword [esp + 0x14], xmm0
movaps xmm0, xmmword [esi + 0x60]
movss dword [esp + 0x10], xmm0
movaps xmm0, xmmword [esi + 0x140]
movss dword [esp + 0xc], xmm0
mov dword [esp + 4], edi
lea eax, [esi + 0x20]
mov dword [esp], eax
mov ecx, dword [esi + 0x40]
call fcn.100bff30
sub esp, 0x1c
mov eax, dword [esi + 0x24]
test eax, eax
jle 0x100b9485
mov dword [esi + 0xa0], eax
mov byte [esi + 0xac], 1
mov al, 1
mov dword [esi + 0x40], eax
jmp 0x100b948c
mov dword [esi + 0x40], 0
movss xmm0, dword [esi + 0xb4]
mulss xmm0, dword [0x101b173c]
mov edi, dword [0x1025ade4]
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
movsd qword [esi + 0x50], xmm1
movss xmm0, dword [ebx + 0x190]
movaps xmmword [esi + 0xd0], xmm0
movsd qword [esp], xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
fstp qword [esi + 0x1c0]
movss xmm0, dword [ebx + 0x194]
movaps xmm1, xmmword [esi + 0xd0]
unpcklps xmm1, xmm0
movaps xmmword [esi + 0xd0], xmm1
movsd xmm0, qword [esi + 0x50]
movsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
fstp qword [esi + 0x1b8]
movsd xmm0, qword [esi + 0x1c0]
movhpd xmm0, qword [esi + 0x1b8]
cvtpd2ps xmm0, xmm0
mulps xmm0, xmmword [0x101b1a60]
addps xmm0, xmmword [esi + 0xd0]
movss xmm1, dword [ebx + 0x198]
movlps qword [esi + 0x80], xmm0
movss dword [esi + 0x88], xmm1
mov eax, dword [0x1025ae04]
mov eax, dword [eax]
mov dword [esp + 8], eax
lea eax, [esi + 0x80]
mov dword [esp + 0x18], eax
movss xmm0, dword [esi + 0xf8]
movss dword [esp + 0x14], xmm0
movaps xmm0, xmmword [esi + 0x60]
movss dword [esp + 0x10], xmm0
movaps xmm0, xmmword [esi + 0x140]
movss dword [esp + 0xc], xmm0
mov eax, dword [esi + 0x100]
mov dword [esp + 4], eax
lea eax, [esi + 0x20]
mov dword [esp], eax
mov ecx, edi
call fcn.100bff30
sub esp, 0x1c
mov eax, dword [esi + 0x24]
test eax, eax
jle 0x100b95a1
mov dword [esi + 0xb0], eax
mov byte [esi + 0xbc], 1
mov al, 1
mov dword [esi + 0x40], eax
movss xmm0, dword [esi + 0xc4]
mulss xmm0, dword [0x101b173c]
mov edi, dword [0x1025ade4]
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
movsd qword [esi + 0x50], xmm1
movss xmm0, dword [ebx + 0x190]
movaps xmmword [esi + 0xd0], xmm0
movsd qword [esp], xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
fstp qword [esi + 0x1b0]
movss xmm0, dword [ebx + 0x194]
movaps xmm1, xmmword [esi + 0xd0]
unpcklps xmm1, xmm0
movaps xmmword [esi + 0xd0], xmm1
movsd xmm0, qword [esi + 0x50]
movsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
fstp qword [esi + 0x1a8]
movsd xmm0, qword [esi + 0x1b0]
movhpd xmm0, qword [esi + 0x1a8]
cvtpd2ps xmm0, xmm0
mulps xmm0, xmmword [0x101b1a60]
addps xmm0, xmmword [esi + 0xd0]
movss xmm1, dword [ebx + 0x198]
movlps qword [esi + 0x80], xmm0
movss dword [esi + 0x88], xmm1
mov eax, dword [0x1025ae04]
mov eax, dword [eax]
lea ecx, [esi + 0x80]
mov dword [esp + 0x18], ecx
mov dword [esp + 8], eax
mov eax, dword [esi + 0x100]
mov dword [esp + 4], eax
movss xmm0, dword [esi + 0xf8]
movss dword [esp + 0x14], xmm0
movaps xmm0, xmmword [esi + 0x60]
movss dword [esp + 0x10], xmm0
movaps xmm0, xmmword [esi + 0x140]
movss dword [esp + 0xc], xmm0
lea eax, [esi + 0x20]
mov dword [esp], eax
mov ecx, edi
call fcn.100bff30
sub esp, 0x1c
mov eax, dword [esi + 0x24]
test eax, eax
jle 0x100b96b3
mov dword [esi + 0xc0], eax
mov byte [esi + 0xcc], 1
jmp 0x100b96bd
cmp byte [esi + 0x40], 0
je 0x100b982e
xorps xmm0, xmm0
cmp byte [esi + 0xac], 0
je 0x100b96da
mov eax, dword [esi + 0xa0]
test eax, eax
jle 0x100b96da
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
xor edi, edi
cmp byte [esi + 0xbc], 0
je 0x100b96fd
xorps xmm1, xmm1
cvtsi2ss xmm1, dword [esi + 0xb0]
ucomiss xmm0, xmm1
jae 0x100b96fd
mov edi, 1
movaps xmm0, xmm1
cmp byte [esi + 0xcc], 0
je 0x100b971b
xorps xmm1, xmm1
cvtsi2ss xmm1, dword [esi + 0xc0]
ucomiss xmm0, xmm1
jae 0x100b971b
mov edi, 2
mov eax, dword [0x1025adc4]
cmp dword [eax + 0x190], 1
jne 0x100b9741
shl edi, 4
movss xmm0, dword [esi + edi + 0xa4]
mov eax, dword [ebp + 8]
movss dword [eax], xmm0
jmp 0x100b9827
mov ebx, dword [ebp + 8]
movss xmm0, dword [ebx]
addss xmm0, dword [0x101b17e0]
movss dword [esp], xmm0
mov dword [esp + 4], 0x43b40000
mov ebx, dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_remainderf]
call ebx
fstp dword [esi + 0x170]
movss xmm0, dword [esi + 0x170]
movss dword [esi + 0x60], xmm0
mov eax, dword [ebp + 8]
movss dword [eax], xmm0
shl edi, 4
movss xmm0, dword [esi + edi + 0xa4]
movss dword [esp], xmm0
mov dword [esp + 4], 0x43b40000
call ebx
fstp dword [esi + 0x16c]
movss xmm0, dword [esi + 0x16c]
movss dword [esi + 0x100], xmm0
movss xmm0, dword [esi + 0x60]
movss dword [esp], xmm0
mov dword [esp + 4], 0x43b40000
call ebx
fstp dword [esi + 0x168]
movss xmm0, dword [esi + 0x100]
subss xmm0, dword [esi + 0x168]
movss dword [esp], xmm0
mov dword [esp + 4], 0x43b40000
call ebx
fstp dword [esi + 0x164]
movss xmm0, dword [esi + 0x164]
mov edx, dword [0x1025adc4]
xorps xmm1, xmm1
xor eax, eax
ucomiss xmm0, xmm1
setae al
xor ecx, ecx
ucomiss xmm1, xmm0
seta cl
cmp dword [edx + 0x190], 2
cmove ecx, eax
movzx eax, cl
inc eax
mov ecx, dword [esi + 0x13c]
mov dword [ecx + 8], eax
mov bl, 1
jmp 0x100b9b74
mov dword [esi + 0x78], 0
xor edi, edi
jmp 0x100b9850
mov edi, dword [esi + 0x118]
inc edi
cmp edi, 3
je 0x100b9aed
mov dword [esi + 0x118], edi
shl edi, 4
movss xmm0, dword [esi + edi + 0xa4]
mulss xmm0, dword [0x101b173c]
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
movsd qword [esi + 0x100], xmm1
movss xmm0, dword [ebx + 0x190]
movaps xmmword [esi + 0x60], xmm0
movsd qword [esp], xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
fstp qword [esi + 0x1a0]
movss xmm0, dword [ebx + 0x194]
movaps xmm1, xmmword [esi + 0x60]
unpcklps xmm1, xmm0
movaps xmmword [esi + 0x60], xmm1
movsd xmm0, qword [esi + 0x100]
movsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
fstp qword [esi + 0x198]
movsd xmm0, qword [esi + 0x1a0]
movhpd xmm0, qword [esi + 0x198]
cvtpd2ps xmm1, xmm0
mulps xmm1, xmmword [0x101b1a60]
addps xmm1, xmmword [esi + 0x60]
movss xmm2, dword [ebx + 0x198]
subss xmm2, dword [esi + 0xf8]
subps xmm1, xmmword [esi + 0x140]
movaps xmm0, xmm1
mulps xmm0, xmm1
shufps xmm0, xmm0, 0x55
movaps xmmword [esi + 0x100], xmm1
mulss xmm1, xmm1
addss xmm1, xmm0
movss dword [esi + 0xd0], xmm2
movaps xmm0, xmm2
mulss xmm0, xmm2
addss xmm0, xmm1
cvtss2sd xmm0, xmm0
ucomisd xmm0, qword [0x101a9fb0]
jb 0x100b9940
sqrtsd xmm0, xmm0
jmp 0x100b9958
movsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
fstp qword [esi + 0x190]
movsd xmm0, qword [esi + 0x190]
xorps xmm3, xmm3
cvtsd2ss xmm3, xmm0
xorps xmm1, xmm1
ucomiss xmm3, xmm1
jbe 0x100b9840
movaps xmm0, xmm3
cmpneqss xmm0, xmm1
movaps xmm1, xmm0
andps xmm1, xmm3
movss xmm2, dword [0x101a8280]
andnps xmm0, xmm2
orps xmm0, xmm1
movss xmm1, dword [esi + 0xd0]
divss xmm1, xmm0
movss dword [esi + 0xd0], xmm1
shufps xmm0, xmm0, 0
movaps xmm1, xmmword [esi + 0x100]
divps xmm1, xmm0
movaps xmmword [esi + 0x100], xmm1
movaps xmm0, xmm3
mulss xmm0, dword [0x101a82c0]
movaps xmmword [esi + 0x50], xmm0
movaps xmm0, xmm3
mulss xmm0, dword [0x101a97f0]
movaps xmmword [esi + 0xe0], xmm0
movaps xmmword [esi + 0x40], xmm3
mulss xmm3, dword [0x101b00e4]
movaps xmmword [esi + 0x120], xmm3
lea edi, [esi + edi + 0xa8]
mov dword [esi + 0x228], 0xffffffff
xorps xmm0, xmm0
movaps xmmword [esi + 0x60], xmm0
jmp 0x100b9a1d
movaps xmm1, xmmword [esi + 0x60]
addss xmm1, dword [0x101a98f4]
movaps xmm0, xmmword [esi + 0x40]
movaps xmmword [esi + 0x60], xmm1
ucomiss xmm0, xmm1
jbe 0x100b9840
mov ecx, dword [0x1025ae2c]
movss xmm0, dword [esi + 0xd0]
movaps xmm1, xmmword [esi + 0x60]
mulss xmm0, xmm1
unpcklps xmm1, xmm1
mulps xmm1, xmmword [esi + 0x100]
addss xmm0, dword [ebx + 0x198]
movsd xmm2, qword [ebx + 0x190]
addps xmm2, xmm1
movlps qword [esi + 0x20], xmm2
movss dword [esi + 0x28], xmm0
mov eax, dword [ecx]
lea edx, [esi + 0x20]
mov dword [esp], edx
mov dword [esp + 8], 0
mov dword [esp + 4], 0x600400b
call dword [eax]
sub esp, 0xc
test eax, 0x600400b
je 0x100b9a00
xor eax, eax
movaps xmm3, xmmword [esi + 0x60]
ucomiss xmm3, dword [esi + 0x50]
seta al
movaps xmm0, xmmword [esi + 0xe0]
cmpltss xmm0, xmm3
movss xmm1, dword [eax*4 + 0x101b1a70]
movaps xmm2, xmm0
andnps xmm2, xmm1
movss xmm1, dword [0x101b1a78]
andps xmm0, xmm1
orps xmm0, xmm2
movaps xmm1, xmmword [esi + 0x120]
cmpltss xmm1, xmm3
movaps xmm2, xmm1
andnps xmm2, xmm0
movss xmm0, dword [0x101a9ae8]
andps xmm1, xmm0
orps xmm1, xmm2
mulss xmm1, dword [0x101a98f4]
addss xmm1, dword [edi]
movss dword [edi], xmm1
mov al, 1
mov dword [esi + 0x78], eax
jmp 0x100b9a00
test byte [esi + 0x78], 1
je 0x100b9b72
movss xmm0, dword [esi + 0xa8]
movaps xmm1, xmm0
subss xmm1, dword [esi + 0xb8]
andps xmm1, xmmword [0x101a97c0]
ucomiss xmm1, dword [0x101a99bc]
jae 0x100b9b2e
subss xmm0, dword [esi + 0xc8]
andps xmm0, xmmword [0x101a97c0]
ucomiss xmm0, dword [0x101a99bc]
jb 0x100b9b72
mov dword [esp], 3
lea ecx, [esi + 0xa0]
lea edx, [esi + 0xd0]
call fcn.100bcb40
movss xmm0, dword [esi + 0xa8]
ucomiss xmm0, dword [0x101b1a7c]
ja 0x100b9b72
mov eax, dword [0x1025adc4]
cmp dword [eax + 0x190], 1
jne 0x100b9b8c
movss xmm0, dword [esi + 0xa4]
jmp 0x100b9735
xor ebx, ebx
mov eax, dword [esi + 0x220]
mov dword fs:[0], eax
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4
mov edi, dword [ebp + 8]
movss xmm0, dword [edi]
addss xmm0, dword [0x101b17e0]
movss dword [esp], xmm0
mov dword [esp + 4], 0x43b40000
mov ebx, dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_remainderf]
call ebx
fstp dword [esi + 0x160]
movss xmm0, dword [esi + 0x160]
movss dword [esi + 0x60], xmm0
movss dword [edi], xmm0
movss xmm0, dword [esi + 0xa4]
movss dword [esp], xmm0
mov dword [esp + 4], 0x43b40000
call ebx
fstp dword [esi + 0x15c]
movss xmm0, dword [esi + 0x15c]
movss dword [esi + 0x100], xmm0
movss xmm0, dword [esi + 0x60]
movss dword [esp], xmm0
mov dword [esp + 4], 0x43b40000
call ebx
fstp dword [esi + 0x158]
movss xmm0, dword [esi + 0x100]
subss xmm0, dword [esi + 0x158]
movss dword [esp], xmm0
mov dword [esp + 4], 0x43b40000
call ebx
fstp dword [esi + 0x154]
movss xmm0, dword [esi + 0x154]
jmp 0x100b97f7
or eax, 1
mov dword [0x102606b4], eax
mov eax, 0xde3f1734
mov ecx, 0x9bd4a67d
mov dword [esi + 0x84], ecx
mov dword [esi + 0x80], eax
mov eax, 0x92399759
mov ecx, 0x64b5ab13
mov dword [esi + 0x8c], ecx
mov dword [esi + 0x88], eax
mov eax, 0x619d5984
mov ecx, 0xc5c435b
mov dword [esi + 0x94], ecx
mov dword [esi + 0x90], eax
mov eax, 0x9db8cf2
mov ecx, 0x7278c207
mov edx, 0xad5e5577
mov edi, 0xefbae318
mov dword [esi + 0x24], edi
mov dword [esi + 0x20], edx
mov edx, 0xbf40e330
mov edi, 0x12eac62d
mov dword [esi + 0x2c], edi
mov dword [esi + 0x28], edx
mov edx, 0x13d23ae1
mov edi, 0x62352432
mov dword [esi + 0x34], edi
mov dword [esi + 0x30], edx
mov dword [esi + 0x9c], ecx
mov dword [esi + 0x98], eax
mov dword [esi + 0x3c], ecx
mov dword [esi + 0x38], eax
xor eax, eax
lea ecx, [esi + 0x20]
movaps xmm0, xmmword [esi + 0x80]
xorps xmm0, xmmword [ecx]
movaps xmmword [esi + 0x80], xmm0
movaps xmm0, xmmword [esi + 0x90]
xorps xmm0, xmmword [ecx + 0x10]
mov eax, dword [0x1025adcc]
mov dword [esi + 0xe0], eax
movaps xmmword [esi + 0x90], xmm0
mov dword [esi + 0x228], 8
lea eax, [esi + 0x80]
mov dword [esp], eax
lea ecx, [esi + 0x200]
mov dword [esi + 0x40], ecx
call fcn.10015170
sub esp, 4
mov eax, dword [esi + 0x210]
mov dword [esi + 0x60], eax
cmp dword [esi + 0x214], 0x10
jb 0x100b9d48
mov eax, dword [esi + 0x200]
mov dword [esi + 0x40], eax
cmp dword [esi + 0x60], 0
je 0x100b9d67
mov eax, dword [esi + 0x60]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x50], ecx
cmp eax, 4
jae 0x100b9d6e
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b9db8
mov ecx, 0x811c9dc5
jmp 0x100b9dd5
mov edi, dword [esi + 0x60]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 0x40]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100b9d7e
cmp dword [esi + 0x50], 0
je 0x100b9dd5
add edx, dword [esi + 0x40]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esi + 0x50], edi
jne 0x100b9dc3
mov edx, dword [esi + 0xe0]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100b9e9d
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esi + 0x60]
cmp eax, dword [ebx + 0x18]
jne 0x100b9e23
cmp dword [ebx + 0x1c], 0x10
jb 0x100b9e06
mov eax, dword [ebx + 8]
jmp 0x100b9e09
lea eax, [ebx + 8]
mov ecx, dword [esi + 0x60]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov eax, dword [esi + 0x40]
mov dword [esp], eax
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x100b9e2c
cmp ebx, edi
je 0x100b9e9d
mov ebx, dword [ebx + 4]
jmp 0x100b9df3
add ebx, 0x20
lea ecx, [esi + 0x200]
call fcn.10015110
mov dword [0x102606b0], ebx
jmp 0x100b9331
mov dword [esi + 0x228], 7
mov dword [esp], str.invalid_unordered_map_K__T__key
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
mov dword [esi + 0x228], 3
mov dword [esp], str.invalid_unordered_map_K__T__key
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
mov dword [esi + 0x228], 5
mov dword [esp], str.invalid_unordered_map_K__T__key
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
mov dword [esi + 0x228], 1
mov dword [esp], str.invalid_unordered_map_K__T__key
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
mov dword [esi + 0x228], 9
mov dword [esp], str.invalid_unordered_map_K__T__key
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
nop word cs:[eax + eax]
push ebp
sub esp, 0x1c
lea esi, [ebp - 0x22c]
mov ebp, dword [esi + 0x218]
lea ecx, [esi + 0x200]
call fcn.10015110
add esp, 0x1c
pop ebp
ret