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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x188
push esi
mov esi, dword [0x102a1910]
mov dword [esp + 0xe8], ecx
mov ecx, esi
push edi
mov dword [esp + 0x14], ecx
mov eax, dword [ecx + 0x19b0]
mov byte [eax + 0x8c], 1
mov edi, dword [ecx + 0x19b0]
mov dword [esp + 0x50], edi
cmp byte [edi + 0x8f], 0
jne 0x100b71b3
mov ecx, dword [ebp + 0x14]
mov eax, ecx
shr eax, 0xe
mov edx, ecx
and eax, 0xffffff01
shr edx, 0x14
mov dword [esp + 0x4c], eax
and edx, 0xffffff01
mov eax, ecx
mov dword [esp + 0x40], edx
shr eax, 0xf
and eax, 0xffffff01
mov dword [esp + 0xa8], eax
mov eax, ecx
shr eax, 0x10
not al
and eax, 0xffffff01
mov dword [esp + 0x64], eax
mov eax, ecx
shr eax, 0x12
and eax, 0xffffff01
mov dword [esp + 0x60], eax
test dl, dl
je 0x100b6e43
call fcn.10099cb0
mov esi, dword [0x102a1910]
mov ecx, dword [edi + 0xcc]
xor edx, edx
mov eax, dword [edi + 0xd4]
push dword [eax + ecx*4 - 4]
mov ecx, dword [esp + 0xf0]
call fcn.1008ee40
add esp, 4
mov dword [esp + 0x24], eax
cmp dword [esi + 0x19ec], eax
jne 0x100b6e76
mov dword [esi + 0x19f0], eax
cmp dword [esi + 0x1a20], eax
jne 0x100b6e85
mov byte [esi + 0x1a24], 1
mov eax, dword [esp + 0xec]
mov ecx, eax
cmp eax, 0xffffffff
jae 0x100b6ea9
mov dl, byte [ecx]
test dl, dl
je 0x100b6ea9
cmp dl, 0x23
jne 0x100b6ea3
cmp byte [ecx + 1], dl
je 0x100b6ea9
inc ecx
cmp ecx, 0xffffffff
jb 0x100b6e93
movss xmm1, dword [0x101f0b88]
movss xmm0, dword [esi + 0x18c4]
movss dword [esp + 0xf0], xmm1
cmp eax, ecx
jne 0x100b6ed4
xorps xmm7, xmm7
movss dword [esp + 0x10c], xmm7
jmp 0x100b6f26
push ecx
push ecx
push eax
push ecx
mov ecx, dword [esi + 0x18c0]
lea eax, [esp + 0x94]
mov dword [esp], 0xbf800000
movaps xmm2, xmm0
push eax
call fcn.100ad3c0
movss xmm0, dword [esp + 0x84]
xorps xmm7, xmm7
addss xmm0, dword [0x101f0814]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esp + 0x10c], xmm0
movss xmm0, dword [esp + 0x88]
mov eax, dword [ebp + 0x10]
mov edx, dword [esp + 0x40]
movss xmm3, dword [eax]
movss xmm1, dword [eax + 4]
mov eax, dword [esp + 0x14]
movss dword [esp + 0x80], xmm3
movss dword [esp + 0x74], xmm1
test dl, dl
je 0x100b6f5d
movss xmm0, dword [eax + 0x18c4]
mulss xmm0, dword [0x101f0900]
test byte [esi + 0x1a8c], 1
movss xmm5, dword [eax + 0x154c]
mov ecx, dword [esi + 0x19b0]
movaps xmm2, xmm5
addss xmm2, xmm5
addss xmm2, xmm0
je 0x100b6f89
movss xmm1, dword [esi + 0x1a90]
jmp 0x100b6f91
movss xmm1, dword [ecx + 0x180]
comiss xmm7, xmm1
jbe 0x100b6fc5
mov eax, ecx
cmp dword [eax + 0x1d0], 0
movss xmm0, dword [eax + 0x22c]
je 0x100b6fb1
movss xmm0, dword [eax + 0x20c]
subss xmm0, dword [ecx + 0xd8]
addss xmm1, xmm0
maxss xmm1, dword [0x101f0824]
comiss xmm7, xmm3
cvttss2si eax, xmm1
xorps xmm0, xmm0
xorps xmm4, xmm4
movd xmm6, eax
cvtdq2ps xmm6, xmm6
ja 0x100b6fe2
comiss xmm7, dword [esp + 0x74]
jbe 0x100b7003
cmp dword [ecx + 0x1d0], 0
movss xmm4, dword [ecx + 0x22c]
movss xmm0, dword [ecx + 0x230]
je 0x100b7003
movss xmm4, dword [ecx + 0x20c]
movss xmm1, dword [0x101f08d8]
ucomiss xmm3, xmm7
lahf
test ah, 0x44
jp 0x100b701f
movss dword [esp + 0x80], xmm6
jmp 0x100b7052
comiss xmm7, xmm3
jbe 0x100b704f
movaps xmm6, xmm4
subss xmm6, dword [ecx + 0xd8]
addss xmm6, xmm3
comiss xmm1, xmm6
movss dword [esp + 0x80], xmm6
jb 0x100b7052
movaps xmm6, xmm1
movss dword [esp + 0x80], xmm6
jmp 0x100b7052
movaps xmm6, xmm3
movss xmm3, dword [esp + 0x74]
ucomiss xmm3, xmm7
lahf
test ah, 0x44
jp 0x100b706c
movaps xmm0, xmm2
movss dword [esp + 0x74], xmm0
jmp 0x100b709e
comiss xmm7, xmm3
jbe 0x100b709b
subss xmm0, dword [ecx + 0xdc]
addss xmm3, xmm0
comiss xmm1, xmm3
movss dword [esp + 0x74], xmm3
jb 0x100b7093
movaps xmm0, xmm1
movss dword [esp + 0x74], xmm0
jmp 0x100b709e
movss xmm0, dword [esp + 0x74]
jmp 0x100b709e
movaps xmm0, xmm3
movss xmm1, dword [esp + 0x10c]
comiss xmm1, xmm7
mov esi, dword [esp + 0x14]
jbe 0x100b70bd
movaps xmm2, xmm1
addss xmm2, dword [esi + 0x1560]
jmp 0x100b70c0
xorps xmm2, xmm2
movss xmm4, dword [edi + 0xdc]
movaps xmm1, xmm6
movss xmm3, dword [edi + 0xd8]
addss xmm0, xmm4
movss dword [esp + 0x98], xmm3
addss xmm1, xmm3
movss dword [esp + 0x9c], xmm4
movss dword [esp + 0xb0], xmm3
movss dword [esp + 0xb4], xmm4
movss dword [esp + 0xa4], xmm0
movaps xmm0, xmm6
movss dword [esp + 0xa0], xmm1
addss xmm0, xmm2
mov dword [esp + 0x68], edi
movaps xmm1, xmm4
addss xmm1, dword [esp + 0x74]
addss xmm0, xmm3
movss dword [esp + 0xbc], xmm1
movss dword [esp + 0xb8], xmm0
test dl, dl
je 0x100b724b
mov edi, dword [esp + 0x24]
lea eax, [esp + 0x98]
push eax
mov edx, edi
lea ecx, [esp + 0xb4]
call fcn.10091ce0
add esp, 4
test al, al
jne 0x100b71bb
movss xmm0, dword [esp + 0xb8]
lea ecx, [esp + 0x84]
subss xmm0, dword [esp + 0xb0]
movss xmm1, dword [esi + 0x154c]
movss dword [esp + 0x84], xmm0
movss xmm0, dword [esp + 0xbc]
subss xmm0, dword [esp + 0xb4]
movss dword [esp + 0x88], xmm0
call fcn.10091bb0
call fcn.10099de0
xor al, al
pop edi
pop esi
mov esp, ebp
pop ebp
ret
movss xmm0, dword [esp + 0xa0]
lea edx, [esp + 0x84]
subss xmm0, dword [esp + 0x98]
push ecx
mov ecx, edi
movss dword [esp + 0x88], xmm0
movss xmm0, dword [esp + 0xa8]
subss xmm0, dword [esp + 0xa0]
movss dword [esp + 0x8c], xmm0
call fcn.100949b0
add esp, 4
test al, al
jne 0x100b7219
call fcn.10094830
call fcn.10099de0
xor al, al
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + 0x19b0]
movss xmm0, dword [esp + 0x80]
mov dword [esp + 0x68], ecx
subss xmm0, dword [ecx + 0x80]
mov eax, dword [ecx + 0x144]
or dword [ecx + 0x14c], eax
movss dword [esp + 0x80], xmm0
jmp 0x100b7299
subss xmm1, xmm4
subss xmm0, xmm3
lea ecx, [esp + 0x84]
movss dword [esp + 0x88], xmm1
movaps xmm1, xmm5
movss dword [esp + 0x84], xmm0
call fcn.10091bb0
mov edi, dword [esp + 0x24]
lea eax, [esp + 0x98]
push eax
mov edx, edi
lea ecx, [esp + 0xb4]
call fcn.10091ce0
add esp, 4
test al, al
je 0x100b71b3
mov edx, edi
lea ecx, [esp + 0x98]
call fcn.10091f10
mov byte [esp + 0x1f], al
test al, al
je 0x100b72b9
mov dword [esi + 0x1d38], 1
mov eax, dword [esp + 0x50]
lea edi, [esi + 0x1e08]
mov ecx, dword [esp + 0x24]
xor edx, edx
cmp dword [esi + 0x1e08], ecx
mov ecx, dword [0x102a1910]
mov esi, dword [eax + 0x174]
cmovne edi, edx
mov edx, dword [eax + 0x17c]
mov dword [esp + 0x3c], edi
lea esi, [esi + 1]
mov dword [eax + 0x174], esi
and edx, 5
jne 0x100b730f
mov eax, dword [eax + 0x178]
mov edi, dword [esp + 0x50]
inc eax
mov dword [edi + 0x178], eax
mov edi, dword [esp + 0x3c]
mov eax, dword [esp + 0x50]
cmp dword [ecx + 0x1be4], eax
jne 0x100b738a
cmp esi, dword [ecx + 0x1bec]
je 0x100b733f
test edx, edx
jne 0x100b7375
mov eax, dword [eax + 0x178]
cmp eax, dword [ecx + 0x1bf0]
jne 0x100b7375
mov eax, dword [esp + 0x24]
mov dword [ecx + 0x1af0], eax
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x14]
mov byte [esp + 0x1a], 1
cmp dword [edx + 0x1be4], eax
jne 0x100b7369
mov ecx, dword [esp + 0x50]
mov eax, dword [edx + 0x1bec]
cmp eax, dword [ecx + 0x174]
jne 0x100b7369
mov byte [esp + 0x12], 1
jmp 0x100b7398
mov byte [esp + 0x12], 0
mov byte [esp + 0x37], 1
jmp 0x100b739d
mov eax, dword [esp + 0x24]
cmp dword [ecx + 0x19ec], eax
jne 0x100b738a
xor edx, edx
xor ecx, ecx
call fcn.10091a10
mov edx, dword [esp + 0x14]
mov byte [esp + 0x1a], 0
mov byte [esp + 0x12], 0
mov byte [esp + 0x37], 0
cmp byte [esp + 0x1f], 0
je 0x100b73b2
cmp byte [edx + 0x3d8], 0
mov byte [esp + 0x1c], 1
jne 0x100b73b7
mov byte [esp + 0x1c], 0
mov esi, dword [edx + 0x19ec]
mov eax, dword [esp + 0x24]
cmp esi, eax
je 0x100b73e5
cmp dword [edx + 0x1aec], eax
je 0x100b73de
cmp dword [edx + 0x1ae0], eax
jne 0x100b73e5
cmp dword [edx + 0x1b00], 3
jne 0x100b73e5
mov byte [esp + 0x1b], 1
jmp 0x100b73ea
mov byte [esp + 0x1b], 0
mov eax, dword [esp + 0x40]
test al, al
je 0x100b7434
test edi, edi
je 0x100b7434
test esi, esi
jne 0x100b7434
mov eax, dword [esp + 0x68]
xor edx, edx
mov ecx, dword [eax + 0xcc]
mov eax, dword [eax + 0xd4]
push dword [eax + ecx*4 - 4]
mov ecx, str.SCROLLY
call fcn.1008ee40
mov ecx, dword [esp + 0x18]
add esp, 4
cmp dword [ecx + 0x1a20], eax
jne 0x100b7430
mov byte [esp + 0x1d], 1
jmp 0x100b7446
mov eax, dword [esp + 0x40]
mov byte [esp + 0x1d], 0
test al, al
je 0x100b7471
mov byte [esp + 0x1d], 0
test edi, edi
je 0x100b7471
mov eax, dword [esp + 0x68]
mov ecx, str.SCROLLY
mov edx, dword [eax + 0xcc]
mov eax, dword [eax + 0xd4]
push dword [eax + edx*4 - 4]
xor edx, edx
call fcn.1008ee40
add esp, 4
cmp esi, eax
jne 0x100b7471
mov al, 1
jmp 0x100b7473
xor al, al
mov cl, byte [esp + 0x1b]
mov byte [esp + 0x35], al
mov byte [esp + 0x46], 0
cmp esi, dword [esp + 0x24]
je 0x100b749e
mov edx, dword [ebp + 0x14]
test dl, 0x10
jne 0x100b7492
test cl, cl
je 0x100b749e
cmp byte [esp + 0x40], 0
mov byte [esp + 0x20], 1
je 0x100b74a3
mov byte [esp + 0x20], 0
cmp byte [esp + 0x1a], 0
jne 0x100b74cd
cmp byte [esp + 0x1c], 0
jne 0x100b74cd
cmp byte [esp + 0x1d], 0
jne 0x100b74cd
test cl, cl
jne 0x100b74cd
mov byte [esp + 0x1a], cl
test al, al
jne 0x100b74d2
mov byte [esp + 0x36], al
jmp 0x100b76f6
mov byte [esp + 0x1a], 1
mov eax, dword [esp + 0x24]
mov byte [esp + 0x36], 1
mov dword [esp + 0x3c], edi
cmp esi, eax
je 0x100b76fa
mov edi, dword [esp + 0x14]
mov ecx, dword [ebp + 8]
add edi, 0x1e08
mov dword [esp + 0x3c], edi
mov dword [edi + 0xe60], 0xbe99999a
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100b7505
mov eax, dword [edi + 0x28]
sub ecx, edx
lea esi, [ecx + 1]
cmp esi, eax
jle 0x100b7542
test eax, eax
je 0x100b752b
cdq
sub eax, edx
lea edx, [edi + 0x24]
mov ecx, eax
sar ecx, 1
add ecx, dword [edx + 4]
jmp 0x100b7533
mov ecx, 8
lea edx, [edi + 0x24]
cmp ecx, esi
mov eax, esi
cmovg eax, ecx
mov ecx, edx
push eax
call fcn.1009f6f0
push esi
push dword [ebp + 8]
mov dword [edi + 0x24], esi
push dword [edi + 0x2c]
call sub.VCRUNTIME140.dll_memcpy
mov edx, dword [ebp + 0xc]
lea eax, [edi + 0xc]
mov esi, dword [eax + 4]
inc edx
add esp, 0xc
mov dword [esp + 0x30], edx
cmp edx, esi
jle 0x100b7597
test esi, esi
je 0x100b757b
mov eax, esi
cdq
sub eax, edx
mov edx, dword [esp + 0x30]
mov ecx, eax
sar ecx, 1
add ecx, esi
jmp 0x100b7580
mov ecx, 8
cmp ecx, edx
mov eax, edx
cmovg eax, ecx
lea ecx, [edi + 0xc]
push eax
call fcn.1009f760
mov edx, dword [esp + 0x30]
lea eax, [edi + 0xc]
mov dword [eax], edx
mov ecx, dword [edi + 0x1c]
test ecx, ecx
jns 0x100b75b9
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
xor ecx, ecx
test eax, eax
cmovg ecx, eax
push ecx
lea ecx, [edi + 0x18]
call fcn.1009f6f0
mov ecx, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
dec ecx
mov dword [edi + 0x18], 0
mov edx, dword [edi + 0x14]
mov esi, edx
mov byte [edi + 0x30], 0
mov dword [esp + 0x30], edx
lea ecx, [edx + ecx*2]
cmp edx, ecx
jae 0x100b762d
mov edi, eax
nop dword [eax]
cmp byte [edi], 0
je 0x100b7621
push 0
mov edx, edi
lea ecx, [esp + 0x3c]
call fcn.1008f1c0
add edi, eax
add esp, 4
mov eax, dword [esp + 0x38]
test eax, eax
je 0x100b761d
cmp eax, 0xffff
ja 0x100b760c
mov word [esi], ax
add esi, 2
mov eax, dword [ebp + 0xc]
mov edx, dword [esp + 0x30]
dec eax
lea eax, [edx + eax*2]
cmp esi, eax
jb 0x100b75e0
jmp 0x100b7621
mov edx, dword [esp + 0x30]
mov dword [esp + 0x48], edi
mov edi, dword [esp + 0x3c]
mov eax, dword [esp + 0x48]
sub eax, dword [ebp + 8]
xor ecx, ecx
mov word [esi], cx
sub esi, edx
sar esi, 1
mov dword [edi + 8], eax
mov eax, dword [esp + 0x24]
mov dword [edi + 4], esi
cmp dword [edi], eax
jne 0x100b766b
cmp dword [edi + 0x3c], esi
mov ecx, esi
cmovl ecx, dword [edi + 0x3c]
cmp dword [edi + 0x40], esi
mov dword [edi + 0x3c], ecx
mov ecx, esi
cmovl ecx, dword [edi + 0x40]
cmp dword [edi + 0x44], esi
mov dword [edi + 0x40], ecx
cmovl esi, dword [edi + 0x44]
mov dword [edi + 0x44], esi
jmp 0x100b76c4
mov dword [edi], eax
mov dword [edi + 0x38], ecx
mov dword [edi + 0xe58], ecx
mov dword [edi + 0x40], ecx
mov dword [edi + 0x44], ecx
mov dword [edi + 0x3c], ecx
mov dword [edi + 0x50], ecx
mov ecx, dword [esp + 0x40]
mov al, cl
xor al, 1
mov dword [edi + 0xe52], 0x630000
mov dword [edi + 0xe5c], 0x3e7
mov dword [edi + 0x48], 0x10000
mov byte [edi + 0x4c], al
test cl, cl
jne 0x100b76c8
mov ecx, dword [esp + 0x20]
mov eax, 1
cmp byte [esp + 0x12], 0
movzx ecx, cl
cmovne ecx, eax
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x40]
test dword [ebp + 0x14], 0x2000
je 0x100b76d5
mov byte [edi + 0x48], 1
test cl, cl
jne 0x100b76f6
cmp byte [esp + 0x37], cl
jne 0x100b76f1
cmp byte [esp + 0x1c], cl
je 0x100b76f6
mov eax, dword [esp + 0x14]
cmp byte [eax + 0x100], cl
je 0x100b76f6
mov byte [esp + 0x20], 1
mov eax, dword [esp + 0x24]
mov esi, dword [esp + 0x14]
cmp dword [esi + 0x19ec], eax
je 0x100b77b3
cmp byte [esp + 0x1a], 0
je 0x100b77ab
mov edx, dword [esp + 0x50]
mov ecx, eax
call fcn.10091a10
mov ecx, dword [esp + 0x24]
call fcn.10091af0
mov ecx, edx
call fcn.10099510
mov eax, dword [esi + 0x1a00]
mov edx, dword [ebp + 0x14]
or eax, 3
cmp byte [esp + 0x40], 0
mov dword [esi + 0x1a00], eax
jne 0x100b774d
test dl, dl
jns 0x100b7756
or eax, 0xc
mov dword [esi + 0x1a00], eax
mov eax, dword [esi + 0x1a08]
or dword [esi + 0x1a04], 2
or eax, 0x180
cmp byte [esp + 0x40], 0
mov ecx, dword [esi + 0x1a0c]
mov dword [esi + 0x1a08], eax
mov dword [esi + 0x1a0c], ecx
je 0x100b7790
or eax, 0x60
mov dword [esi + 0x1a0c], ecx
mov dword [esi + 0x1a08], eax
test edx, 0x440
je 0x100b77a7
or eax, 1
mov dword [esi + 0x1a0c], ecx
mov dword [esi + 0x1a08], eax
mov eax, dword [esp + 0x24]
cmp dword [esi + 0x19ec], eax
jne 0x100b77ec
test edi, edi
jne 0x100b77c4
xor edx, edx
xor ecx, ecx
call fcn.10091a10
mov eax, dword [esp + 0x24]
cmp dword [esi + 0x19ec], eax
jne 0x100b77ec
cmp byte [esi + 0x3d8], 0
je 0x100b77f7
cmp byte [esp + 0x36], 0
jne 0x100b77f7
cmp byte [esp + 0x1a], 0
jne 0x100b77f7
mov byte [esp + 0x46], 1
mov cl, 1
jmp 0x100b77fd
test edi, edi
je 0x100b77fb
cmp byte [esp + 0x35], 0
je 0x100b77fb
mov cl, 1
jmp 0x100b77fd
xor cl, cl
mov byte [esp + 0x1a], cl
test edi, edi
je 0x100b7818
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
je 0x100b7818
test cl, cl
je 0x100b7818
mov edx, 1
jmp 0x100b781a
xor dl, dl
cmp byte [esp + 0x4c], 0
mov dword [esp + 0x78], edx
mov byte [esp + 0x56], dl
mov byte [esp + 0x57], 0
mov byte [esp + 0x37], 0
je 0x100b7938
test edi, edi
je 0x100b7938
test cl, cl
jne 0x100b784b
test dl, dl
je 0x100b7940
mov ecx, dword [ebp + 0xc]
mov eax, dword [edi + 0x10]
lea esi, [ecx + 1]
cmp esi, eax
jle 0x100b7885
test eax, eax
je 0x100b786b
cdq
sub eax, edx
lea edx, [edi + 0xc]
mov ecx, eax
sar ecx, 1
add ecx, dword [edx + 4]
jmp 0x100b7873
mov ecx, 8
lea edx, [edi + 0xc]
cmp ecx, esi
mov eax, esi
cmovg eax, ecx
mov ecx, edx
push eax
call fcn.1009f760
mov ecx, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
mov dword [edi + 0xc], esi
mov edx, dword [edi + 0x14]
mov esi, edx
mov dword [esp + 0x30], edx
lea ecx, [edx + ecx*2]
cmp edx, ecx
jae 0x100b78ec
mov edi, eax
nop dword [eax]
cmp byte [edi], 0
je 0x100b78e0
push 0
mov edx, edi
lea ecx, [esp + 0x3c]
call fcn.1008f1c0
add edi, eax
add esp, 4
mov eax, dword [esp + 0x38]
test eax, eax
je 0x100b78dc
cmp eax, 0xffff
ja 0x100b78cc
mov word [esi], ax
add esi, 2
mov edx, dword [esp + 0x30]
mov ecx, dword [ebp + 0xc]
lea eax, [edx + ecx*2]
cmp esi, eax
jb 0x100b78a0
jmp 0x100b78e0
mov edx, dword [esp + 0x30]
mov dword [esp + 0x48], edi
mov edi, dword [esp + 0x3c]
mov eax, dword [esp + 0x48]
sub eax, dword [ebp + 8]
xor ecx, ecx
mov word [esi], cx
sub esi, edx
sar esi, 1
cmp dword [edi + 0x3c], esi
mov ecx, esi
mov dword [edi + 4], esi
cmovl ecx, dword [edi + 0x3c]
cmp dword [edi + 0x40], esi
mov dword [edi + 0x3c], ecx
mov ecx, esi
cmovl ecx, dword [edi + 0x40]
cmp dword [edi + 0x44], esi
mov dword [edi + 8], eax
cmovl esi, dword [edi + 0x44]
xor edx, edx
movzx eax, byte [esp + 0x56]
cmp ecx, esi
mov dword [edi + 0x40], ecx
mov cl, byte [esp + 0x1a]
cmovne edx, eax
mov dword [edi + 0x44], esi
mov esi, dword [esp + 0x14]
mov dword [esp + 0x78], edx
test cl, cl
jne 0x100b794c
test dl, dl
jne 0x100b794c
mov eax, dword [esp + 0x24]
cmp dword [esi + 0x19ec], eax
jne 0x100b7962
cmp byte [esp + 0x4c], 0
jne 0x100b7962
test edi, edi
je 0x100b7962
cmp byte [edi + 0x30], 0
mov byte [esp + 0x56], 1
jne 0x100b7967
mov byte [esp + 0x56], 0
cmp byte [esp + 0xa8], 0
je 0x100b7a88
mov edx, dword [esi + 0x18c0]
cmp dword [edx + 0x14], 0x2a
jg 0x100b7986
mov esi, dword [edx + 0x2c]
jmp 0x100b79a5
mov eax, dword [edx + 0x1c]
mov ecx, 0xffff
movzx eax, word [eax + 0x54]
cmp ax, cx
jne 0x100b799c
mov esi, dword [edx + 0x2c]
jmp 0x100b79a5
lea ecx, [eax + eax*4]
mov eax, dword [edx + 0x28]
lea esi, [eax + ecx*8]
mov eax, dword [edx + 0x10]
mov edx, dword [esp + 0x14]
mov edi, dword [esp + 0x14]
add edi, 0x2c7c
mov dword [esp + 0x38], edi
mov dword [edi + 0x10], eax
mov eax, dword [edx + 0x18c0]
mov eax, dword [eax + 0x48]
mov dword [edi + 0x48], eax
mov eax, dword [edx + 0x18c0]
mov ecx, dword [eax + 0x30]
mov eax, dword [eax + 0x34]
mov dword [edi + 0x30], ecx
mov ecx, edi
mov dword [edi + 0x34], eax
mov eax, dword [edx + 0x18c0]
mov eax, dword [eax + 0x4c]
mov dword [edi + 0x4c], eax
mov eax, dword [edx + 0x18c0]
mov eax, dword [eax + 0x50]
mov dword [edi + 0x50], eax
mov eax, dword [edx + 0x18c0]
mov eax, dword [eax + 0x38]
mov dword [edi + 0x2c], esi
mov dword [edi + 0x38], eax
mov eax, dword [esi + 4]
mov esi, dword [0x102a1910]
mov dword [edi + 0xc], eax
call fcn.10099730
lea eax, [esp + 0x38]
push eax
lea ecx, [esi + 0x1ab4]
call fcn.1009f4c0
mov eax, dword [esi + 0x19b0]
mov ecx, dword [eax + 0x284]
mov eax, dword [edi + 0x38]
lea esi, [ecx + 0x4c]
mov edi, dword [esi + 4]
mov dword [esp + 0x30], ecx
mov ecx, dword [esi]
mov eax, dword [eax + 8]
mov dword [esp + 0x38], eax
cmp ecx, edi
jne 0x100b7a6d
inc ecx
test edi, edi
je 0x100b7a5b
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x100b7a60
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.1009f420
mov edx, dword [esi]
mov eax, dword [esi + 8]
mov ecx, dword [esp + 0x38]
mov dword [eax + edx*4], ecx
mov ecx, dword [esp + 0x30]
inc dword [esi]
call fcn.100a7320
mov edi, dword [esp + 0x3c]
mov esi, dword [esp + 0x14]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x70], 0
cmp dword [esi + 0x19ec], ecx
jne 0x100b7e8e
mov eax, dword [edi + 8]
mov dword [esp + 0x70], eax
mov eax, dword [ebp + 0xc]
mov dword [edi + 0x34], eax
mov eax, dword [ebp + 0x14]
mov dword [edi + 0xe68], eax
mov dword [edi + 0xe6c], 0
mov dword [edi + 0xe70], 0
mov dl, byte [esi + 0xf0]
test dl, dl
mov dword [esi + 0x2f84], 1
sete al
cmp byte [esp + 0x40], 0
mov byte [esi + 0x19f9], al
movss xmm6, dword [esi + 0xe8]
subss xmm6, dword [esp + 0x98]
subss xmm6, dword [esi + 0x1548]
addss xmm6, dword [edi + 0x38]
je 0x100b7b2c
mov eax, dword [esp + 0x68]
movss xmm2, dword [esi + 0xec]
subss xmm2, dword [eax + 0xdc]
subss xmm2, dword [esi + 0x154c]
jmp 0x100b7b3c
movss xmm2, dword [esi + 0x18c4]
mulss xmm2, dword [0x101f07bc]
cmp byte [esp + 0x20], 0
mov al, byte [esi + 0xb1]
mov byte [esp + 0x47], al
jne 0x100b7cb1
mov cl, byte [esp + 0x1f]
test cl, cl
je 0x100b7b69
test al, al
jne 0x100b7bd5
cmp byte [esi + 0x3e2], al
jne 0x100b7cb1
cmp byte [esi + 0x3d8], 0
mov al, byte [edi + 0xe65]
je 0x100b7c1c
test al, al
jne 0x100b7c1c
test cl, cl
je 0x100b7bca
cmp byte [edi + 0x4c], al
je 0x100b7ba9
push 0
mov edx, edi
lea ecx, [esp + 0xc4]
call fcn.100b12a0
movss xmm2, dword [esp + 0xd0]
add esp, 4
movaps xmm1, xmm6
mov ecx, edi
call fcn.100b15a0
mov dword [edi + 0x3c], eax
mov dword [edi + 0x40], eax
mov dword [edi + 0x44], eax
mov byte [edi + 0x4b], 0
mov dword [edi + 0xe60], 0xbe99999a
lea ecx, [edi + 0xe65]
jmp 0x100b7cd2
cmp byte [esi + 0x3e2], 0
je 0x100b7b69
push 0x20000c
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.100b1980
add esp, 4
mov byte [edi + 0xe64], 1
lea edx, [edi + 0x3c]
mov dword [edi + 0xe60], 0xbe99999a
mov ecx, edi
push 0x60000d
call fcn.100b1980
add esp, 4
mov byte [edi + 0xe64], 1
jmp 0x100b7bc0
lea ecx, [edi + 0xe65]
test dl, dl
je 0x100b7cd2
lea ecx, [edi + 0xe65]
test al, al
jne 0x100b7cd2
mov edx, esi
xorps xmm1, xmm1
movss xmm0, dword [edx + 0x378]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x100b7c65
movss xmm0, dword [edx + 0x37c]
lea ecx, [edi + 0xe65]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x100b7cd0
cmp byte [edi + 0x4c], 0
je 0x100b7c87
push 0
mov edx, edi
lea ecx, [esp + 0xc4]
call fcn.100b12a0
movss xmm2, dword [esp + 0xd0]
add esp, 4
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
jne 0x100b7c95
mov eax, dword [edi + 0x3c]
mov dword [edi + 0x40], eax
movaps xmm1, xmm6
mov ecx, edi
call fcn.100b15a0
mov dword [edi + 0x44], eax
mov dword [edi + 0x3c], eax
mov byte [edi + 0xe64], 1
jmp 0x100b7bc0
mov eax, dword [edi + 4]
lea ecx, [edi + 0xe65]
mov dword [edi + 0x40], 0
mov dword [edi + 0x44], eax
mov dword [edi + 0x3c], eax
mov byte [edi + 0x4b], 0
mov byte [ecx], 1
jmp 0x100b7cd2
mov esi, edx
cmp byte [ecx], 0
je 0x100b7ce3
cmp byte [esi + 0xf0], 0
jne 0x100b7ce3
mov byte [ecx], 0
cmp byte [esi + 0x100], 0
je 0x100b7cf5
cmp byte [esi + 0x102], 0
je 0x100b7d05
cmp byte [esp + 0x47], 0
je 0x100b7d0c
cmp byte [esi + 0x103], 0
je 0x100b7d0c
mov byte [esp + 0x12], 1
jmp 0x100b7d11
mov byte [esp + 0x12], 0
mov edx, dword [ebp + 0x14]
test edx, 0x400
je 0x100b7f02
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x34]
test ecx, ecx
js 0x100b7f02
call fcn.10094560
mov ecx, dword [esp + 0x4c]
test al, al
mov al, byte [esp + 0x12]
je 0x100b7dc8
test al, al
jne 0x100b7dc8
cmp byte [esi + 0x101], al
jne 0x100b7dc8
test cl, cl
jne 0x100b7dc8
mov ecx, dword [esi + 0x1508]
mov eax, dword [esi + 0x1500]
lea edx, [ecx + eax*2]
cmp ecx, edx
jae 0x100b7d80
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
cmp ax, 9
je 0x100b7dc0
cmp ecx, edx
jb 0x100b7d70
mov edx, dword [ebp + 0x14]
lea ecx, [esp + 0x30]
sub esp, 8
mov dword [esp + 0x38], 9
call fcn.100b6c10
add esp, 8
test al, al
je 0x100b7dc0
push dword [esp + 0x30]
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.100b1980
add esp, 4
mov byte [edi + 0xe64], 1
mov dword [edi + 0xe60], 0xbe99999a
mov ecx, dword [esp + 0x4c]
mov al, byte [esp + 0x12]
mov edx, dword [ebp + 0x14]
add esi, 0x1500
mov dword [esp + 0x38], esi
cmp dword [esi], 0
jle 0x100b7e8a
test al, al
jne 0x100b7e65
test cl, cl
jne 0x100b7e65
cmp byte [esp + 0x1b], cl
jne 0x100b7e65
mov ecx, dword [esp + 0x14]
xor esi, esi
nop word [eax + eax]
mov eax, dword [ecx + 0x1508]
movzx eax, word [eax + esi*2]
mov dword [esp + 0x30], eax
cmp eax, 9
jne 0x100b7e1c
cmp byte [ecx + 0x101], 0
jne 0x100b7e55
sub esp, 8
lea ecx, [esp + 0x38]
call fcn.100b6c10
add esp, 8
test al, al
je 0x100b7e51
push dword [esp + 0x30]
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.100b1980
add esp, 4
mov byte [edi + 0xe64], 1
mov dword [edi + 0xe60], 0xbe99999a
mov ecx, dword [esp + 0x14]
mov edx, dword [ebp + 0x14]
inc esi
cmp esi, dword [ecx + 0x1500]
jl 0x100b7e00
mov esi, dword [esp + 0x38]
mov ecx, dword [esi + 4]
test ecx, ecx
jns 0x100b7e84
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
xor ecx, ecx
test eax, eax
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.1009f760
mov dword [esi], 0
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x24]
xor cl, cl
mov byte [esp + 0x13], cl
cmp dword [esi + 0x19ec], eax
jne 0x100b8eb7
cmp byte [esi + 0x19f8], cl
jne 0x100b8921
cmp byte [esp + 0x46], cl
jne 0x100b8921
mov ah, byte [esi + 0x101]
mov ecx, 0x400000
xor esi, esi
test ah, ah
cmovne esi, ecx
mov ecx, dword [esp + 0x14]
mov al, byte [ecx + 0xb1]
mov byte [esp + 0x6f], al
test al, al
mov al, byte [ecx + 0x100]
je 0x100b7f17
cmp byte [ecx + 0x103], 0
lea edx, [ecx + 0x103]
mov dword [esp + 0x20], edx
je 0x100b7f0f
test al, al
jne 0x100b7f0f
mov ecx, 1
jmp 0x100b7f11
mov al, byte [esp + 0x12]
mov ecx, dword [esp + 0x4c]
jmp 0x100b7dcb
xor ecx, ecx
test ecx, ecx
je 0x100b7f43
jmp 0x100b7f2a
add ecx, 0x103
test al, al
je 0x100b7f3f
cmp byte [ecx], 0
jne 0x100b7f3f
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x14]
cmp byte [ecx + 0x102], 0
jne 0x100b7f43
test ah, ah
jne 0x100b7f43
mov ch, 1
jmp 0x100b7f45
mov dword [esp + 0x20], ecx
xor ch, ch
mov dh, byte [esp + 0x6f]
mov cl, al
mov byte [esp + 0x1d], ch
test dh, dh
je 0x100b7f98
mov edi, dword [esp + 0x14]
cmp byte [edi + 0x103], 0
mov edi, dword [esp + 0x3c]
je 0x100b7f98
test ah, ah
je 0x100b7f98
mov edi, dword [esp + 0x14]
mov dl, byte [edi + 0x100]
mov edi, dword [esp + 0x3c]
mov cl, dl
mov byte [esp + 0x12], dl
test dl, dl
jne 0x100b7f98
mov edi, dword [esp + 0x14]
cmp byte [edi + 0x102], 0
mov edi, dword [esp + 0x3c]
jne 0x100b7f98
mov byte [esp + 0x1f], 1
jmp 0x100b7fab
mov byte [esp + 0x12], cl
mov dl, cl
mov byte [esp + 0x1f], 0
test dh, dh
je 0x100b8054
mov edi, dword [esp + 0x14]
mov al, byte [edi + 0x102]
mov edi, dword [esp + 0x20]
mov byte [esp + 0x1c], al
cmp byte [edi], 0
mov edi, dword [esp + 0x3c]
je 0x100b8063
test dl, dl
jne 0x100b8063
test al, al
jne 0x100b8063
mov byte [esp + 0x1e], 1
mov cl, byte [esp + 0x1e]
mov byte [esp + 0x35], cl
mov byte [esp + 0x1e], cl
mov byte [esp + 0x1c], al
mov byte [esp + 0x1b], 0
test ah, ah
je 0x100b80a5
mov byte [esp + 0x1e], cl
mov byte [esp + 0x1c], al
mov byte [esp + 0x1b], 0
test dl, dl
jne 0x100b80a5
mov byte [esp + 0x1b], dl
mov edx, dword [esp + 0x14]
mov byte [esp + 0x1e], cl
mov byte [esp + 0x1c], al
cmp byte [edx + 0x102], 0
jne 0x100b80a5
mov edx, dword [esp + 0x20]
mov byte [esp + 0x1e], cl
mov byte [esp + 0x1c], al
mov byte [esp + 0x1b], 0
cmp byte [edx], 0
jne 0x100b80a5
mov byte [esp + 0x2b], 1
mov byte [esp + 0x1e], cl
mov byte [esp + 0x1c], al
mov byte [esp + 0x1b], 0
jmp 0x100b80aa
mov al, dl
mov byte [esp + 0x1c], dl
mov byte [esp + 0x1f], 0
mov byte [esp + 0x12], dl
mov byte [esp + 0x1e], 0
test dl, dl
je 0x100b7fdf
test ah, ah
jne 0x100b7fdf
mov edi, dword [esp + 0x14]
cmp byte [edi + 0x102], ah
mov edi, dword [esp + 0x3c]
jne 0x100b7fdf
mov edi, dword [esp + 0x20]
cmp byte [edi], ah
mov edi, dword [esp + 0x3c]
jne 0x100b7fdf
mov byte [esp + 0x1b], 1
mov byte [esp + 0x35], ah
mov byte [esp + 0x2b], 0
test ch, ch
je 0x100b80c6
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x80]
test ecx, ecx
js 0x100b80c6
call fcn.10094560
test al, al
jne 0x100b80e2
cmp byte [esp + 0x2b], 0
je 0x100b8109
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x5c]
test ecx, ecx
js 0x100b8109
call fcn.10094560
test al, al
je 0x100b8109
cmp byte [esp + 0x4c], 0
jne 0x100b8109
cmp byte [esp + 0xa8], 0
jne 0x100b8109
cmp byte [esp + 0x40], 0
je 0x100b8102
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
je 0x100b8109
mov byte [esp + 0x36], 1
jmp 0x100b810e
mov byte [esp + 0x36], 0
cmp byte [esp + 0x1d], 0
je 0x100b812a
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x78]
test ecx, ecx
js 0x100b812a
call fcn.10094560
test al, al
jne 0x100b8146
cmp byte [esp + 0x1b], 0
je 0x100b8166
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x58]
test ecx, ecx
js 0x100b8166
call fcn.10094560
test al, al
je 0x100b8166
cmp byte [esp + 0xa8], 0
jne 0x100b8166
cmp byte [esp + 0x40], 0
je 0x100b815f
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
je 0x100b8166
mov byte [esp + 0x1b], 1
jmp 0x100b816b
mov byte [esp + 0x1b], 0
cmp byte [esp + 0x1d], 0
je 0x100b8187
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x7c]
test ecx, ecx
js 0x100b8187
call fcn.10094560
test al, al
jne 0x100b81a3
cmp byte [esp + 0x2b], 0
je 0x100b81af
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x58]
test ecx, ecx
js 0x100b81af
call fcn.10094560
test al, al
je 0x100b81af
cmp byte [esp + 0x4c], 0
mov byte [esp + 0x47], 1
je 0x100b81b4
mov byte [esp + 0x47], 0
mov dl, byte [esp + 0x1d]
test dl, dl
je 0x100b81ed
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x88]
test ecx, ecx
js 0x100b81ed
call fcn.10094560
test al, al
je 0x100b81e9
cmp byte [esp + 0x4c], 0
jne 0x100b81e9
cmp byte [esp + 0x64], 0
je 0x100b81e9
mov byte [esp + 0x2b], 1
jmp 0x100b81f6
mov dl, byte [esp + 0x1d]
mov byte [esp + 0x2b], 0
test dl, dl
je 0x100b820e
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x84]
test ecx, ecx
js 0x100b820e
call fcn.10094560
test al, al
jne 0x100b822d
cmp byte [esp + 0x1f], 0
je 0x100b8240
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x88]
test ecx, ecx
js 0x100b8240
call fcn.10094560
test al, al
je 0x100b8240
cmp byte [esp + 0x4c], 0
jne 0x100b8240
cmp byte [esp + 0x64], 0
mov byte [esp + 0x1f], 1
jne 0x100b8245
mov byte [esp + 0x1f], 0
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x38]
test ecx, ecx
js 0x100b829c
call fcn.10094560
test al, al
je 0x100b829c
cmp byte [esp + 0x35], 0
je 0x100b8278
mov eax, 0x200004
lea edx, [edi + 0x3c]
or esi, eax
mov ecx, edi
push esi
call fcn.100b1980
jmp 0x100b88e8
cmp byte [esp + 0x1c], 0
lea edx, [edi + 0x3c]
mov ecx, 0x20000c
mov eax, 0x200000
cmovne eax, ecx
mov ecx, edi
or esi, eax
push esi
call fcn.100b1980
jmp 0x100b88e8
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x3c]
test ecx, ecx
js 0x100b82f3
call fcn.10094560
test al, al
je 0x100b82f3
cmp byte [esp + 0x35], 0
je 0x100b82cf
mov eax, 0x200005
lea edx, [edi + 0x3c]
or esi, eax
mov ecx, edi
push esi
call fcn.100b1980
jmp 0x100b88e8
cmp byte [esp + 0x1c], 0
lea edx, [edi + 0x3c]
mov ecx, 0x20000d
mov eax, 0x200001
cmovne eax, ecx
mov ecx, edi
or esi, eax
push esi
call fcn.100b1980
jmp 0x100b88e8
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x40]
test ecx, ecx
js 0x100b8361
call fcn.10094560
test al, al
je 0x100b8361
cmp byte [esp + 0x40], 0
je 0x100b8361
cmp byte [esp + 0x12], 0
je 0x100b8343
mov edx, dword [esp + 0x68]
xorps xmm7, xmm7
mov esi, dword [esp + 0x14]
movss xmm0, dword [edx + 0x54]
subss xmm0, dword [esi + 0x18c4]
mov dword [edx + 0x7c], 0
maxss xmm0, xmm7
movss dword [edx + 0x74], xmm0
jmp 0x100b8900
movzx eax, byte [esp + 0x1e]
lea edx, [edi + 0x3c]
mov ecx, edi
lea eax, [eax*4 + 0x200002]
or eax, esi
push eax
call fcn.100b1980
jmp 0x100b88e8
mov ecx, dword [0x102a1910]
mov ecx, dword [ecx + 0x44]
test ecx, ecx
js 0x100b83d9
call fcn.10094560
test al, al
je 0x100b83d9
cmp byte [esp + 0x40], 0
je 0x100b83d9
cmp byte [esp + 0x12], 0
je 0x100b83bb
mov esi, dword [esp + 0x14]
mov ecx, dword [esp + 0x68]
mov eax, dword [0x102a1910]
movss xmm0, dword [esi + 0x18c4]
addss xmm0, dword [ecx + 0x54]
mov eax, dword [eax + 0x19b0]
minss xmm0, dword [eax + 0x5c]
mov dword [ecx + 0x7c], 0
movss dword [ecx + 0x74], xmm0
jmp 0x100b8900
movzx eax, byte [esp + 0x1e]
lea edx, [edi + 0x3c]
mov ecx, edi
lea eax, [eax*4 + 0x200003]
or eax, esi
push eax
call fcn.100b1980
jmp 0x100b88e8
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x50]
test ecx, ecx
js 0x100b8413
call fcn.10094560
test al, al
je 0x100b8413
mov eax, esi
lea edx, [edi + 0x3c]
or eax, 0x200006
or esi, 0x200004
cmp byte [esp + 0x12], 0
mov ecx, edi
cmovne esi, eax
push esi
call fcn.100b1980
jmp 0x100b88e8
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x54]
test ecx, ecx
js 0x100b844d
call fcn.10094560
test al, al
je 0x100b844d
mov eax, esi
lea edx, [edi + 0x3c]
or eax, 0x200007
or esi, 0x200005
cmp byte [esp + 0x12], 0
mov ecx, edi
cmovne esi, eax
push esi
call fcn.100b1980
jmp 0x100b88e8
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x5c]
test ecx, ecx
js 0x100b847f
call fcn.10094560
test al, al
je 0x100b847f
cmp byte [esp + 0x4c], 0
jne 0x100b847f
or esi, 0x200008
lea edx, [edi + 0x3c]
push esi
mov ecx, edi
call fcn.100b1980
jmp 0x100b88e8
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x60]
test ecx, ecx
js 0x100b8512
call fcn.10094560
test al, al
je 0x100b8512
cmp byte [esp + 0x4c], 0
jne 0x100b8512
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
jne 0x100b84fc
cmp byte [esp + 0x1c], 0
je 0x100b84b5
push 0x60000c
jmp 0x100b84de
cmp byte [esp + 0x6f], 0
je 0x100b84fc
mov eax, dword [esp + 0x20]
cmp byte [eax], 0
je 0x100b84fc
mov eax, dword [esp + 0x14]
cmp byte [eax + 0x102], 0
jne 0x100b84fc
cmp byte [esp + 0x12], 0
jne 0x100b84fc
push 0x600004
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.100b1980
mov dword [edi + 0xe60], 0xbe99999a
add esp, 4
mov byte [edi + 0xe64], 1
or esi, 0x200009
lea edx, [edi + 0x3c]
push esi
mov ecx, edi
call fcn.100b1980
jmp 0x100b88e8
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x68]
test ecx, ecx
js 0x100b8527
call fcn.10094560
test al, al
jne 0x100b853c
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x70]
test ecx, ecx
js 0x100b85ad
call fcn.10094560
test al, al
je 0x100b85ad
mov ecx, dword [ebp + 0x14]
mov eax, ecx
shr eax, 0xb
and al, 1
cmp byte [esp + 0x40], 0
je 0x100b8558
test al, al
je 0x100b8567
cmp byte [esp + 0x12], 0
jne 0x100b856e
mov byte [esp + 0x46], 1
mov byte [esp + 0x37], 1
jmp 0x100b88fc
cmp byte [esp + 0x12], 0
jne 0x100b8558
cmp byte [esp + 0x4c], 0
jne 0x100b88fc
sub esp, 8
mov dword [esp + 0x38], 0xa
mov edx, ecx
lea ecx, [esp + 0x38]
call fcn.100b6c10
add esp, 8
test al, al
je 0x100b88fc
push dword [esp + 0x30]
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.100b1980
jmp 0x100b88e8
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x6c]
test ecx, ecx
js 0x100b85d1
call fcn.10094560
test al, al
je 0x100b85d1
mov esi, dword [esp + 0x14]
mov cl, 1
mov byte [esp + 0x46], cl
jmp 0x100b8904
mov al, byte [esp + 0x2b]
test al, al
jne 0x100b88c9
cmp byte [esp + 0x1f], al
jne 0x100b88c9
cmp byte [esp + 0x1d], al
je 0x100b861b
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x74]
test ecx, ecx
js 0x100b861b
call fcn.10094560
test al, al
je 0x100b861b
mov eax, dword [edi + 4]
mov dword [edi + 0x40], 0
mov dword [edi + 0x44], eax
mov dword [edi + 0x3c], eax
mov byte [edi + 0x4b], 0
jmp 0x100b88f5
mov al, byte [esp + 0x36]
test al, al
jne 0x100b87c3
cmp byte [esp + 0x1b], al
jne 0x100b87c3
cmp byte [esp + 0x47], al
je 0x100b88fc
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0xd0]
test ecx, ecx
je 0x100b8660
push dword [eax + 0xd8]
call ecx
mov esi, eax
add esp, 4
test esi, esi
jne 0x100b8665
jmp 0x100b88fc
mov esi, 0x101ea753
mov ecx, esi
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100b8670
mov eax, dword [0x102a1910]
sub ecx, edx
test eax, eax
je 0x100b8688
inc dword [eax + 0x374]
lea eax, [ecx*2 + 2]
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov ecx, eax
add esp, 4
xor eax, eax
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x20], eax
cmp byte [esi], al
je 0x100b8702
xor edi, edi
nop dword [eax + eax]
push 0
mov edx, esi
lea ecx, [esp + 0x4c]
call fcn.1008f1c0
add esp, 4
add esi, eax
cmp dword [esp + 0x48], 0
je 0x100b86f2
mov edx, dword [ebp + 0x14]
lea ecx, [esp + 0x48]
sub esp, 8
call fcn.100b6c10
add esp, 8
test al, al
je 0x100b86ed
mov ecx, dword [esp + 0x2c]
mov ax, word [esp + 0x48]
mov word [ecx + edi*2], ax
inc edi
cmp byte [esi], 0
jne 0x100b86b0
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x20], edi
mov edi, dword [esp + 0x3c]
mov eax, dword [esp + 0x20]
xor edx, edx
mov word [ecx + eax*2], dx
test eax, eax
jle 0x100b87a1
mov edx, dword [edi + 0x44]
mov ecx, dword [edi + 0x40]
mov eax, dword [edi + 4]
cmp ecx, edx
je 0x100b8736
cmp ecx, eax
jle 0x100b8726
mov dword [edi + 0x40], eax
mov ecx, eax
cmp edx, eax
jle 0x100b872f
mov dword [edi + 0x44], eax
mov edx, eax
cmp ecx, edx
jne 0x100b8736
mov dword [edi + 0x3c], ecx
cmp dword [edi + 0x3c], eax
jle 0x100b873e
mov dword [edi + 0x3c], eax
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.100b18f0
push dword [esp + 0x20]
mov edx, dword [edi + 0x3c]
mov ecx, edi
push dword [esp + 0x30]
call fcn.100b1470
add esp, 8
test al, al
je 0x100b8782
push dword [esp + 0x20]
mov edx, dword [edi + 0x3c]
lea ecx, [edi + 0x54]
push 0
call fcn.100b2690
mov eax, dword [esp + 0x28]
add esp, 8
add dword [edi + 0x3c], eax
mov byte [edi + 0x4b], 0
jmp 0x100b8796
movzx eax, word [edi + 0xe52]
test ax, ax
je 0x100b8796
dec eax
mov word [edi + 0xe52], ax
mov ecx, dword [esp + 0x2c]
mov byte [edi + 0xe64], 1
test ecx, ecx
je 0x100b87b4
mov eax, dword [0x102a1910]
test eax, eax
je 0x100b87b4
dec dword [eax + 0x374]
push ecx
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
jmp 0x100b88fc
mov esi, dword [esp + 0x14]
cmp dword [esi + 0xd4], 0
je 0x100b8889
mov ecx, dword [edi + 0x44]
mov eax, dword [edi + 0x40]
cmp eax, ecx
je 0x100b87e8
mov esi, ecx
cmovge ecx, eax
cmovl esi, eax
jmp 0x100b87ed
mov ecx, dword [edi + 4]
xor esi, esi
mov eax, dword [edi + 0x14]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x64], esi
lea edx, [eax + ecx*2]
lea ecx, [eax + esi*2]
call fcn.1008f480
mov ecx, dword [0x102a1910]
inc eax
mov dword [esp + 0x38], eax
test ecx, ecx
je 0x100b8818
inc dword [ecx + 0x374]
push eax
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov esi, dword [edi + 0x14]
add esp, 4
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x38]
mov dword [esp + 0x48], eax
lea ecx, [esi + ecx*2]
push ecx
mov ecx, dword [esp + 0x68]
lea ecx, [esi + ecx*2]
mov esi, eax
push ecx
mov ecx, esi
call fcn.1008f350
mov eax, dword [0x102a1910]
add esp, 8
mov ecx, dword [eax + 0xd4]
test ecx, ecx
je 0x100b8869
push esi
push dword [eax + 0xd8]
call ecx
mov eax, dword [0x102a1910]
add esp, 8
test esi, esi
je 0x100b8877
test eax, eax
je 0x100b8877
dec dword [eax + 0x374]
push esi
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov al, byte [esp + 0x3a]
add esp, 4
mov esi, dword [esp + 0x14]
test al, al
je 0x100b8900
mov eax, dword [edi + 0x40]
lea esi, [edi + 0x3c]
cmp eax, dword [edi + 0x44]
jne 0x100b88ab
mov eax, dword [edi + 4]
mov dword [edi + 0x40], 0
mov dword [edi + 0x44], eax
mov dword [esi], eax
mov byte [edi + 0x4b], 0
mov byte [edi + 0xe64], 1
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x100b88fc
mov edx, esi
mov ecx, edi
call fcn.100b18f0
mov byte [esi + 0xf], 0
jmp 0x100b88fc
movzx eax, al
lea edx, [edi + 0x3c]
xor eax, 1
mov ecx, edi
add eax, 0x20000a
push eax
call fcn.100b1980
mov eax, dword [edi + 0x3c]
mov dword [edi + 0x44], eax
mov dword [edi + 0x40], eax
mov dword [edi + 0xe60], 0xbe99999a
add esp, 4
mov byte [edi + 0xe64], 1
mov esi, dword [esp + 0x14]
mov cl, byte [esp + 0x13]
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
je 0x100b8917
cmp byte [esp + 0x1a], 0
je 0x100b8917
mov al, 1
jmp 0x100b8919
xor al, al
or byte [esp + 0x78], al
mov eax, dword [esp + 0x24]
cmp dword [esi + 0x19ec], eax
jne 0x100b8eb7
xor eax, eax
mov dword [esp + 0x5c], 0
mov dword [esp + 0x20], eax
test cl, cl
je 0x100b8a52
cmp byte [esp + 0x4c], al
jne 0x100b8986
mov esi, dword [edi + 0x2c]
mov ecx, esi
mov eax, dword [ebp + 8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100b8971
test dl, dl
je 0x100b896d
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100b8971
add eax, 2
add ecx, 2
test dl, dl
jne 0x100b8951
xor eax, eax
jmp 0x100b8976
sbb eax, eax
or eax, 1
test eax, eax
je 0x100b8986
mov eax, dword [edi + 0x24]
dec eax
mov dword [esp + 0x5c], esi
mov dword [esp + 0x20], eax
cmp byte [esp + 0x37], 0
mov edx, dword [ebp + 0x14]
je 0x100b8999
test dl, 0x20
jne 0x100b8a55
mov esi, dword [esp + 0x5c]
mov ecx, dword [esp + 0x20]
test esi, esi
je 0x100b8e95
cmp dword [esp + 0x70], ecx
je 0x100b8e5f
cmp byte [esp + 0x60], 0
je 0x100b8e5f
mov eax, dword [ebp + 8]
xorps xmm0, xmm0
mov dword [esp + 0x174], eax
lea eax, [ecx + 1]
cmp dword [ebp + 0xc], eax
movlpd qword [esp + 0x16c], xmm0
cmovge eax, dword [ebp + 0xc]
mov dword [esp + 0x17c], eax
lea eax, [esp + 0x160]
push eax
xor eax, eax
movlpd qword [esp + 0x184], xmm0
movlpd qword [esp + 0x18c], xmm0
mov dword [esp + 0x164], 0x40000
mov dword [esp + 0x168], edx
mov dword [esp + 0x17c], ecx
mov dword [esp + 0x16c], 0
call eax
mov edx, dword [esp + 0x180]
add esp, 4
mov eax, dword [esp + 0x174]
mov dword [ebp + 8], eax
lea ecx, [edx - 1]
cmp dword [esp + 0x178], ecx
cmovl ecx, dword [esp + 0x178]
jmp 0x100b8e62
mov edx, dword [ebp + 0x14]
cmp byte [esp + 0x4c], 0
jne 0x100b8ab8
mov eax, dword [edi + 0xc]
lea ecx, [edi + 0x18]
mov byte [edi + 0x30], 1
lea esi, [eax*4 + 1]
mov eax, dword [ecx + 4]
cmp esi, eax
jle 0x100b8aa1
test eax, eax
je 0x100b8a87
cdq
sub eax, edx
lea edx, [edi + 0x18]
mov ecx, eax
sar ecx, 1
add ecx, dword [edx + 4]
jmp 0x100b8a8f
mov ecx, 8
lea edx, [edi + 0x18]
cmp ecx, esi
mov eax, esi
cmovg eax, ecx
mov ecx, edx
push eax
call fcn.1009f6f0
lea ecx, [edi + 0x18]
mov dword [ecx], esi
mov edx, esi
mov ecx, dword [edi + 0x20]
push 0
push dword [edi + 0x14]
call fcn.1008f350
mov edx, dword [ebp + 0x14]
add esp, 8
test edx, 0x1c0
je 0x100b8e10
mov esi, 0x16
test dl, 0x40
je 0x100b8aed
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x34]
test ecx, ecx
js 0x100b8aed
call fcn.10094560
test al, al
je 0x100b8aea
lea eax, [esi + 0x2a]
xor esi, esi
jmp 0x100b8b46
mov edx, dword [ebp + 0x14]
test dl, dl
jns 0x100b8b35
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x40]
test ecx, ecx
js 0x100b8b13
call fcn.10094560
test al, al
je 0x100b8b10
mov eax, 0x80
lea esi, [eax - 0x7d]
jmp 0x100b8b46
mov edx, dword [ebp + 0x14]
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0x44]
test ecx, ecx
js 0x100b8b35
call fcn.10094560
test al, al
je 0x100b8b32
mov eax, 0x80
lea esi, [eax - 0x7c]
jmp 0x100b8b46
mov edx, dword [ebp + 0x14]
test edx, 0x100
je 0x100b8e10
mov eax, 0x100
mov dword [esp + 0x130], eax
xor ecx, ecx
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x134], eax
mov eax, dword [edi + 0x20]
mov dword [esp + 0x144], eax
mov eax, dword [edi + 8]
mov dword [esp + 0x148], eax
mov eax, dword [edi + 0x34]
mov dword [esp + 0x140], esi
mov esi, dword [edi + 0x14]
mov dword [esp + 0x14c], eax
mov eax, dword [edi + 0x3c]
mov word [esp + 0x151], cx
mov byte [esp + 0x153], cl
mov dword [esp + 0x138], ecx
mov byte [esp + 0x150], cl
lea edx, [esi + eax*2]
mov ecx, esi
mov dword [esp + 0x13c], 0
call fcn.1008f480
mov ecx, dword [esp + 0x3c]
mov edi, eax
mov dword [esp + 0x154], edi
mov ecx, dword [ecx + 0x40]
lea edx, [esi + ecx*2]
mov ecx, esi
call fcn.1008f480
mov dword [esp + 0x30], eax
mov ecx, esi
mov dword [esp + 0x158], eax
mov eax, dword [esp + 0x3c]
mov edx, dword [eax + 0x44]
lea edx, [esi + edx*2]
call fcn.1008f480
mov dword [esp + 0x64], eax
mov dword [esp + 0x15c], eax
lea eax, [esp + 0x130]
push eax
xor eax, eax
call eax
mov ecx, dword [esp + 0x158]
add esp, 4
mov eax, dword [esp + 0x144]
mov dword [esp + 0x50], eax
cmp ecx, edi
je 0x100b8c73
lea edi, [ecx + eax]
mov esi, eax
xor eax, eax
mov dword [esp + 0x2c], eax
test edi, edi
je 0x100b8c2f
cmp esi, edi
jae 0x100b8c5f
cmp byte [esi], 0
je 0x100b8c5f
push edi
mov edx, esi
lea ecx, [esp + 0x3c]
call fcn.1008f1c0
add esi, eax
add esp, 4
mov eax, dword [esp + 0x38]
test eax, eax
je 0x100b8c5b
cmp eax, 0xffff
mov eax, dword [esp + 0x2c]
ja 0x100b8c27
inc eax
jmp 0x100b8c23
mov eax, dword [esp + 0x2c]
mov esi, dword [esp + 0x3c]
mov dword [esi + 0x3c], eax
mov eax, dword [esp + 0x50]
mov byte [esi + 0xe64], 1
jmp 0x100b8c77
mov esi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x158]
cmp ecx, dword [esp + 0x30]
je 0x100b8cd3
lea esi, [ecx + eax]
mov edi, eax
xor eax, eax
mov dword [esp + 0x2c], eax
nop
test esi, esi
je 0x100b8c98
cmp edi, esi
jae 0x100b8cc8
cmp byte [edi], 0
je 0x100b8cc8
push esi
mov edx, edi
lea ecx, [esp + 0x3c]
call fcn.1008f1c0
add edi, eax
add esp, 4
mov eax, dword [esp + 0x38]
test eax, eax
je 0x100b8cc4
cmp eax, 0xffff
mov eax, dword [esp + 0x2c]
ja 0x100b8c90
inc eax
jmp 0x100b8c8b
mov eax, dword [esp + 0x2c]
mov esi, dword [esp + 0x3c]
mov dword [esi + 0x40], eax
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x15c]
cmp ecx, dword [esp + 0x64]
je 0x100b8d2f
lea esi, [ecx + eax]
mov edi, eax
xor eax, eax
mov dword [esp + 0x2c], eax
nop dword [eax + eax]
test esi, esi
je 0x100b8cf8
cmp edi, esi
jae 0x100b8d28
cmp byte [edi], 0
je 0x100b8d28
push esi
mov edx, edi
lea ecx, [esp + 0x3c]
call fcn.1008f1c0
add edi, eax
add esp, 4
mov eax, dword [esp + 0x38]
test eax, eax
je 0x100b8d24
cmp eax, 0xffff
mov eax, dword [esp + 0x2c]
ja 0x100b8cf0
inc eax
jmp 0x100b8ce7
mov eax, dword [esp + 0x2c]
mov esi, dword [esp + 0x3c]
mov dword [esi + 0x44], eax
cmp byte [esp + 0x150], 0
je 0x100b8e0d
mov edi, dword [esp + 0x148]
mov ecx, dword [esp + 0x70]
cmp edi, ecx
jle 0x100b8d97
cmp byte [esp + 0x60], 0
je 0x100b8d97
mov eax, dword [esi + 0x10]
sub edi, ecx
add edi, dword [esi + 0xc]
cmp edi, eax
jle 0x100b8d94
test eax, eax
je 0x100b8d72
cdq
sub eax, edx
lea edx, [esi + 0xc]
mov ecx, eax
sar ecx, 1
add ecx, dword [edx + 4]
jmp 0x100b8d7a
mov ecx, 8
lea edx, [esi + 0xc]
cmp ecx, edi
mov eax, edi
cmovg eax, ecx
mov ecx, edx
push eax
call fcn.1009f760
mov eax, dword [esp + 0x144]
mov dword [esp + 0x50], eax
mov dword [esi + 0xc], edi
mov ecx, dword [esi + 0x14]
mov edi, ecx
mov eax, dword [esi + 0xc]
dec eax
mov dword [esp + 0x64], ecx
lea eax, [ecx + eax*2]
mov dword [esp + 0x30], eax
cmp ecx, eax
jae 0x100b8ded
mov esi, dword [esp + 0x50]
cmp byte [esi], 0
je 0x100b8de5
push 0
mov edx, esi
lea ecx, [esp + 0x3c]
call fcn.1008f1c0
add esi, eax
add esp, 4
mov eax, dword [esp + 0x38]
test eax, eax
je 0x100b8de5
cmp eax, 0xffff
ja 0x100b8ddf
mov word [edi], ax
add edi, 2
cmp edi, dword [esp + 0x30]
jb 0x100b8db3
mov esi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x64]
xor eax, eax
mov word [edi], ax
sub edi, ecx
mov eax, dword [esp + 0x148]
sar edi, 1
mov dword [esi + 4], edi
mov dword [esi + 8], eax
mov dword [esi + 0xe60], 0xbe99999a
mov edx, dword [ebp + 0x14]
cmp byte [esp + 0x4c], 0
mov edi, dword [esp + 0x3c]
jne 0x100b8999
mov esi, dword [edi + 0x20]
mov eax, esi
mov ecx, dword [ebp + 8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100b8e47
test dl, dl
je 0x100b8e43
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100b8e47
add eax, 2
add ecx, 2
test dl, dl
jne 0x100b8e27
xor eax, eax
jmp 0x100b8e4c
sbb eax, eax
or eax, 1
mov edx, dword [ebp + 0x14]
test eax, eax
je 0x100b8999
mov ecx, dword [edi + 8]
jmp 0x100b89a1
mov edx, dword [ebp + 0xc]
lea eax, [ecx + 1]
cmp eax, edx
cmovl edx, eax
mov dword [ebp + 0xc], edx
cmp edx, 1
jb 0x100b8e90
jbe 0x100b8e88
lea eax, [edx - 1]
push eax
push esi
push dword [ebp + 8]
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov edx, dword [ebp + 0xc]
add esp, 0xc
mov eax, dword [ebp + 8]
mov byte [edx + eax - 1], 0
mov byte [esp + 0x57], 1
mov esi, dword [esp + 0x14]
mov dword [edi + 0xe68], 0
mov dword [edi + 0xe6c], 0
mov dword [edi + 0xe70], 0
cmp byte [esp + 0x46], 0
mov ecx, dword [esp + 0x24]
je 0x100b8ed7
cmp dword [esi + 0x19ec], ecx
jne 0x100b8ed7
xor edx, edx
xor ecx, ecx
call fcn.10091a10
mov ecx, dword [esp + 0x24]
cmp byte [esp + 0x40], 0
jne 0x100b9066
mov edx, ecx
lea ecx, [esp + 0x98]
push 1
call fcn.10090b30
mov eax, dword [0x102a1910]
xorps xmm3, xmm3
movss xmm5, dword [0x101f0824]
add esp, 4
movups xmm0, xmmword [eax + 0x1630]
comiss xmm3, xmm0
movaps xmm1, xmm0
movaps xmmword [esp + 0xc0], xmm0
shufps xmm1, xmm0, 0xff
mulss xmm1, dword [eax + 0x1510]
jbe 0x100b8f2d
xorps xmm0, xmm0
jmp 0x100b8f31
minss xmm0, xmm5
movss xmm2, dword [0x101f0a98]
movss xmm4, dword [0x101f07bc]
mulss xmm0, xmm2
addss xmm0, xmm4
cvttss2si edx, xmm0
movss xmm0, dword [esp + 0xc4]
shl edx, 0x10
comiss xmm3, xmm0
jbe 0x100b8f63
xorps xmm0, xmm0
jmp 0x100b8f67
minss xmm0, xmm5
mulss xmm0, xmm2
addss xmm0, xmm4
cvttss2si eax, xmm0
movss xmm0, dword [esp + 0xc8]
shl eax, 8
or edx, eax
comiss xmm3, xmm0
jbe 0x100b8f8b
xorps xmm0, xmm0
jmp 0x100b8f8f
minss xmm0, xmm5
mulss xmm0, xmm2
addss xmm0, xmm4
cvttss2si eax, xmm0
or edx, eax
comiss xmm3, xmm1
jbe 0x100b8fa7
xorps xmm1, xmm1
jmp 0x100b8fab
minss xmm1, xmm5
push dword [esp + 0xa4]
mulss xmm1, xmm2
push dword [esp + 0xa4]
movss xmm2, dword [esi + 0x1550]
push dword [esp + 0xa4]
addss xmm1, xmm4
push dword [esp + 0xa4]
cvttss2si ecx, xmm1
shl ecx, 0x18
or ecx, edx
mov dl, 1
call fcn.10090350
movss xmm4, dword [esp + 0xa8]
add esp, 0x10
movss xmm5, dword [esp + 0x9c]
movaps xmm0, xmm4
addss xmm0, dword [esi + 0x1548]
movss xmm3, dword [esp + 0x80]
movaps xmm2, xmm4
movaps xmm1, xmm5
movss dword [esp + 0x110], xmm4
addss xmm1, dword [esp + 0x74]
addss xmm2, xmm3
movss dword [esp + 0x114], xmm5
movss dword [esp + 0xb0], xmm0
movaps xmm0, xmm5
addss xmm0, dword [esi + 0x154c]
movss dword [esp + 0x70], xmm1
movss dword [esp + 0x38], xmm2
movss dword [esp + 0x118], xmm2
movss dword [esp + 0xb4], xmm0
jmp 0x100b90dd
movss xmm0, dword [esp + 0x98]
movss xmm3, dword [esp + 0x80]
movss xmm1, dword [esp + 0x9c]
movaps xmm2, xmm3
mov ecx, dword [esp + 0x68]
addss xmm2, xmm0
movss dword [esp + 0x110], xmm0
movss dword [esp + 0x114], xmm1
mov eax, dword [ecx + 0xd8]
mov ecx, dword [ecx + 0xdc]
movaps xmm0, xmm2
movss dword [esp + 0x38], xmm0
movss dword [esp + 0x118], xmm0
movss xmm0, dword [esp + 0x74]
addss xmm0, xmm1
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], ecx
movss dword [esp + 0x70], xmm0
movaps xmm1, xmm0
cmp byte [esp + 0x56], 0
lea eax, [esp + 0xb0]
movss xmm0, dword [eax]
xorps xmm7, xmm7
movss dword [esp + 0x84], xmm0
movss xmm0, dword [eax + 4]
mov dword [esp + 0x58], eax
movss dword [esp + 0x11c], xmm1
movss dword [esp + 0x60], xmm1
movss dword [esp + 0x48], xmm2
movss dword [esp + 0x7c], xmm0
movss dword [esp + 0x88], xmm0
movss dword [esp + 0x64], xmm7
movss dword [esp + 0x30], xmm7
je 0x100b913c
mov edx, dword [edi + 0x20]
mov dword [ebp + 8], edx
jmp 0x100b913f
mov edx, dword [ebp + 8]
cmp byte [esp + 0x1a], 0
jne 0x100b9356
cmp byte [esp + 0x78], 0
jne 0x100b9356
cmp byte [esp + 0x40], 0
je 0x100b91ac
mov esi, dword [ebp + 8]
xor ecx, ecx
mov dl, byte [edx]
inc esi
test dl, dl
je 0x100b917a
cmp dl, 0xa
lea eax, [ecx + 1]
mov dl, byte [esi]
cmovne eax, ecx
inc esi
mov ecx, eax
test dl, dl
jne 0x100b9168
mov al, byte [esi - 1]
dec esi
mov dword [esp + 0x24], esi
cmp al, 0xa
je 0x100b918b
cmp al, 0xd
je 0x100b918b
inc ecx
mov eax, dword [esp + 0x14]
movd xmm6, ecx
cvtdq2ps xmm6, xmm6
movss dword [esp + 0x64], xmm3
mulss xmm6, dword [eax + 0x18c4]
movss dword [esp + 0x30], xmm6
jmp 0x100b91e6
mov eax, dword [esp + 0x24]
cmp dword [esi + 0x19ec], eax
jne 0x100b91bf
mov edi, dword [edi + 8]
add edi, edx
jmp 0x100b91d3
mov ecx, edx
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100b91c4
sub ecx, edx
mov edx, dword [ebp + 8]
lea edi, [edx + ecx]
mov eax, edi
mov dword [esp + 0x24], edi
sub eax, edx
cmp eax, 0x200000
jge 0x100b9efe
movss xmm1, dword [0x101f0824]
xor ecx, ecx
call fcn.1008fac0
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x110]
movss xmm2, dword [ecx + 0x18c4]
lea edi, [ecx + 0x18c4]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x68]
mov esi, dword [eax + 0x284]
mov eax, dword [ecx + 0x18c0]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x48], eax
xor eax, eax
cmp byte [esp + 0x40], al
mov dword [esp + 0x60], ecx
cmovne edx, eax
test dword [esp + 0x70], 0xff000000
mov eax, edi
je 0x100b9ebb
test ecx, ecx
jne 0x100b9267
mov ecx, dword [ebp + 8]
lea eax, [ecx + 1]
mov dword [esp + 0x38], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100b9255
sub ecx, dword [esp + 0x38]
add ecx, dword [ebp + 8]
mov dword [esp + 0x60], ecx
mov eax, edi
cmp dword [ebp + 8], ecx
je 0x100b9ebb
cmp dword [esp + 0x48], 0
jne 0x100b9283
mov eax, dword [esi + 0x28]
mov eax, dword [eax + 8]
mov dword [esp + 0x48], eax
ucomiss xmm2, xmm7
lahf
test ah, 0x44
jp 0x100b9294
mov eax, dword [esi + 0x28]
movss xmm2, dword [eax + 0xc]
mov ecx, dword [esi + 0x40]
mov eax, dword [esi + 0x48]
shl ecx, 4
movups xmm0, xmmword [eax + ecx - 0x10]
movups xmmword [esp + 0xf0], xmm0
test edx, edx
je 0x100b9315
movss xmm1, dword [edx]
movss xmm0, dword [esp + 0xf0]
comiss xmm0, xmm1
jae 0x100b92c9
movss dword [esp + 0xf0], xmm1
movss xmm1, dword [edx + 4]
movss xmm0, dword [esp + 0xf4]
comiss xmm0, xmm1
jae 0x100b92e5
movss dword [esp + 0xf4], xmm1
movss xmm0, dword [edx + 8]
comiss xmm0, dword [esp + 0xf8]
ja 0x100b92fd
movss dword [esp + 0xf8], xmm0
movss xmm0, dword [edx + 0xc]
comiss xmm0, dword [esp + 0xfc]
ja 0x100b9315
movss dword [esp + 0xfc], xmm0
mov eax, dword [esp + 0x58]
test edx, edx
push dword [eax + 4]
push dword [eax]
setne al
movzx eax, al
push eax
push ecx
mov ecx, dword [esp + 0x58]
lea eax, [esp + 0x100]
mov dword [esp], 0
push dword [esp + 0x70]
push dword [ebp + 8]
push eax
push dword [esp + 0x8c]
push esi
call fcn.100ad570
mov eax, edi
jmp 0x100b9ebb
mov eax, dword [edi + 8]
mov esi, 0xfffffc18
mov ecx, dword [edi + 0x14]
xorps xmm2, xmm2
mov dword [esp + 0x8c], eax
xorps xmm6, xmm6
add eax, edx
mov dword [esp + 0x50], ecx
xor edx, edx
mov dword [esp + 0x24], eax
mov dword [esp + 0x94], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x20], esi
mov dword [esp + 0x5c], esi
cmp byte [esp + 0x1a], dl
je 0x100b93b5
mov eax, dword [edi + 0x3c]
or esi, 0xffffffff
mov dword [esp + 0x20], esi
lea eax, [ecx + eax*2]
mov dword [esp + 0x94], eax
lea edx, [esi + 2]
cmp byte [esp + 0x78], 0
je 0x100b93e1
mov ecx, dword [edi + 0x44]
cmp dword [edi + 0x40], ecx
mov eax, dword [esp + 0x50]
cmovl ecx, dword [edi + 0x40]
inc edx
mov dword [esp + 0x5c], 0xffffffff
lea eax, [eax + ecx*2]
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x40]
movzx eax, al
add edx, eax
xor eax, eax
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x50]
movzx eax, word [eax]
test ax, ax
je 0x100b9459
mov edi, dword [esp + 0x20]
mov esi, eax
cmp si, 0xa
jne 0x100b943f
mov eax, dword [esp + 0x2c]
inc eax
mov dword [esp + 0x2c], eax
cmp edi, 0xffffffff
jne 0x100b9426
cmp ecx, dword [esp + 0x94]
jb 0x100b9426
dec edx
mov edi, eax
test edx, edx
jle 0x100b944d
cmp dword [esp + 0x5c], 0xffffffff
jne 0x100b943f
cmp ecx, dword [esp + 0x90]
jb 0x100b943f
dec edx
mov dword [esp + 0x5c], eax
test edx, edx
jle 0x100b944d
movzx eax, word [ecx + 2]
add ecx, 2
mov esi, eax
test ax, ax
jne 0x100b9402
mov dword [esp + 0x20], edi
mov edi, dword [esp + 0x3c]
mov esi, dword [esp + 0x20]
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x94]
inc eax
cmp esi, 0xffffffff
mov dword [esp + 0x2c], eax
mov ecx, eax
cmovne ecx, esi
mov esi, dword [esp + 0x50]
mov dword [esp + 0xac], ecx
mov ecx, dword [esp + 0x5c]
cmp ecx, 0xffffffff
cmove ecx, eax
mov dword [esp + 0x5c], ecx
mov ecx, edx
cmp edx, esi
jbe 0x100b949e
cmp word [ecx - 2], 0xa
je 0x100b949e
add ecx, 0xfffffffe
cmp ecx, esi
ja 0x100b9490
mov eax, dword [0x102a1910]
movaps xmm0, xmm2
movss dword [esp + 0x20], xmm0
movaps xmm1, xmm2
mov esi, dword [eax + 0x18c0]
movss xmm4, dword [eax + 0x18c4]
divss xmm4, dword [esi + 0x10]
cmp ecx, edx
jae 0x100b951c
mov edi, dword [esp + 0x94]
nop dword [eax]
movzx eax, word [ecx]
add ecx, 2
mov edx, eax
cmp eax, 0xa
jne 0x100b94ec
maxss xmm0, xmm1
movaps xmm1, xmm2
movss dword [esp + 0x20], xmm0
jmp 0x100b9514
cmp edx, 0xd
je 0x100b9514
mov edx, eax
cmp edx, dword [esi]
jge 0x100b9501
mov eax, dword [esi + 8]
movss xmm0, dword [eax + edx*4]
jmp 0x100b9506
movss xmm0, dword [esi + 0xc]
mulss xmm0, xmm4
addss xmm1, xmm0
movss xmm0, dword [esp + 0x20]
cmp ecx, edi
jb 0x100b94d0
mov edi, dword [esp + 0x3c]
cmp dword [esp + 0x5c], 0
maxss xmm0, xmm1
movd xmm5, dword [esp + 0xac]
mov ecx, dword [esp + 0x14]
cvtdq2ps xmm5, xmm5
movss xmm3, dword [ecx + 0x18c4]
mulss xmm5, xmm3
movss dword [esp + 0x20], xmm0
movss dword [esp + 0x12c], xmm5
jl 0x100b95ef
mov edx, dword [esp + 0x90]
mov ecx, edx
cmp edx, dword [esp + 0x50]
jbe 0x100b9582
mov edi, dword [esp + 0x50]
nop dword [eax]
cmp word [ecx - 2], 0xa
je 0x100b957e
add ecx, 0xfffffffe
cmp ecx, edi
ja 0x100b9570
mov edi, dword [esp + 0x3c]
movaps xmm6, xmm2
cmp ecx, edx
jae 0x100b95da
xorps xmm7, xmm7
nop dword [eax]
movzx eax, word [ecx]
add ecx, 2
cmp eax, 0xa
jne 0x100b95a4
maxss xmm6, xmm2
movaps xmm2, xmm7
jmp 0x100b95d0
cmp eax, 0xd
je 0x100b95d0
mov edx, eax
cmp edx, dword [esi]
jge 0x100b95b9
mov eax, dword [esi + 8]
movss xmm1, dword [eax + edx*4]
jmp 0x100b95be
movss xmm1, dword [esi + 0xc]
mov edx, dword [esp + 0x90]
movaps xmm0, xmm4
mulss xmm0, xmm1
addss xmm2, xmm0
cmp ecx, edx
jb 0x100b9590
movss xmm0, dword [esp + 0x20]
movd xmm7, dword [esp + 0x5c]
maxss xmm6, xmm2
mov ecx, dword [esp + 0x14]
cvtdq2ps xmm7, xmm7
mulss xmm7, xmm3
mov edx, dword [esp + 0x40]
test dl, dl
je 0x100b961b
movd xmm2, dword [esp + 0x2c]
cvtdq2ps xmm2, xmm2
mulss xmm2, xmm3
movss xmm3, dword [esp + 0x80]
movss dword [esp + 0x64], xmm3
movss dword [esp + 0x30], xmm2
jmp 0x100b9624
movss xmm3, dword [esp + 0x80]
cmp byte [esp + 0x1a], 0
je 0x100b96fb
cmp byte [edi + 0xe64], 0
je 0x100b96fb
test dword [ebp + 0x14], 0x1000
jne 0x100b9699
movss xmm2, dword [edi + 0x38]
movaps xmm1, xmm3
comiss xmm2, xmm0
mulss xmm1, dword [0x101f0774]
jbe 0x100b9677
subss xmm0, xmm1
xorps xmm2, xmm2
maxss xmm0, xmm2
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x38], xmm0
jmp 0x100b96a3
subss xmm0, xmm3
comiss xmm0, xmm2
xorps xmm2, xmm2
jb 0x100b96a3
addss xmm1, xmm0
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x38], xmm0
jmp 0x100b96a3
mov dword [edi + 0x38], 0
xorps xmm2, xmm2
test dl, dl
je 0x100b96f4
mov edx, dword [esp + 0x68]
movaps xmm0, xmm5
subss xmm0, dword [ecx + 0x18c4]
movss xmm1, dword [edx + 0x54]
comiss xmm1, xmm0
jbe 0x100b96c6
maxss xmm0, xmm2
jmp 0x100b96d3
movaps xmm0, xmm5
subss xmm0, dword [esp + 0x74]
maxss xmm0, xmm1
mov eax, dword [esp + 0x58]
subss xmm1, xmm0
movss dword [edx + 0x54], xmm0
addss xmm1, dword [eax + 4]
movss dword [esp + 0x7c], xmm1
movss dword [esp + 0x88], xmm1
mov byte [edi + 0xe64], 0
cmp byte [esp + 0x78], 0
movss xmm4, dword [edi + 0x38]
movss dword [esp + 0x2c], xmm4
je 0x100b99d5
mov edx, dword [edi + 0x44]
mov eax, edx
mov ecx, dword [edi + 0x40]
cmp ecx, edx
mov esi, dword [esp + 0x50]
cmovl eax, ecx
cmovge edx, ecx
cmp byte [esp + 0x1a], 0
lea esi, [esi + eax*2]
mov eax, dword [esp + 0x50]
lea eax, [eax + edx*2]
mov dword [esp + 0x90], eax
je 0x100b9747
movss xmm1, dword [0x101f0824]
jmp 0x100b974f
movss xmm1, dword [0x101f07d0]
mov ecx, 0x2a
call fcn.1008fac0
cmp byte [esp + 0x40], 0
mov dword [esp + 0xac], eax
je 0x100b9775
xorps xmm0, xmm0
movss dword [esp + 0xf0], xmm0
jmp 0x100b977d
movss xmm0, dword [0x101f0870]
mov ecx, dword [esp + 0x58]
movss dword [esp + 0x94], xmm0
movss xmm4, dword [ecx]
mov ecx, dword [esp + 0x90]
addss xmm4, xmm6
movss xmm6, dword [esp + 0x7c]
movaps xmm5, xmm6
addss xmm5, xmm7
subss xmm4, dword [esp + 0x2c]
movss dword [esp + 0x78], xmm5
cmp esi, ecx
jae 0x100b9a2b
movss xmm7, dword [esp + 0x60]
mov eax, dword [esp + 0x58]
mov edi, dword [esp + 0xac]
mov edx, dword [esp + 0x14]
nop
movss xmm6, dword [edx + 0x18c4]
movaps xmm0, xmm7
addss xmm0, xmm6
comiss xmm5, xmm0
ja 0x100b99cb
movss xmm0, dword [esp + 0x9c]
comiss xmm0, xmm5
jbe 0x100b9819
cmp esi, ecx
jae 0x100b99ab
nop
mov ax, word [esi]
add esi, 2
cmp ax, 0xa
je 0x100b99a7
cmp esi, ecx
jb 0x100b9800
jmp 0x100b99a7
mov eax, dword [0x102a1910]
xorps xmm0, xmm0
xorps xmm3, xmm3
xorps xmm1, xmm1
mov edx, dword [eax + 0x18c0]
movss xmm2, dword [eax + 0x18c4]
divss xmm2, dword [edx + 0x10]
cmp esi, ecx
jae 0x100b987b
nop
movzx eax, word [esi]
add esi, 2
cmp eax, 0xa
je 0x100b98a0
cmp eax, 0xd
je 0x100b9874
mov ecx, eax
cmp ecx, dword [edx]
jge 0x100b9860
mov eax, dword [edx + 8]
movss xmm0, dword [eax + ecx*4]
jmp 0x100b9865
movss xmm0, dword [edx + 0xc]
mov ecx, dword [esp + 0x90]
mulss xmm0, xmm2
addss xmm1, xmm0
cmp esi, ecx
jb 0x100b9840
xorps xmm0, xmm0
maxss xmm3, xmm1
comiss xmm0, xmm3
jb 0x100b98c7
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x18c0]
cmp dword [eax], 0x20
jle 0x100b98af
mov eax, dword [eax + 8]
movss xmm0, dword [eax + 0x80]
jmp 0x100b98b4
movaps xmm3, xmm1
xorps xmm0, xmm0
maxss xmm3, xmm0
xorps xmm1, xmm1
jmp 0x100b987b
movss xmm0, dword [eax + 0xc]
mulss xmm0, dword [0x101f07bc]
cvttss2si eax, xmm0
movd xmm3, eax
cvtdq2ps xmm3, xmm3
movss xmm2, dword [esp + 0xf0]
addss xmm3, xmm4
movss xmm1, dword [esp + 0x94]
subss xmm2, xmm6
movss xmm6, dword [esp + 0x38]
addss xmm1, xmm5
maxss xmm4, dword [esp + 0x98]
movaps xmm0, xmm7
minss xmm3, xmm6
addss xmm2, xmm5
minss xmm0, xmm1
movss dword [esp + 0xc0], xmm4
movss dword [esp + 0xc8], xmm3
maxss xmm2, dword [esp + 0x9c]
comiss xmm0, dword [esp + 0x9c]
movss dword [esp + 0xc4], xmm2
movss dword [esp + 0xcc], xmm0
jbe 0x100b99a3
comiss xmm7, xmm2
jbe 0x100b99a3
comiss xmm3, dword [esp + 0x98]
jbe 0x100b99a3
comiss xmm6, xmm4
jbe 0x100b99a3
push 0xf
push ecx
mov dword [esp], 0
lea eax, [esp + 0xd0]
push edi
push eax
lea eax, [esp + 0xd0]
push eax
mov eax, dword [esp + 0x7c]
mov ecx, dword [eax + 0x284]
call fcn.100a9530
movss xmm0, dword [esp + 0x48]
movss xmm5, dword [esp + 0x78]
movss xmm7, dword [esp + 0x60]
mov ecx, dword [esp + 0x90]
movss dword [esp + 0x48], xmm0
movss xmm0, dword [esp + 0x70]
movss dword [esp + 0x70], xmm0
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x58]
movss xmm4, dword [eax]
addss xmm5, dword [edx + 0x18c4]
subss xmm4, dword [esp + 0x2c]
movss dword [esp + 0x78], xmm5
cmp esi, ecx
jb 0x100b97d0
movss xmm4, dword [esp + 0x2c]
mov edi, dword [esp + 0x3c]
movss xmm6, dword [esp + 0x7c]
cmp byte [esp + 0x40], 0
jne 0x100b99f3
cmp dword [esp + 0x8c], 0x200000
jge 0x100b9c56
mov eax, dword [0x102a1910]
xorps xmm7, xmm7
movss xmm5, dword [0x101f0824]
movups xmm0, xmmword [eax + 0x15c0]
comiss xmm7, xmm0
movaps xmm1, xmm0
movaps xmmword [esp + 0xc0], xmm0
shufps xmm1, xmm0, 0xff
mulss xmm1, dword [eax + 0x1510]
jbe 0x100b9a33
xorps xmm0, xmm0
jmp 0x100b9a37
movss xmm4, dword [esp + 0x2c]
jmp 0x100b99db
minss xmm0, xmm5
movss xmm2, dword [0x101f0a98]
movss xmm3, dword [0x101f07bc]
mulss xmm0, xmm2
addss xmm0, xmm3
cvttss2si ecx, xmm0
movss xmm0, dword [esp + 0xc4]
shl ecx, 0x10
comiss xmm7, xmm0
jbe 0x100b9a69
xorps xmm0, xmm0
jmp 0x100b9a6d
minss xmm0, xmm5
mulss xmm0, xmm2
addss xmm0, xmm3
cvttss2si eax, xmm0
movss xmm0, dword [esp + 0xc8]
shl eax, 8
or ecx, eax
comiss xmm7, xmm0
jbe 0x100b9a91
xorps xmm0, xmm0
jmp 0x100b9a95
minss xmm0, xmm5
mulss xmm0, xmm2
addss xmm0, xmm3
cvttss2si eax, xmm0
or ecx, eax
comiss xmm7, xmm1
jbe 0x100b9aad
xorps xmm1, xmm1
jmp 0x100b9ab1
minss xmm1, xmm5
mov edx, dword [esp + 0x58]
mov esi, dword [esp + 0x68]
mulss xmm1, xmm2
mov dword [esp + 0x8c], 0
movss xmm0, dword [edx]
mov edx, dword [esp + 0x14]
subss xmm0, xmm4
mov esi, dword [esi + 0x284]
addss xmm1, xmm3
movss dword [esp + 0xf4], xmm6
movss xmm2, dword [edx + 0x18c4]
mov edx, dword [edx + 0x18c0]
cvttss2si eax, xmm1
mov dword [esp + 0x60], edx
lea edx, [esp + 0x110]
movss dword [esp + 0xf0], xmm0
shl eax, 0x18
or eax, ecx
cmp byte [esp + 0x40], 0
mov ecx, dword [esp + 0x24]
cmovne edx, dword [esp + 0x8c]
mov dword [esp + 0xac], eax
mov dword [esp + 0x38], ecx
test eax, 0xff000000
je 0x100b9c59
test ecx, ecx
jne 0x100b9b69
mov ecx, dword [ebp + 8]
lea eax, [ecx + 1]
mov dword [esp + 0x8c], eax
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100b9b50
sub ecx, dword [esp + 0x8c]
mov eax, dword [ebp + 8]
add ecx, eax
mov dword [esp + 0x38], ecx
jmp 0x100b9b6c
mov eax, dword [ebp + 8]
cmp eax, ecx
je 0x100b9c59
cmp dword [esp + 0x60], 0
jne 0x100b9b85
mov eax, dword [esi + 0x28]
mov eax, dword [eax + 8]
mov dword [esp + 0x60], eax
ucomiss xmm2, xmm7
lahf
test ah, 0x44
jp 0x100b9b96
mov eax, dword [esi + 0x28]
movss xmm2, dword [eax + 0xc]
mov ecx, dword [esi + 0x40]
mov eax, dword [esi + 0x48]
shl ecx, 4
movups xmm0, xmmword [ecx + eax - 0x10]
movups xmmword [esp + 0xc0], xmm0
test edx, edx
je 0x100b9c17
movss xmm1, dword [edx]
movss xmm0, dword [esp + 0xc0]
comiss xmm0, xmm1
jae 0x100b9bcb
movss dword [esp + 0xc0], xmm1
movss xmm1, dword [edx + 4]
movss xmm0, dword [esp + 0xc4]
comiss xmm0, xmm1
jae 0x100b9be7
movss dword [esp + 0xc4], xmm1
movss xmm0, dword [edx + 8]
comiss xmm0, dword [esp + 0xc8]
ja 0x100b9bff
movss dword [esp + 0xc8], xmm0
movss xmm0, dword [edx + 0xc]
comiss xmm0, dword [esp + 0xcc]
ja 0x100b9c17
movss dword [esp + 0xcc], xmm0
push dword [esp + 0xf4]
test edx, edx
push dword [esp + 0xf4]
setne al
movzx eax, al
push eax
push ecx
mov ecx, dword [esp + 0x70]
lea eax, [esp + 0xd0]
mov dword [esp], 0
push dword [esp + 0x48]
push dword [ebp + 8]
push eax
push dword [esp + 0xc8]
push esi
call fcn.100ad570
xorps xmm7, xmm7
cmp byte [esp + 0x1a], 0
mov ecx, dword [esp + 0x14]
lea esi, [ecx + 0x18c4]
mov eax, esi
je 0x100b9ebb
movss xmm0, dword [ecx + 0x18]
addss xmm0, dword [edi + 0xe60]
movss dword [edi + 0xe60], xmm0
cmp byte [ecx + 0xb2], 0
movss dword [esp + 0x8c], xmm0
je 0x100b9ccb
comiss xmm7, xmm0
jae 0x100b9ccb
fld dword [esp + 0x8c]
fld dword [0x101f0830]
call sub.api_ms_win_crt_math_l1_1_0.dll__CIfmod
movss xmm0, dword [0x101f07f4]
fstp dword [esp + 0x8c]
comiss xmm0, dword [esp + 0x8c]
jae 0x100b9ccb
xor al, al
jmp 0x100b9ccd
mov al, 1
movss xmm4, dword [esp + 0x7c]
mov ecx, dword [esp + 0x58]
movss xmm3, dword [esp + 0x20]
movss xmm6, dword [0x101f07bc]
movss xmm7, dword [0x101f0824]
addss xmm4, dword [esp + 0x12c]
addss xmm3, dword [ecx]
movss dword [esp + 0x7c], xmm4
movaps xmm0, xmm4
movaps xmm2, xmm4
subss xmm3, dword [esp + 0x2c]
subss xmm0, dword [esi]
subss xmm2, dword [0x101f083c]
movss dword [esp + 0x20], xmm3
movaps xmm1, xmm3
movss dword [esp + 0xc0], xmm3
addss xmm0, xmm6
movss dword [esp + 0xcc], xmm2
addss xmm1, xmm7
movss dword [esp + 0xc4], xmm0
movss dword [esp + 0xc8], xmm1
test al, al
je 0x100b9e94
comiss xmm2, dword [esp + 0x9c]
jbe 0x100b9e94
movss xmm4, dword [esp + 0x70]
comiss xmm4, xmm0
jbe 0x100b9e8e
comiss xmm1, dword [esp + 0x98]
jbe 0x100b9e8e
movss xmm0, dword [esp + 0x48]
comiss xmm0, xmm3
jbe 0x100b9e8e
mov eax, dword [0x102a1910]
xorps xmm5, xmm5
movups xmm1, xmmword [eax + 0x15c0]
comiss xmm5, xmm1
movaps xmm0, xmm1
movaps xmmword [esp + 0x110], xmm1
shufps xmm0, xmm1, 0xff
mulss xmm0, dword [eax + 0x1510]
jbe 0x100b9dbf
xorps xmm1, xmm1
jmp 0x100b9dc3
minss xmm1, xmm7
movss xmm4, dword [0x101f0a98]
mulss xmm1, xmm4
addss xmm1, xmm6
cvttss2si ecx, xmm1
movss xmm1, dword [esp + 0x114]
shl ecx, 0x10
comiss xmm5, xmm1
jbe 0x100b9ded
xorps xmm1, xmm1
jmp 0x100b9df1
minss xmm1, xmm7
mulss xmm1, xmm4
addss xmm1, xmm6
cvttss2si eax, xmm1
movss xmm1, dword [esp + 0x118]
shl eax, 8
or ecx, eax
comiss xmm5, xmm1
jbe 0x100b9e15
xorps xmm1, xmm1
jmp 0x100b9e19
minss xmm1, xmm7
mulss xmm1, xmm4
addss xmm1, xmm6
cvttss2si eax, xmm1
or ecx, eax
comiss xmm5, xmm0
jbe 0x100b9e31
xorps xmm0, xmm0
jmp 0x100b9e35
minss xmm0, xmm7
mulss xmm0, xmm4
push ecx
mov dword [esp], 0x3f800000
movss dword [esp + 0xb4], xmm3
addss xmm0, xmm6
movss dword [esp + 0xb8], xmm2
cvttss2si eax, xmm0
shl eax, 0x18
or eax, ecx
push eax
lea eax, [esp + 0xb8]
push eax
lea eax, [esp + 0xcc]
push eax
mov eax, dword [esp + 0x78]
mov ecx, dword [eax + 0x284]
call fcn.100a9210
movss xmm3, dword [esp + 0x20]
movss xmm7, dword [0x101f0824]
movss xmm4, dword [esp + 0x7c]
cmp byte [esp + 0x4c], 0
mov eax, esi
jne 0x100b9ebb
mov eax, dword [esp + 0x14]
subss xmm3, xmm7
subss xmm4, dword [esi]
movss dword [eax + 0x2d24], xmm3
movss dword [eax + 0x2d28], xmm4
mov eax, esi
cmp byte [esp + 0x40], 0
je 0x100b9efa
movss xmm0, dword [esp + 0x64]
lea ecx, [esp + 0xb0]
movss dword [esp + 0xb0], xmm0
movss xmm0, dword [esp + 0x30]
addss xmm0, dword [eax]
movss dword [esp + 0xb4], xmm0
call fcn.100b53c0
call fcn.10094830
call fcn.10099de0
mov edi, dword [esp + 0x24]
mov ecx, dword [esp + 0xa8]
test cl, cl
je 0x100b9f66
mov esi, dword [0x102a1910]
mov eax, dword [esi + 0x19b0]
mov ecx, dword [eax + 0x284]
dec dword [ecx + 0x4c]
call fcn.100a7320
mov ecx, dword [esi + 0x1ab4]
sub ecx, 1
mov dword [esi + 0x1ab4], ecx
jne 0x100b9f50
mov eax, dword [0x102a1910]
mov ecx, dword [eax + 0xa4]
test ecx, ecx
jne 0x100b9f5a
mov eax, dword [eax + 0x98]
mov eax, dword [eax + 0x44]
mov ecx, dword [eax]
jmp 0x100b9f5a
mov eax, dword [esi + 0x1abc]
mov ecx, dword [eax + ecx*4 - 4]
call fcn.10099730
mov ecx, dword [esp + 0xa8]
mov eax, dword [esp + 0x14]
cmp byte [eax + 0x2d60], 0
je 0x100b9f8e
test cl, cl
jne 0x100b9f8e
mov edx, dword [ebp + 8]
lea ecx, [esp + 0x84]
push edi
call fcn.1009e2f0
mov eax, dword [esp + 0x18]
add esp, 4
movss xmm0, dword [esp + 0x10c]
xorps xmm7, xmm7
comiss xmm0, xmm7
jbe 0x100b9ff4
movss xmm0, dword [esp + 0xa0]
xor edx, edx
addss xmm0, dword [eax + 0x1560]
mov ecx, dword [esp + 0xec]
movss dword [esp + 0x84], xmm0
movss xmm0, dword [esp + 0x9c]
addss xmm0, dword [eax + 0x154c]
movss dword [esp + 0x88], xmm0
push dword [esp + 0x88]
push dword [esp + 0x88]
push 1
call fcn.1008fc60
add esp, 0xc
mov dl, byte [esp + 0x57]
mov ecx, dword [ebp + 0x14]
test dl, dl
je 0x100ba022
test ecx, 0x200000
jne 0x100ba022
mov eax, dword [0x102a1910]
mov word [eax + 0x19fb], 0x101
mov eax, dword [eax + 0x19b0]
or dword [eax + 0x11c], 4
test cl, 0x20
movzx eax, dl
movzx ecx, byte [esp + 0x37]
pop edi
cmovne eax, ecx
pop esi
mov esp, ebp
pop ebp
ret