Function at 0x100b2d90
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x164
mov eax, dword [0x10428e00]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
mov edi, ecx
mov dword [ebp - 0x28], edi
call fcn.10003030
mov esi, eax
call fcn.10004430
push 0
push 0
push 0x101bce70
sub esp, 0xc
lea eax, [ebp - 0xa0]
fstp dword [ebp - 0x18]
movss xmm0, dword [ebp - 0x18]
mov ecx, esi
mov dword [esp + 8], 0xbf800000
mov dword [esp + 4], 0x7f7fffff
movss dword [esp], xmm0
push eax
call fcn.100017cb
movss xmm0, dword [eax]
movss dword [ebp - 0x18], xmm0
call fcn.100014d3
fmul dword [edi]
lea eax, [edi + 0xb4]
movss xmm0, dword [ebp - 0x18]
mov esi, eax
movss dword [edi + 0x218], xmm0
mov dword [ebp - 0xb8], eax
fstp dword [ebp - 0x2c]
movss xmm0, dword [ebp - 0x2c]
movss dword [edi + 0x21c], xmm0
mov edi, 0x15
nop dword [eax]
push dword [esi - 0x54]
lea eax, [ebp - 0x134]
push eax
call fcn.100035f3
call fcn.1000443f
movss xmm0, dword [ebp - 0x128]
mulss xmm0, dword [eax]
lea eax, [ebp - 0x134]
push eax
movss dword [ebp - 0x128], xmm0
call fcn.10001eab
add esp, 0xc
mov dword [esi], eax
lea esi, [esi + 4]
sub edi, 1
jne 0x100b2e30
lea eax, [ebp - 0x90]
push eax
call fcn.10001951
add esp, 4
call fcn.1000416f
mov edi, dword [ebp - 0x28]
mov dword [ebp - 0x38], eax
cmp byte [edi + 0x40], 0
movss xmm0, dword [edi + 0x44]
movss dword [ebp - 0x6c], xmm0
je 0x100b2eaf
push ecx
mov byte [edi + 0x40], 0
mov dword [esp], 0
call fcn.10001712
add esp, 4
lea eax, [ebp - 0xf4]
push eax
call fcn.1000166d
call fcn.10001618
fstp dword [ebp - 0x64]
call fcn.100033f5
fstp dword [ebp - 0x48]
movss xmm0, dword [ebp - 0x48]
divss xmm0, dword [edi + 0x21c]
push ecx
movss dword [ebp - 0x18], xmm0
fld dword [ebp - 0x18]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_floor
movss xmm0, dword [ebp - 0x8c]
addss xmm0, dword [ebp - 0x48]
mov ecx, dword [edi + 8]
sub ecx, dword [edi + 4]
fstp dword [ebp - 0x44]
cvttss2si eax, dword [ebp - 0x44]
divss xmm0, dword [edi + 0x21c]
mov dword [ebp - 0x30], eax
mov eax, 0x2aaaaaab
imul ecx
movss dword [ebp - 0x18], xmm0
fld dword [ebp - 0x18]
fstp qword [esp]
sar edx, 1
mov esi, edx
shr esi, 0x1f
add esi, edx
call sub.api_ms_win_crt_math_l1_1_0.dll_floor
cvttss2si ecx, dword [ebp - 0x44]
add esp, 8
fstp dword [ebp - 0x18]
cvttss2si edx, dword [ebp - 0x18]
add edx, ecx
lea ecx, [esi - 1]
cmp ecx, edx
mov eax, ecx
cmovge eax, edx
test eax, eax
jns 0x100b2f58
mov dword [ebp - 0x48], 0
jmp 0x100b2f60
cmp ecx, edx
cmovl edx, ecx
mov dword [ebp - 0x48], edx
push esi
push 0x101bce74
lea eax, [ebp - 0x14]
push 0x10
push eax
call fcn.10003409
add esp, 0x10
call fcn.10003030
mov esi, eax
call fcn.10004430
push 0
push 0
lea eax, [ebp - 0x14]
mov ecx, esi
push eax
sub esp, 0xc
lea eax, [ebp - 0xa0]
fstp dword [ebp - 0x18]
movss xmm0, dword [ebp - 0x18]
mov dword [esp + 8], 0xbf800000
mov dword [esp + 4], 0x7f7fffff
movss dword [esp], xmm0
push eax
call fcn.100017cb
movd xmm0, dword [edi + 0x48]
cvtdq2ps xmm0, xmm0
addss xmm0, dword [eax]
movss dword [edi + 0x44], xmm0
mov eax, dword [edi + 4]
cmp eax, dword [edi + 8]
je 0x100b3e3b
call fcn.10003030
mov esi, eax
call fcn.10004430
push 0
push 0
push 0x101aaccc
sub esp, 0xc
lea eax, [ebp - 0xa0]
fstp dword [ebp - 0x18]
movss xmm0, dword [ebp - 0x18]
mov ecx, esi
mov dword [esp + 8], 0xbf800000
mov dword [esp + 4], 0x7f7fffff
movss dword [esp], xmm0
push eax
call fcn.100017cb
movss xmm0, dword [eax]
cvttss2si eax, dword [ebp - 0x44]
movss dword [ebp - 0x68], xmm0
cmp eax, dword [ebp - 0x48]
jg 0x100b3e3b
lea ecx, [edi + 0x210]
mov dword [ebp - 0x78], ecx
lea ecx, [edi + 0x20]
mov dword [ebp - 0xb4], ecx
nop
movss xmm1, dword [ebp - 0xf4]
lea ecx, [eax + eax*2]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x58], ecx
mov ecx, dword [edi + 4]
mov dword [ebp - 0x5c], ecx
mov ecx, edi
push eax
movss dword [ebp - 0x50], xmm1
mulss xmm0, dword [edi + 0x21c]
addss xmm1, dword [edi + 0x44]
addss xmm0, dword [ebp - 0xf0]
movss dword [ebp - 0x60], xmm1
movss dword [ebp - 0x44], xmm0
movss dword [ebp - 0x4c], xmm0
call fcn.10002f22
mov esi, eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x118], esi
test eax, eax
jns 0x100b30b6
push 0x4a
push str.C:UsersilyaDownloads_shiiitMenuImGuicode_editor.h
push str.aLine___0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
test esi, esi
jns 0x100b30cf
push 0x4b
push str.C:UsersilyaDownloads_shiiitMenuImGuicode_editor.h
push str.aColumn___0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
lea eax, [ebp - 0x11c]
mov ecx, edi
push eax
call fcn.10002aef
fadd dword [edi + 0x44]
fstp dword [ebp - 0x18]
movss xmm0, dword [ebp - 0x18]
comiss xmm0, dword [ebp - 0x6c]
jbe 0x100b315a
mov ecx, dword [ebp - 0x30]
push ecx
mov ecx, edi
call fcn.10002f22
mov esi, eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x138], esi
test eax, eax
jns 0x100b3123
push 0x4a
push str.C:UsersilyaDownloads_shiiitMenuImGuicode_editor.h
push str.aLine___0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
test esi, esi
jns 0x100b313c
push 0x4b
push str.C:UsersilyaDownloads_shiiitMenuImGuicode_editor.h
push str.aColumn___0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
lea eax, [ebp - 0x13c]
mov ecx, edi
push eax
call fcn.10002aef
fadd dword [edi + 0x44]
fstp dword [ebp - 0x18]
movss xmm0, dword [ebp - 0x18]
movss dword [ebp - 0x6c], xmm0
mov esi, dword [ebp - 0x30]
test esi, esi
jns 0x100b31a6
push 0x4a
push str.C:UsersilyaDownloads_shiiitMenuImGuicode_editor.h
push str.aLine___0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
mov ecx, edi
push esi
call fcn.10002f22
mov ecx, dword [ebp - 0x30]
mov esi, eax
push 0x4a
push str.C:UsersilyaDownloads_shiiitMenuImGuicode_editor.h
push str.aLine___0
mov dword [ebp - 0x88], ecx
mov dword [ebp - 0x84], esi
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
jmp 0x100b31bf
push esi
mov ecx, edi
call fcn.10002f22
mov ecx, dword [ebp - 0x30]
mov esi, eax
mov dword [ebp - 0x88], ecx
mov dword [ebp - 0x84], esi
test esi, esi
jns 0x100b31d8
push 0x4b
push str.C:UsersilyaDownloads_shiiitMenuImGuicode_editor.h
push str.aColumn___0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
movss xmm1, dword [0x101a4360]
mov eax, dword [edi + 0x10]
movaps xmm2, xmm1
mov edx, dword [ebp - 0x30]
movss dword [ebp - 0x20], xmm1
movss dword [ebp - 0x2c], xmm2
cmp eax, edx
je 0x100b31fc
setl cl
jmp 0x100b3202
cmp dword [edi + 0x14], esi
setle cl
test cl, cl
je 0x100b323a
cmp eax, edx
jne 0x100b320e
cmp dword [edi + 0x14], 0
setg al
test al, al
je 0x100b3232
lea eax, [edi + 0x10]
mov ecx, edi
push eax
call fcn.10002aef
movss xmm2, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x30]
fstp dword [ebp - 0x18]
movss xmm0, dword [ebp - 0x18]
jmp 0x100b3235
xorps xmm0, xmm0
movss dword [ebp - 0x20], xmm0
mov eax, dword [edi + 0x18]
lea ecx, [edi + 0x18]
cmp eax, edx
jne 0x100b3248
cmp dword [ecx + 4], 0
setg cl
test cl, cl
je 0x100b327c
cmp eax, edx
jne 0x100b3256
cmp dword [edi + 0x1c], esi
setl cl
lea eax, [ebp - 0x88]
test cl, cl
lea esi, [edi + 0x18]
mov ecx, edi
cmovne eax, esi
push eax
call fcn.10002aef
mov edx, dword [ebp - 0x30]
fstp dword [ebp - 0x18]
movss xmm2, dword [ebp - 0x18]
jmp 0x100b327f
lea esi, [edi + 0x18]
cmp dword [esi], edx
jle 0x100b328b
addss xmm2, dword [edi + 0x218]
movss xmm0, dword [ebp - 0x20]
movss xmm1, dword [0x101a4360]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x100b331f
ucomiss xmm2, xmm1
lahf
test ah, 0x44
jnp 0x100b331f
comiss xmm2, xmm0
mov esi, dword [ebp - 0x38]
jbe 0x100b3322
movss xmm1, dword [ebp - 0x50]
lea eax, [ebp - 0xc4]
addss xmm1, dword [edi + 0x44]
push 0xf
push ecx
mov dword [esp], 0
mov ecx, esi
push dword [edi + 0xec]
addss xmm0, xmm1
addss xmm2, xmm1
push eax
lea eax, [ebp - 0xcc]
push eax
movss dword [ebp - 0xcc], xmm0
movss xmm0, dword [ebp - 0x4c]
movss dword [ebp - 0xc8], xmm0
addss xmm0, dword [edi + 0x21c]
movss dword [ebp - 0xc4], xmm2
movss dword [ebp - 0xc0], xmm0
call fcn.100029a0
mov edx, dword [ebp - 0x30]
jmp 0x100b3322
mov esi, dword [ebp - 0x38]
inc edx
movss xmm0, dword [ebp - 0x50]
mov eax, edx
mov dword [ebp - 0x18], edx
shr eax, 8
movzx ecx, al
addss xmm0, dword [ebp - 0x64]
movzx eax, dl
xor eax, 0x811c9dc5
imul eax, eax, 0x1000193
movss dword [ebp - 0x74], xmm0
movss xmm0, dword [ebp - 0x4c]
movss dword [ebp - 0x20], xmm0
xor ecx, eax
movss dword [ebp - 0x70], xmm0
imul ecx, ecx, 0x1000193
mov eax, edx
shr eax, 0x10
movzx eax, al
xor ecx, eax
mov eax, edx
imul ecx, ecx, 0x1000193
shr eax, 0x18
xor ecx, eax
imul eax, ecx, 0x1000193
lea ecx, [edi + 0x1f0]
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x154]
push eax
call fcn.100050ce
cmp dword [eax + 4], 0
je 0x100b33ff
movss xmm0, dword [ebp - 0x90]
lea eax, [ebp - 0xd4]
movss xmm1, dword [ebp - 0x64]
addss xmm0, dword [ebp - 0x50]
addss xmm1, xmm1
push 0xf
push ecx
mov dword [esp], 0
mov ecx, esi
push dword [edi + 0xf4]
addss xmm1, xmm0
movss xmm0, dword [ebp - 0x20]
addss xmm0, dword [edi + 0x21c]
push eax
lea eax, [ebp - 0x74]
push eax
movss dword [ebp - 0xd4], xmm1
movss dword [ebp - 0xd0], xmm0
call fcn.100029a0
movss xmm0, dword [ebp - 0x4c]
movss dword [ebp - 0x20], xmm0
mov edi, dword [ebp - 0x30]
lea eax, [ebp - 0x18]
mov ecx, dword [ebp - 0x78]
inc edi
push eax
lea eax, [ebp - 0x130]
mov dword [ebp - 0x18], edi
push eax
call fcn.10004246
mov esi, dword [ebp - 0x128]
cmp byte [esi + 0xd], 0
jne 0x100b3535
cmp edi, dword [esi + 0x10]
jl 0x100b3535
mov eax, dword [ebp - 0x78]
cmp esi, dword [eax]
je 0x100b3535
movss xmm0, dword [ebp - 0x90]
movss xmm1, dword [ebp - 0x64]
addss xmm0, dword [ebp - 0x50]
mov eax, dword [ebp - 0x28]
addss xmm1, xmm1
push 0xf
push ecx
mov ecx, dword [ebp - 0x38]
mov dword [esp], 0
push dword [eax + 0xf0]
addss xmm1, xmm0
movss xmm0, dword [ebp - 0x20]
addss xmm0, dword [eax + 0x21c]
lea eax, [ebp - 0xa8]
push eax
lea eax, [ebp - 0x74]
push eax
movss dword [ebp - 0xa8], xmm1
movss dword [ebp - 0xa4], xmm0
call fcn.100029a0
push 1
lea eax, [ebp - 0xa8]
push eax
lea eax, [ebp - 0x50]
push eax
call fcn.10001d84
add esp, 0xc
test al, al
je 0x100b3535
call fcn.10004f07
movups xmm0, xmmword [0x101c13f0]
lea eax, [ebp - 0x14c]
push eax
push 0
movups xmmword [ebp - 0x14c], xmm0
call fcn.100046a1
push dword [esi + 0x10]
push str.Error_at_line__d:
call fcn.10003229
push 1
call fcn.1000404d
call fcn.10004a43
movups xmm0, xmmword [0x101c13f0]
lea eax, [ebp - 0x14c]
push eax
push 0
movups xmmword [ebp - 0x14c], xmm0
call fcn.100046a1
add esi, 0x14
add esp, 0x1c
cmp dword [esi + 0x14], 0xf
jbe 0x100b351b
mov esi, dword [esi]
push esi
push 0x101bce94
call fcn.10003229
push 1
call fcn.1000404d
add esp, 0xc
call fcn.10004412
mov edi, dword [ebp - 0x30]
lea eax, [edi + 1]
push eax
push 0x101bce98
lea eax, [ebp - 0x14]
push 0x10
push eax
call fcn.10003409
add esp, 0x10
call fcn.10003030
mov esi, eax
call fcn.10004430
push 0
push 0
lea eax, [ebp - 0x14]
mov ecx, esi
push eax
sub esp, 0xc
lea eax, [ebp - 0x15c]
fstp dword [ebp - 0x18]
movss xmm0, dword [ebp - 0x18]
mov dword [esp + 8], 0xbf800000
mov dword [esp + 4], 0x7f7fffff
movss dword [esp], xmm0
push eax
call fcn.100017cb
mov esi, dword [ebp - 0x28]
movss xmm0, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x38]
push 0
addss xmm0, dword [esi + 0x44]
subss xmm0, dword [eax]
lea eax, [ebp - 0x14]
push eax
push dword [esi + 0xf8]
lea eax, [ebp - 0xdc]
movss dword [ebp - 0xdc], xmm0
movss xmm0, dword [ebp - 0x4c]
push eax
movss dword [ebp - 0xd8], xmm0
call fcn.10003aa8
cmp dword [esi + 0x20], edi
lea eax, [esi + 0x20]
jne 0x100b3897
push 0
call fcn.10002e19
mov ecx, dword [esi + 0x18]
add esp, 4
mov byte [ebp - 0x19], al
cmp ecx, dword [esi + 0x10]
jne 0x100b35fc
mov eax, dword [esi + 0x1c]
cmp eax, dword [esi + 0x14]
mov al, byte [ebp - 0x19]
setg cl
test cl, cl
jne 0x100b368b
movss xmm0, dword [ebp - 0x74]
addss xmm0, dword [ebp - 0x90]
movzx eax, al
push 0xf
push ecx
mov ecx, dword [ebp - 0x38]
xor eax, 1
addss xmm0, dword [ebp - 0x64]
mov dword [esp], 0
push dword [esi + eax*4 + 0xfc]
lea eax, [ebp - 0xb0]
movss dword [ebp - 0xb0], xmm0
movss xmm0, dword [ebp - 0x70]
addss xmm0, dword [esi + 0x21c]
push eax
lea eax, [ebp - 0x74]
push eax
movss dword [ebp - 0xac], xmm0
call fcn.100029a0
push ecx
mov dword [esp], 0x3f800000
lea eax, [ebp - 0xb0]
push 0xf
push ecx
mov ecx, dword [ebp - 0x38]
mov dword [esp], 0x3f800000
push dword [esi + 0x104]
push eax
lea eax, [ebp - 0x74]
push eax
call fcn.100019e2
cmp byte [ebp - 0x19], 0
je 0x100b3890
mov byte [0x109c373d], 1
call sub.MSVCP140.dll__Xtime_get_ticks
push 0
push 0x2710
push edx
push eax
call fcn.10004c2d
mov edi, eax
mov dword [ebp - 0x34], eax
sub edi, dword [esi + 0x248]
mov ecx, edx
mov eax, edx
mov dword [ebp - 0x24], ecx
sbb eax, dword [esi + 0x24c]
mov dword [ebp - 0x40], eax
jne 0x100b36d8
cmp edi, 0x190
jbe 0x100b3897
movss xmm0, dword [0x101a3ffc]
lea eax, [esi + 0x20]
push eax
mov ecx, esi
movss dword [ebp - 0x20], xmm0
call fcn.10001e42
push dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x28]
mov esi, eax
call fcn.10002aef
mov eax, dword [ebp - 0x28]
fstp dword [ebp - 0x18]
movss xmm2, dword [ebp - 0x18]
movss dword [ebp - 0x3c], xmm2
cmp byte [eax + 0x3c], 0
je 0x100b3808
mov edx, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x58]
mov eax, dword [edx + ecx*4]
mov ecx, dword [edx + ecx*4 + 4]
sub ecx, eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jge 0x100b3808
mov edx, dword [ebp - 0x58]
lea eax, [esi + esi*2]
mov esi, dword [ebp - 0x5c]
mov ecx, dword [esi + edx*4]
mov al, byte [ecx + eax*4]
cmp al, 9
jne 0x100b37b4
mov eax, dword [ebp - 0x28]
xorps xmm1, xmm1
movaps xmm0, xmm2
sub esp, 8
addss xmm0, dword [0x101a3ffc]
cvtsi2ss xmm1, dword [eax + 0x38]
mulss xmm1, dword [ebp - 0x68]
divss xmm0, xmm1
movss dword [ebp - 0x2c], xmm1
movss dword [ebp - 0x18], xmm0
fld dword [ebp - 0x18]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_floor
movss xmm2, dword [ebp - 0x3c]
add esp, 8
fstp dword [ebp - 0x18]
fld dword [ebp - 0x18]
fstp dword [ebp - 0x18]
movss xmm1, dword [ebp - 0x18]
addss xmm1, dword [0x101a3ffc]
mulss xmm1, dword [ebp - 0x2c]
subss xmm1, xmm2
jmp 0x100b380d
mov byte [ebp - 0x54], al
mov byte [ebp - 0x53], 0
call fcn.10003030
mov esi, eax
call fcn.10004430
push 0
push 0
lea eax, [ebp - 0x54]
mov ecx, esi
push eax
sub esp, 0xc
lea eax, [ebp - 0x164]
fstp dword [ebp - 0x18]
movss xmm0, dword [ebp - 0x18]
mov dword [esp + 8], 0xbf800000
mov dword [esp + 4], 0x7f7fffff
movss dword [esp], xmm0
push eax
call fcn.100017cb
movss xmm2, dword [ebp - 0x3c]
movss xmm1, dword [eax]
jmp 0x100b380d
movss xmm1, dword [ebp - 0x20]
addss xmm2, dword [ebp - 0x60]
mov esi, dword [ebp - 0x28]
lea eax, [ebp - 0xe4]
movss xmm0, dword [ebp - 0x4c]
push 0xf
push ecx
mov ecx, dword [ebp - 0x38]
addss xmm1, xmm2
mov dword [esp], 0
push dword [esi + 0xe8]
movss dword [ebp - 0xe8], xmm0
addss xmm0, dword [esi + 0x21c]
push eax
lea eax, [ebp - 0xec]
movss dword [ebp - 0xec], xmm2
push eax
movss dword [ebp - 0xe4], xmm1
movss dword [ebp - 0xe0], xmm0
call fcn.100029a0
cmp dword [ebp - 0x40], 0
ja 0x100b387a
cmp edi, 0x320
jbe 0x100b3897
mov eax, dword [ebp - 0x34]
mov ecx, esi
mov dword [ecx + 0x248], eax
mov eax, dword [ebp - 0x24]
mov dword [ecx + 0x24c], eax
jmp 0x100b3899
mov byte [0x109c373d], 0
mov ecx, esi
mov eax, dword [ebp - 0x58]
mov edx, dword [ebp - 0x5c]
mov edi, dword [edx + eax*4 + 4]
mov esi, dword [edx + eax*4]
cmp esi, edi
jne 0x100b38b4
mov eax, dword [ebp - 0xb8]
mov eax, dword [eax]
jmp 0x100b38ba
push esi
call fcn.10004179
mov dword [ebp - 0x20], eax
sub edi, esi
mov eax, 0x2aaaaaab
xor ecx, ecx
imul edi
xorps xmm0, xmm0
xorps xmm2, xmm2
movss dword [ebp - 0x34], xmm0
mov dword [ebp - 0x40], ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x100b3dcc
mov edi, dword [ebp - 0x28]
lea eax, [ecx + ecx*2]
mov ecx, edi
lea esi, [esi + eax*4]
push esi
mov dword [ebp - 0x2c], esi
call fcn.10004179
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x3c], eax
cmp eax, ecx
jne 0x100b3916
mov cl, byte [esi]
cmp cl, 9
je 0x100b3913
cmp cl, 0x20
jne 0x100b39e9
mov ecx, dword [ebp - 0x20]
cmp dword [edi + 0x240], 0
je 0x100b39e9
cmp dword [edi + 0x244], 0xf
lea esi, [edi + 0x230]
movss xmm0, dword [ebp - 0x60]
xorps xmm1, xmm1
addss xmm0, dword [ebp - 0x34]
mov eax, esi
movss dword [ebp - 0x124], xmm0
movss xmm0, dword [ebp - 0x44]
addss xmm0, xmm1
movss dword [ebp - 0x120], xmm0
jbe 0x100b395c
mov eax, dword [esi]
push 0
push eax
push ecx
mov ecx, dword [ebp - 0x38]
lea eax, [ebp - 0x124]
push eax
call fcn.10003aa8
call fcn.10003030
cmp dword [esi + 0x14], 0xf
mov edi, esi
mov dword [ebp - 0x18], eax
jbe 0x100b3981
mov edi, dword [esi]
call fcn.10004430
mov ecx, dword [ebp - 0x18]
lea eax, [ebp - 0xa0]
push 0
push 0
push edi
sub esp, 0xc
fstp dword [ebp - 0x24]
movss xmm0, dword [ebp - 0x24]
mov dword [esp + 8], 0xbf800000
mov dword [esp + 4], 0x7f7fffff
movss dword [esp], xmm0
push eax
call fcn.100017cb
movss xmm2, dword [ebp - 0xa0]
addss xmm2, dword [ebp - 0x34]
mov dword [esi + 0x10], 0
cmp dword [esi + 0x14], 0xf
movss dword [ebp - 0x34], xmm2
jbe 0x100b39db
mov esi, dword [esi]
mov eax, dword [ebp - 0x3c]
mov edi, dword [ebp - 0x28]
mov byte [esi], 0
mov esi, dword [ebp - 0x2c]
jmp 0x100b39ee
movss xmm2, dword [ebp - 0x34]
mov cl, byte [esi]
mov dword [ebp - 0x20], eax
cmp cl, 9
jne 0x100b3b73
movd xmm0, dword [edi + 0x38]
sub esp, 8
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x2c], xmm2
mulss xmm0, dword [ebp - 0x68]
addss xmm2, dword [0x101a3ffc]
movss dword [ebp - 0x18], xmm0
divss xmm2, xmm0
movss dword [ebp - 0x24], xmm2
fld dword [ebp - 0x24]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_floor
inc dword [ebp - 0x40]
add esp, 8
cmp byte [edi + 0x5f], 0
fstp dword [ebp - 0x24]
fld dword [ebp - 0x24]
fstp dword [ebp - 0x24]
movss xmm0, dword [ebp - 0x24]
addss xmm0, dword [0x101a3ffc]
mulss xmm0, dword [ebp - 0x18]
movss dword [ebp - 0x34], xmm0
je 0x100b3d9f
call fcn.10004430
movss xmm0, dword [ebp - 0x44]
lea eax, [ebp - 0x98]
movss xmm3, dword [ebp - 0x34]
xorps xmm5, xmm5
addss xmm3, dword [ebp - 0x60]
addss xmm0, xmm5
mov esi, dword [ebp - 0x38]
fstp dword [ebp - 0x24]
movss xmm2, dword [ebp - 0x24]
movaps xmm1, xmm2
mulss xmm2, dword [0x101a3fe8]
push ecx
mulss xmm1, dword [0x101a3ff4]
mov ecx, esi
mov dword [esp], 0x3f800000
subss xmm3, dword [0x101a3ffc]
push 0x90909090
addss xmm1, xmm0
movss xmm0, dword [ebp - 0x2c]
addss xmm0, dword [ebp - 0x60]
push eax
movss dword [ebp - 0x98], xmm3
lea eax, [ebp - 0xfc]
subss xmm3, xmm2
push eax
addss xmm0, dword [0x101a3ffc]
movss dword [ebp - 0xf8], xmm1
movss dword [ebp - 0x94], xmm1
movss dword [ebp - 0x104], xmm3
movss dword [ebp - 0x10c], xmm3
movss dword [ebp - 0xfc], xmm0
movaps xmm0, xmm1
subss xmm0, xmm2
addss xmm2, xmm1
movss dword [ebp - 0x100], xmm0
movss dword [ebp - 0x108], xmm2
call fcn.100047f5
push ecx
mov dword [esp], 0x3f800000
lea eax, [ebp - 0x104]
push 0x90909090
push eax
lea eax, [ebp - 0x98]
mov ecx, esi
push eax
call fcn.100047f5
push ecx
mov dword [esp], 0x3f800000
lea eax, [ebp - 0x10c]
push 0x90909090
push eax
lea eax, [ebp - 0x98]
mov ecx, esi
push eax
call fcn.100047f5
jmp 0x100b3d9a
cmp cl, 0x20
jne 0x100b3c08
cmp byte [edi + 0x5f], 0
je 0x100b3bf1
movss xmm1, dword [ebp - 0x60]
movss xmm0, dword [ebp - 0x68]
addss xmm1, xmm2
mulss xmm0, dword [0x101a3ff4]
addss xmm1, xmm0
movss dword [ebp - 0x114], xmm1
call fcn.10004430
movss xmm0, dword [ebp - 0x44]
lea eax, [ebp - 0x114]
fmul dword [0x101a3ff4]
xorps xmm1, xmm1
addss xmm0, xmm1
push 4
push 0x80808080
push ecx
mov ecx, dword [ebp - 0x38]
movss dword [ebp - 0x24], xmm0
fadd dword [ebp - 0x24]
mov dword [esp], 0x3fc00000
push eax
fstp dword [ebp - 0x24]
movss xmm0, dword [ebp - 0x24]
movss dword [ebp - 0x110], xmm0
call fcn.10003a9e
movss xmm0, dword [ebp - 0x34]
addss xmm0, dword [ebp - 0x68]
inc dword [ebp - 0x40]
movss dword [ebp - 0x34], xmm0
jmp 0x100b3d9f
mov al, cl
and al, 0xfe
cmp al, 0xfc
jne 0x100b3c17
mov eax, 6
jmp 0x100b3c50
mov al, cl
and al, 0xfc
cmp al, 0xf8
jne 0x100b3c26
mov eax, 5
jmp 0x100b3c50
mov al, cl
and al, 0xf8
cmp al, 0xf0
jne 0x100b3c35
mov eax, 4
jmp 0x100b3c50
mov al, cl
and al, 0xf0
cmp al, 0xe0
jne 0x100b3c44
mov eax, 3
jmp 0x100b3c50
and cl, 0xe0
xor eax, eax
cmp cl, 0xc0
sete al
inc eax
mov esi, dword [ebp - 0x40]
add edi, 0x230
lea edx, [esi + esi*2]
shl edx, 2
nop
mov ecx, dword [ebp - 0x5c]
dec eax
mov dword [ebp - 0x24], eax
inc esi
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x40], esi
mov esi, dword [edi + 0x10]
mov eax, dword [ecx + eax*4]
mov cl, byte [edx + eax]
add edx, 0xc
mov dword [ebp - 0xbc], edx
mov edx, dword [edi + 0x14]
mov byte [ebp - 0x19], cl
mov dword [ebp - 0x18], edx
cmp esi, edx
jae 0x100b3ca9
lea eax, [esi + 1]
mov dword [edi + 0x10], eax
mov eax, edi
cmp edx, 0xf
jbe 0x100b3c9c
mov eax, dword [edi]
mov byte [eax + esi], cl
mov byte [eax + esi + 1], 0
jmp 0x100b3d83
mov eax, Ordinal_2
sub eax, esi
cmp eax, 1
jb 0x100b3ec0
lea ecx, [esi + 1]
or ecx, 0xf
cmp ecx, 0x7fffffff
jbe 0x100b3cce
mov ecx, Ordinal_2
jmp 0x100b3cf2
mov eax, edx
shr eax, 1
mov dword [ebp - 0x3c], eax
mov eax, Ordinal_2
sub eax, dword [ebp - 0x3c]
cmp edx, eax
jbe 0x100b3ce8
mov ecx, Ordinal_2
jmp 0x100b3cf2
mov eax, dword [ebp - 0x3c]
add eax, edx
cmp ecx, eax
cmovb ecx, eax
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x2c], ecx
push eax
push edi
call fcn.100038be
add esp, 8
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x18], 0xf
lea ecx, [esi + 1]
mov dword [edi + 0x10], ecx
mov ecx, dword [ebp - 0x2c]
mov dword [edi + 0x14], ecx
push esi
jbe 0x100b3d69
mov ecx, dword [edi]
push ecx
push eax
mov dword [ebp - 0x2c], ecx
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [ebp - 0x3c]
add esp, 0xc
mov cl, byte [ebp - 0x19]
mov byte [eax + esi], cl
mov ecx, dword [ebp - 0x18]
inc ecx
mov byte [eax + esi + 1], 0
mov eax, dword [ebp - 0x2c]
cmp ecx, 0x1000
jb 0x100b3d5a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b3eba
mov eax, edx
push ecx
push eax
call fcn.10001794
mov eax, dword [ebp - 0x3c]
add esp, 8
jmp 0x100b3d81
push edi
push eax
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [ebp - 0x3c]
add esp, 0xc
mov cl, byte [ebp - 0x19]
mov byte [eax + esi], cl
mov byte [eax + esi + 1], 0
mov dword [edi], eax
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0xbc]
mov esi, dword [ebp - 0x40]
test eax, eax
jg 0x100b3c60
mov edi, dword [ebp - 0x28]
movss xmm0, dword [ebp - 0x34]
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x5c]
mov esi, dword [ecx + eax*4]
mov ecx, dword [ecx + eax*4 + 4]
mov eax, 0x2aaaaaab
sub ecx, esi
imul ecx
mov ecx, dword [ebp - 0x40]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
jb 0x100b38e8
xorps xmm2, xmm2
mov edi, dword [ebp - 0x28]
cmp dword [edi + 0x240], 0
je 0x100b3e2b
cmp dword [edi + 0x244], 0xf
lea esi, [edi + 0x230]
movss xmm1, dword [ebp - 0x60]
mov eax, esi
addss xmm1, xmm0
movss xmm0, dword [ebp - 0x44]
addss xmm0, xmm2
movss dword [ebp - 0x80], xmm1
movss dword [ebp - 0x7c], xmm0
jbe 0x100b3e07
mov eax, dword [esi]
mov ecx, dword [ebp - 0x38]
push 0
push eax
push dword [ebp - 0x20]
lea eax, [ebp - 0x80]
push eax
call fcn.10003aa8
mov dword [esi + 0x10], 0
cmp dword [esi + 0x14], 0xf
jbe 0x100b3e28
mov esi, dword [esi]
mov byte [esi], 0
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp eax, dword [ebp - 0x48]
jle 0x100b3040
mov ecx, dword [edi + 8]
mov eax, 0x2aaaaaab
sub ecx, dword [edi + 4]
movss xmm0, dword [ebp - 0x6c]
addss xmm0, dword [0x101a4004]
imul ecx
movss dword [ebp - 0x80], xmm0
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x101a6ad0]
lea eax, [ebp - 0x80]
push eax
cvtpd2ps xmm0, xmm0
mulss xmm0, dword [edi + 0x21c]
movss dword [ebp - 0x7c], xmm0
call fcn.10003094
add esp, 4
cmp byte [edi + 0x3f], 0
je 0x100b3eaa
mov ecx, edi
call fcn.10002270
call fcn.1000499e
mov byte [edi + 0x3f], 0
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.1000276b
mov esp, ebp
pop ebp
ret
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
call fcn.10002da6
int3