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

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], rbx
mov dword [rax + 0x18], r8d
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x128]
sub rsp, 0x1f0
mov rbx, qword [0x14007c440]
mov r15, r9
movaps xmmword [rax - 0x48], xmm6
mov rdi, rcx
movaps xmmword [rax - 0x58], xmm7
mov r14, rbx
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x88], xmm10
movaps xmmword [rax - 0x98], xmm11
movaps xmmword [rax - 0xa8], xmm12
mov rax, qword [rbx + 0x19f8]
mov qword [rbp - 0x70], rbx
mov byte [rax + 0x7c], 1
mov rsi, qword [rbx + 0x19f8]
cmp byte [rsi + 0x7f], 0
jne 0x140031b4b
mov ecx, dword [rbp + 0x150]
mov eax, ecx
shr eax, 0xe
mov r13d, ecx
not al
shr r13d, 0x14
and al, 1
mov dword [rsp + 0x5c], ecx
mov dword [rsp + 0x60], eax
and r13b, 1
mov eax, ecx
mov dword [rsp + 0x58], r13d
shr eax, 0xf
and al, 1
mov dword [rbp - 0x68], eax
mov eax, ecx
shr eax, 0x10
not al
and al, 1
mov dword [rbp - 0x64], eax
mov eax, ecx
shr eax, 0x12
and al, 1
mov dword [rbp - 0x7c], eax
test r13b, r13b
je 0x1400318fe
call fcn.1400101f0
mov rbx, qword [0x14007c440]
movsxd rcx, dword [rsi + 0x1e0]
xor edx, edx
mov rax, qword [rsi + 0x1e8]
mov r8d, dword [rax + rcx*4 - 4]
mov rcx, rdi
call fcn.14001d630
mov r12d, eax
mov dword [rsp + 0x78], eax
cmp dword [rbx + 0x1a24], eax
jne 0x140031930
mov dword [rbx + 0x1a2c], eax
cmp dword [rbx + 0x1a28], r12d
jne 0x140031940
mov byte [rbx + 0x1a37], 1
mov rax, rdi
cmp rdi, 0xffffffffffffffff
jae 0x14003196a
nop dword [rax]
movzx ecx, byte [rax]
test cl, cl
je 0x14003196a
cmp cl, 0x23
jne 0x140031961
cmp byte [rax + 1], cl
je 0x14003196a
inc rax
cmp rax, 0xffffffffffffffff
jb 0x140031950
mov rcx, qword [rbp + 0x130]
movss xmm0, dword [0x14004c650]
mov rdi, qword [rbx + 0x18f0]
movss xmm6, dword [rbx + 0x18f8]
movss dword [rbp - 0x34], xmm0
cmp rcx, rax
jne 0x14003199c
xorps xmm9, xmm9
xorps xmm12, xmm12
jmp 0x1400319fd
movss xmm3, dword [0x14004c644]
lea rdx, [rbp + 0x158]
mov qword [rsp + 0x30], rax
movaps xmm2, xmm6
mov qword [rsp + 0x28], rcx
mov rcx, rdi
movss dword [rsp + 0x20], xmm0
call fcn.14002c960
movss xmm0, dword [rbp + 0x158]
xorps xmm9, xmm9
comiss xmm0, xmm9
jbe 0x1400319e0
divss xmm6, dword [rdi]
subss xmm0, xmm6
addss xmm0, dword [0x14004c4e0]
movss xmm6, dword [rbp + 0x15c]
cvttss2si eax, xmm0
movd xmm12, eax
cvtdq2ps xmm12, xmm12
movss dword [rbp - 0x38], xmm12
test r13b, r13b
je 0x140031a18
movss xmm6, dword [rbx + 0x18f8]
mulss xmm6, dword [0x14004c5cc]
movss xmm7, dword [r14 + 0x1588]
movaps xmm4, xmm7
addss xmm4, xmm7
addss xmm4, xmm6
call fcn.1400111b0
mov rdx, qword [r15]
lea rcx, [rbp + 0x158]
movaps xmm2, xmm0
movaps xmm3, xmm4
call fcn.14001a140
comiss xmm12, xmm9
movss xmm3, dword [rsi + 0xc8]
movss xmm6, dword [rbp + 0x15c]
movaps xmm0, xmm3
movss xmm4, dword [rsi + 0xcc]
movaps xmm1, xmm6
movss xmm10, dword [rbp + 0x158]
addss xmm1, xmm4
addss xmm0, xmm10
movss dword [rbp - 0x40], xmm6
movss dword [rsp + 0x68], xmm3
movss dword [rsp + 0x6c], xmm4
movss dword [rsp + 0x74], xmm1
movss dword [rsp + 0x70], xmm0
jbe 0x140031aa8
movaps xmm2, xmm12
addss xmm2, dword [r14 + 0x159c]
jmp 0x140031aab
xorps xmm2, xmm2
movss dword [rbp - 0x58], xmm3
addss xmm0, xmm2
movss dword [rbp - 0x54], xmm4
addss xmm1, xmm9
mov qword [rbp - 0x60], rsi
movss dword [rbp - 0x50], xmm0
movss dword [rbp - 0x4c], xmm1
test r13b, r13b
je 0x140031bbc
lea r8, [rsp + 0x68]
mov edx, r12d
lea rcx, [rbp - 0x58]
call fcn.14001a5b0
movss xmm8, dword [rsp + 0x70]
lea rdx, [rbp + 0x158]
movss xmm7, dword [rsp + 0x68]
movaps xmm0, xmm8
movss xmm1, dword [rsp + 0x74]
subss xmm0, xmm7
movss xmm11, dword [rsp + 0x6c]
mov ecx, r12d
subss xmm1, xmm11
movss dword [rbp - 0x30], xmm8
movss dword [rbp - 0x3c], xmm7
movss dword [rbp - 0x80], xmm11
movss dword [rbp + 0x158], xmm0
movss dword [rbp + 0x15c], xmm1
call fcn.140016050
test al, al
jne 0x140031b8b
call fcn.1400162c0
call fcn.14000ff50
xor al, al
lea r11, [rsp + 0x1f0]
mov rbx, qword [r11 + 0x58]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rcx, qword [0x14007c440]
mov rax, qword [rcx + 0x19f8]
mov byte [rax + 0x7c], 1
mov rbx, qword [rcx + 0x19f8]
mov qword [rbp - 0x60], rbx
mov eax, dword [rbx + 0x138]
or dword [rbx + 0x140], eax
subss xmm10, dword [rbx + 0x70]
jmp 0x140031c1f
subss xmm1, xmm4
subss xmm0, xmm3
lea rcx, [rbp + 0x158]
movss dword [rbp + 0x15c], xmm1
movaps xmm1, xmm7
movss dword [rbp + 0x158], xmm0
call fcn.14001a730
lea r8, [rsp + 0x68]
mov edx, r12d
lea rcx, [rbp - 0x58]
call fcn.14001a5b0
test al, al
je 0x140031b4b
movss xmm0, dword [rsp + 0x70]
movss xmm11, dword [rsp + 0x6c]
movss xmm7, dword [rsp + 0x68]
movss dword [rbp - 0x30], xmm0
movss dword [rbp - 0x80], xmm11
movss dword [rbp - 0x3c], xmm7
mov edx, r12d
movaps xmmword [rsp + 0x150], xmm15
lea rcx, [rsp + 0x68]
call fcn.14001a420
mov byte [rbp + 0x160], al
movzx edi, al
test al, al
je 0x140031c4d
mov dword [r14 + 0x1d70], 1
cmp byte [rbp - 0x68], 0
je 0x140031d2f
mov rdx, qword [r14 + 0x18f0]
cmp dword [rdx + 0x30], 0x2a
jg 0x140031c6a
mov r8, qword [rdx + 0x40]
jmp 0x140031c8e
mov rax, qword [rdx + 0x38]
movzx ecx, word [rax + 0x54]
mov eax, 0xffff
cmp cx, ax
jne 0x140031c82
mov r8, qword [rdx + 0x40]
jmp 0x140031c8e
mov rax, qword [rdx + 0x18]
lea rcx, [rcx + rcx*4]
lea r8, [rax + rcx*8]
mov eax, dword [rdx]
lea rdi, [r14 + 0x2cd8]
mov rbx, qword [0x14007c440]
mov dword [rdi], eax
mov eax, dword [rdx + 4]
mov dword [rdi + 4], eax
mov rax, qword [r14 + 0x18f0]
mov qword [rbp + 0x158], rdi
movsd xmm0, qword [rax + 8]
movsd qword [rdi + 8], xmm0
mov rax, qword [r14 + 0x18f0]
mov ecx, dword [rax + 0x60]
mov dword [rdi + 0x60], ecx
mov rax, qword [r14 + 0x18f0]
mov ecx, dword [rax + 0x64]
mov dword [rdi + 0x64], ecx
mov rax, qword [r14 + 0x18f0]
mov rcx, qword [rax + 0x58]
mov qword [rdi + 0x58], rcx
mov rcx, rdi
mov qword [rdi + 0x40], r8
mov eax, dword [r8 + 4]
mov dword [rdi + 0x48], eax
call fcn.140011130
lea rdx, [rbp + 0x158]
lea rcx, [rbx + 0x1a98]
call fcn.1400027b0
mov rdx, qword [rdi + 0x58]
mov rcx, qword [rbx + 0x19f8]
mov rdx, qword [rdx + 8]
mov rcx, qword [rcx + 0x2a0]
call fcn.14002f070
movzx edi, byte [rbp + 0x160]
test dword [rsp + 0x5c], 0x440
mov edx, r12d
mov rcx, rsi
sete r8b
call fcn.14001a2c0
movzx ebx, al
test al, al
je 0x140031d60
mov ecx, dword [rsi + 0x3a8]
cmp dword [rsi + 0x3a0], ecx
jne 0x140031d60
mov r12b, 1
jmp 0x140031d6e
xor r12b, r12b
mov byte [rbp + 0x140], 1
test bl, bl
jne 0x140031d75
mov byte [rbp + 0x140], 0
test dil, dil
je 0x140031d89
cmp byte [r14 + 0x430], 0
je 0x140031d89
mov r13b, 1
jmp 0x140031d8c
xor r13b, r13b
cmp byte [rsp + 0x58], 0
mov edi, dword [rsp + 0x78]
je 0x140031ddc
cmp dword [r14 + 0x1a24], 0
jne 0x140031ddc
cmp dword [r14 + 0x1e50], edi
jne 0x140031ddc
mov rax, qword [rbp - 0x60]
xor edx, edx
movsxd rcx, dword [rax + 0x1e0]
mov rax, qword [rax + 0x1e8]
mov r8d, dword [rax + rcx*4 - 4]
lea rcx, str.SCROLLY
call fcn.14001d630
cmp dword [r14 + 0x1a28], eax
jne 0x140031ddc
mov cl, 1
jmp 0x140031dde
xor cl, cl
mov eax, dword [r14 + 0x1a24]
cmp eax, edi
je 0x140031e11
cmp dword [r14 + 0x1b58], edi
je 0x140031e05
cmp dword [r14 + 0x1b4c], edi
jne 0x140031e11
cmp dword [r14 + 0x1b68], 3
jne 0x140031e11
mov r15b, 1
mov byte [rbp + 0x158], r15b
jmp 0x140031e1f
xor r15b, r15b
mov byte [rbp + 0x158], r15b
cmp eax, edi
je 0x140031e37
test byte [rsp + 0x5c], 0x10
jne 0x140031e2b
test r15b, r15b
je 0x140031e37
cmp byte [rsp + 0x58], 0
jne 0x140031e37
mov dil, 1
jmp 0x140031e3a
xor dil, dil
xor r9d, r9d
test bl, bl
jne 0x140031e73
test r13b, r13b
jne 0x140031e73
test cl, cl
jne 0x140031e73
test r15b, r15b
jne 0x140031e73
lea r12d, [r9 + 1]
mov byte [rbp + 0x140], r9b
cmp byte [r14 + 0x430], r9b
je 0x1400320a7
mov byte [rbp + 0x140], r12b
jmp 0x1400320a7
mov ecx, dword [rsp + 0x78]
cmp eax, ecx
je 0x14003204b
mov r15d, dword [r14 + 0x1e8c]
mov rbx, 0xffffffffffffffff
mov rax, qword [rbp + 0x138]
inc rbx
cmp byte [rax + rbx], r9b
jne 0x140031e94
lea rcx, [r14 + 0x1e58]
mov edx, 0x21
call fcn.140002880
inc ebx
lea rcx, [r14 + 0x1e68]
mov edx, ebx
call fcn.140002a80
mov rcx, qword [r14 + 0x1e70]
movsxd r8, ebx
mov rbx, qword [rbp + 0x138]
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [r14 + 0x1e60]
xor eax, eax
mov qword [rsp + 0x50], rax
mov r8, rbx
lea rax, [rsp + 0x50]
mov edx, 0x20
mov qword [rsp + 0x20], rax
call fcn.14001cfe0
mov ecx, dword [rsp + 0x50]
mov edx, eax
sub ecx, ebx
mov dword [r14 + 0x1e8c], eax
mov dword [r14 + 0x1e88], ecx
mov ecx, dword [rsp + 0x78]
mov dword [r14 + 0x2cbc], 0xbe99999a
cmp dword [r14 + 0x1e50], ecx
jne 0x140031fd7
cmp r15d, eax
jne 0x140031fd7
mov eax, dword [r14 + 0x1e98]
mov ecx, edx
cmp eax, edx
cmovl ecx, eax
mov eax, dword [r14 + 0x1e9c]
cmp eax, edx
mov dword [r14 + 0x1e98], ecx
mov ecx, edx
cmovl ecx, eax
mov eax, dword [r14 + 0x1ea0]
cmp eax, edx
mov dword [r14 + 0x1e9c], ecx
mov ecx, dword [rsp + 0x78]
cmovl edx, eax
mov dword [r14 + 0x1ea0], edx
mov edx, dword [rsp + 0x58]
mov r12d, 1
mov ebx, dword [rsp + 0x5c]
bt ebx, 0xd
jae 0x140031f94
mov byte [r14 + 0x1ea4], 1
test dl, dl
jne 0x140032055
cmp byte [rbp + 0x140], dl
jne 0x140031fba
test r13b, r13b
je 0x140032055
cmp byte [r14 + 0x130], dl
je 0x140032055
mov rdx, rsi
mov dil, 1
call fcn.14001aa40
call fcn.14001a970
mov rcx, rsi
call fcn.140011320
jmp 0x140032078
mov dword [r14 + 0x1e50], ecx
xor edx, edx
mov qword [r14 + 0x1e94], rdx
mov dword [r14 + 0x2cb4], edx
mov qword [r14 + 0x1e9c], rdx
mov dword [r14 + 0x1eac], edx
mov edx, dword [rsp + 0x58]
movzx eax, dl
xor al, 1
mov dword [r14 + 0x2cae], 0x630000
mov dword [r14 + 0x2cb8], 0x3e7
mov dword [r14 + 0x1ea4], 0x10000
mov byte [r14 + 0x1ea8], al
test dl, dl
jne 0x140031f7c
test r12b, r12b
movzx edi, dil
mov r12d, 1
cmovne edi, r12d
jmp 0x140031f82
mov ebx, dword [rsp + 0x5c]
mov r12d, 1
mov rdx, rsi
call fcn.14001aa40
call fcn.14001a970
mov rcx, rsi
call fcn.140011320
cmp byte [rsp + 0x58], 0
mov byte [rbp + 0x140], 0
jne 0x14003209c
movzx r15d, byte [rbp + 0x158]
mov byte [rbp + 0x140], 0
test bl, bl
js 0x1400320a4
or dword [r14 + 0x1a3c], 0xc
mov byte [rbp + 0x140], 0
jmp 0x1400320a4
movzx r15d, byte [rbp + 0x158]
xor r9d, r9d
mov r13d, dword [rsp + 0x78]
xor cl, cl
mov edx, 0x1000c
movss xmm0, dword [0x14004c4bc]
mov byte [rsp + 0x7c], 0
mov byte [rsp + 0x7d], cl
mov dword [rbp - 0x78], r9d
cmp dword [r14 + 0x1a24], r13d
jne 0x140032863
cmp byte [rsp + 0x60], cl
jne 0x140032199
cmp byte [r14 + 0x1a34], cl
jne 0x140032199
mov edx, 0x21
lea rcx, [r14 + 0x1e58]
call fcn.140002880
mov rsi, qword [rbp + 0x138]
xor eax, eax
mov edx, dword [r14 + 0x1e58]
mov r8, rsi
mov rcx, qword [r14 + 0x1e60]
mov qword [rbp + 0x158], rax
lea rax, [rbp + 0x158]
mov qword [rsp + 0x20], rax
call fcn.14001cfe0
mov ecx, dword [rbp + 0x158]
mov r8d, eax
movss xmm0, dword [0x14004c4bc]
sub ecx, esi
mov dword [r14 + 0x1e88], ecx
mov edx, eax
mov ecx, dword [r14 + 0x1e98]
cmp ecx, eax
mov dword [r14 + 0x1e8c], eax
mov eax, dword [r14 + 0x1e9c]
cmovl edx, ecx
cmp eax, r8d
mov dword [r14 + 0x1e98], edx
mov ecx, r8d
mov edx, 0x1000c
cmovl ecx, eax
mov eax, dword [r14 + 0x1ea0]
cmp eax, r8d
mov dword [r14 + 0x1e9c], ecx
cmovl r8d, eax
xor r9d, r9d
mov dword [r14 + 0x1ea0], r8d
mov eax, dword [r14 + 0x1e88]
mov dword [r14 + 0x1e90], 0x20
mov qword [r14 + 0x2cc8], r9
mov qword [r14 + 0x2cd0], r9
mov dword [rbp - 0x78], eax
mov eax, dword [rsp + 0x5c]
mov dword [r14 + 0x2cc4], eax
cmp byte [r14 + 0x120], 0
mov dword [r14 + 0x2fe8], r12d
sete al
cmp byte [rsp + 0x58], 0
mov byte [r14 + 0x1a35], al
movss xmm6, dword [r14 + 0x118]
subss xmm6, xmm7
subss xmm6, dword [r14 + 0x1584]
addss xmm6, dword [r14 + 0x1e94]
je 0x140032226
mov rbx, qword [rbp - 0x60]
movss xmm2, dword [r14 + 0x11c]
subss xmm2, dword [rbx + 0xcc]
subss xmm2, dword [r14 + 0x1588]
jmp 0x140032233
movss xmm2, dword [r14 + 0x18f8]
mulss xmm2, xmm0
movzx esi, byte [r14 + 0xd1]
test dil, dil
jne 0x140032401
movzx ecx, byte [rbp + 0x160]
test cl, cl
je 0x140032268
movzx eax, byte [r14 + 0x435]
test sil, sil
jne 0x1400322ed
test al, al
jne 0x140032401
cmp byte [r14 + 0x430], 0
movzx eax, byte [r14 + 0x2cc1]
je 0x140032351
test al, al
jne 0x140032351
test cl, cl
je 0x14003242d
lea r12, [r14 + 0x1e50]
cmp byte [r14 + 0x1ea8], al
je 0x1400322b2
xor r8d, r8d
lea rcx, [rbp - 0x58]
mov rdx, r12
call fcn.140036a30
movss xmm2, dword [rbp - 0x4c]
movaps xmm1, xmm6
mov rcx, r12
call fcn.140036380
mov dword [r14 + 0x1e98], eax
xor r9d, r9d
mov dword [r14 + 0x1e9c], eax
mov dword [r14 + 0x1ea0], eax
mov byte [r14 + 0x1ea7], 0
mov dword [r14 + 0x2cbc], 0xbe99999a
jmp 0x140032434
test al, al
je 0x140032268
mov r8d, edx
lea r12, [r14 + 0x1e50]
mov rcx, r12
lea rdx, [r14 + 0x1e98]
call fcn.140035340
mov r8d, 0x3000d
mov byte [r14 + 0x2cc0], 1
lea rdx, [r14 + 0x1e98]
mov dword [r14 + 0x2cbc], 0xbe99999a
mov rcx, r12
call fcn.140035340
xor r9d, r9d
mov byte [r14 + 0x2cc0], 1
mov dword [r14 + 0x2cbc], 0xbe99999a
jmp 0x140032434
cmp byte [r14 + 0x120], 0
je 0x14003242d
test al, al
jne 0x14003242d
movss xmm0, dword [r14 + 0x3cc]
ucomiss xmm0, xmm9
jp 0x14003238d
jne 0x14003238d
movss xmm0, dword [r14 + 0x3d0]
ucomiss xmm0, xmm9
jp 0x14003238d
je 0x14003242d
cmp byte [r14 + 0x1ea8], 0
lea r12, [r14 + 0x1e50]
je 0x1400323b2
xor r8d, r8d
lea rcx, [rbp - 0x58]
mov rdx, r12
call fcn.140036a30
movss xmm2, dword [rbp - 0x4c]
mov eax, dword [r14 + 0x1ea0]
cmp dword [r14 + 0x1e9c], eax
jne 0x1400323d0
mov eax, dword [r14 + 0x1e98]
mov dword [r14 + 0x1e9c], eax
movaps xmm1, xmm6
mov rcx, r12
call fcn.140036380
mov dword [r14 + 0x1ea0], eax
xor r9d, r9d
mov dword [r14 + 0x1e98], eax
mov dword [r14 + 0x2cbc], 0xbe99999a
mov byte [r14 + 0x2cc0], 1
jmp 0x140032434
mov eax, dword [r14 + 0x1e8c]
mov dword [r14 + 0x1ea0], eax
mov dword [r14 + 0x1e98], eax
mov dword [r14 + 0x1e9c], r9d
mov byte [r14 + 0x1ea7], 0
mov byte [r14 + 0x2cc1], 1
lea r12, [r14 + 0x1e50]
cmp byte [r14 + 0x2cc1], 0
je 0x140032450
cmp byte [r14 + 0x120], 0
jne 0x140032450
mov byte [r14 + 0x2cc1], 0
lea rbx, [r14 + 0x334]
cmp word [rbx], 0
je 0x14003251a
cmp byte [r14 + 0x130], 0
je 0x140032479
cmp byte [r14 + 0x132], 0
je 0x1400324fd
test sil, sil
je 0x140032488
cmp byte [r14 + 0x133], 0
jne 0x1400324fd
cmp byte [rsp + 0x60], 0
je 0x1400324fd
test r15b, r15b
jne 0x1400324fd
mov r13d, dword [rsp + 0x5c]
mov edi, r9d
nop dword [rax]
movzx eax, word [rbx]
test ax, ax
je 0x1400324f5
mov edx, r13d
mov dword [rbp + 0x158], eax
lea rcx, [rbp + 0x158]
call fcn.140034680
test al, al
je 0x1400324ea
mov r8d, dword [rbp + 0x158]
lea rdx, [r14 + 0x1e98]
mov rcx, r12
call fcn.140035340
mov byte [r14 + 0x2cc0], 1
mov dword [r14 + 0x2cbc], 0xbe99999a
inc edi
add rbx, 2
cmp edi, 0x11
jl 0x1400324a0
mov r13d, dword [rsp + 0x78]
xor r9d, r9d
xorps xmm0, xmm0
xor eax, eax
movups xmmword [r14 + 0x334], xmm0
movups xmmword [r14 + 0x344], xmm0
mov word [r14 + 0x354], ax
movss xmm6, dword [rbp - 0x40]
cmp dword [r14 + 0x1a24], r13d
jne 0x140032863
cmp byte [r14 + 0x1a34], 0
jne 0x140032863
cmp byte [rbp + 0x140], 0
jne 0x140032863
movzx r8d, byte [r14 + 0x131]
movzx edx, byte [r14 + 0xd1]
movzx eax, r8b
movzx ecx, byte [r14 + 0x130]
neg al
sbb ebx, ebx
and ebx, 0x20000
test dl, dl
je 0x1400325c7
cmp byte [r14 + 0x133], 0
je 0x140032586
test cl, cl
jne 0x140032586
mov eax, 1
jmp 0x140032589
mov eax, r9d
test eax, eax
jne 0x1400325d5
xor r11b, r11b
mov byte [rbp + 0x158], r11b
movzx eax, cl
test dl, dl
je 0x1400325e9
cmp byte [r14 + 0x133], 0
je 0x1400325e9
test r8b, r8b
je 0x1400325e9
movzx eax, byte [r14 + 0x130]
test al, al
jne 0x1400325e9
cmp byte [r14 + 0x132], al
jne 0x1400325e9
mov dil, 1
jmp 0x1400325f0
test cl, cl
je 0x14003258d
cmp byte [r14 + 0x133], 0
jne 0x14003258d
cmp byte [r14 + 0x132], 0
jne 0x14003258d
test r8b, r8b
jne 0x14003258d
mov r11b, 1
jmp 0x140032590
xor dil, dil
test dl, dl
je 0x140032635
cmp byte [r14 + 0x133], 0
movzx r12d, byte [r14 + 0x132]
je 0x140032639
test al, al
jne 0x140032639
test r12b, r12b
jne 0x140032639
mov sil, 1
xor r9b, r9b
cmp byte [r14 + 0x131], r9b
je 0x140032659
test al, al
jne 0x140032659
cmp byte [r14 + 0x132], r9b
jne 0x140032659
cmp byte [r14 + 0x133], r9b
jne 0x140032659
mov r10b, 1
jmp 0x14003265c
movzx r12d, al
xor esi, esi
test al, al
je 0x14003260e
test r8b, r8b
jne 0x14003260e
cmp byte [r14 + 0x132], sil
jne 0x14003260e
cmp byte [r14 + 0x133], sil
jne 0x14003260e
mov r9b, 1
xor r10b, r10b
mov r15, qword [0x14007c440]
mov qword [rsp + 0x50], r15
test r11b, r11b
je 0x140032683
mov ecx, dword [r15 + 0x84]
test ecx, ecx
js 0x140032683
mov dl, 1
call fcn.140016ad0
test al, al
jne 0x14003269b
test r10b, r10b
je 0x1400326c4
mov ecx, dword [r15 + 0x64]
test ecx, ecx
js 0x1400326c4
mov dl, 1
call fcn.140016ad0
test al, al
je 0x1400326c4
cmp byte [rsp + 0x60], 0
je 0x1400326c4
cmp byte [rbp - 0x68], 0
jne 0x1400326c4
cmp byte [rsp + 0x58], 0
je 0x1400326bf
mov eax, dword [r14 + 0x1ea0]
cmp dword [r14 + 0x1e9c], eax
je 0x1400326c4
mov r13b, 1
jmp 0x1400326c7
xor r13b, r13b
test r11b, r11b
je 0x1400326df
mov ecx, dword [r15 + 0x7c]
test ecx, ecx
js 0x1400326df
mov dl, 1
call fcn.140016ad0
test al, al
jne 0x1400326f7
test r9b, r9b
je 0x140032719
mov ecx, dword [r15 + 0x60]
test ecx, ecx
js 0x140032719
mov dl, 1
call fcn.140016ad0
test al, al
je 0x140032719
cmp byte [rbp - 0x68], 0
jne 0x140032719
cmp byte [rsp + 0x58], 0
je 0x140032714
mov eax, dword [r14 + 0x1ea0]
cmp dword [r14 + 0x1e9c], eax
je 0x140032719
mov r15b, 1
jmp 0x14003271c
xor r15b, r15b
mov rax, qword [rsp + 0x50]
test r11b, r11b
je 0x140032740
mov ecx, dword [rax + 0x80]
test ecx, ecx
js 0x140032740
mov dl, 1
call fcn.140016ad0
test al, al
jne 0x140032757
mov rax, qword [rsp + 0x50]
test r10b, r10b
je 0x140032766
mov ecx, dword [rax + 0x60]
test ecx, ecx
js 0x140032766
mov dl, 1
call fcn.140016ad0
test al, al
je 0x140032766
mov r10d, dword [rsp + 0x60]
test r10b, r10b
je 0x14003276b
mov r11b, 1
jmp 0x14003276e
mov r10d, dword [rsp + 0x60]
xor r11b, r11b
movzx r9d, byte [rbp + 0x158]
test r9b, r9b
je 0x1400327a7
mov r8, qword [rsp + 0x50]
mov ecx, dword [r8 + 0x8c]
test ecx, ecx
js 0x1400327a7
mov dl, 1
call fcn.140016ad0
test al, al
je 0x1400327a7
test r10b, r10b
je 0x1400327a7
cmp byte [rbp - 0x64], 0
je 0x1400327a7
movzx r10d, dl
jmp 0x1400327af
xor r10b, r10b
test r9b, r9b
je 0x1400327c9
mov rax, qword [rsp + 0x50]
mov ecx, dword [rax + 0x88]
test ecx, ecx
js 0x1400327ce
mov dl, 1
call fcn.140016ad0
test al, al
jne 0x1400327e8
mov rax, qword [rsp + 0x50]
test dil, dil
je 0x1400327fa
mov ecx, dword [rax + 0x8c]
test ecx, ecx
js 0x1400327fa
mov dl, 1
call fcn.140016ad0
test al, al
je 0x1400327fa
cmp byte [rsp + 0x60], 0
je 0x1400327fa
cmp byte [rbp - 0x64], 0
je 0x1400327fa
mov r9b, 1
jmp 0x1400327fd
xor r9b, r9b
mov rdi, qword [rsp + 0x50]
mov ecx, dword [rdi + 0x40]
test ecx, ecx
js 0x140032a23
mov dl, 1
call fcn.140016ad0
test al, al
je 0x140032a23
test sil, sil
je 0x140032828
mov edi, 0x10004
jmp 0x140032838
test r12b, r12b
mov edi, 0x10000
mov eax, 0x1000c
cmovne edi, eax
or edi, ebx
lea rdx, [r14 + 0x1e98]
mov r8d, edi
lea rcx, [r14 + 0x1e50]
call fcn.140035340
mov byte [r14 + 0x2cc0], 1
mov dword [r14 + 0x2cbc], 0xbe99999a
mov r12, qword [0x14007c440]
mov qword [rsp + 0x50], r12
xor r10b, r10b
xor cl, cl
xor esi, esi
mov eax, dword [r14 + 0x1a24]
mov ebx, dword [rsp + 0x78]
cmp eax, ebx
jne 0x1400329de
mov qword [rbp + 0x158], rsi
mov r13d, esi
test cl, cl
je 0x140033267
cmp byte [rsp + 0x60], 0
je 0x1400328e8
mov r9, qword [r14 + 0x1e70]
mov rax, qword [rbp + 0x138]
mov r8, r9
sub r8, rax
nop word [rax + rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x1400328d3
inc rax
test ecx, ecx
jne 0x1400328c0
test edx, edx
je 0x1400328e8
mov r13d, dword [r14 + 0x1e68]
dec r13d
mov qword [rbp + 0x158], r9
mov ebx, dword [rsp + 0x5c]
test r10b, r10b
je 0x1400328fa
test bl, 0x20
jne 0x14003326b
mov rsi, qword [rbp + 0x138]
mov edi, dword [rbp - 0x7c]
mov r9, qword [rbp + 0x158]
test r9, r9
je 0x1400329bc
mov ecx, 0x20
cmp dword [rbp - 0x78], r13d
je 0x140032981
test dil, dil
je 0x140032981
xor edx, edx
mov dword [rbp + 0x10], 0x40000
lea eax, [r13 + 1]
mov qword [rbp + 0x20], rdx
cmp eax, ecx
mov dword [rbp + 0x14], ebx
xorps xmm0, xmm0
mov qword [rbp + 0x28], rsi
cmovle eax, ecx
mov dword [rbp + 0x30], r13d
lea rcx, [rbp + 0x10]
mov dword [rbp + 0x34], eax
movdqu xmmword [rbp + 0x38], xmm0
mov qword [rbp + 0x18], rdx
call rdx
mov ecx, dword [rbp + 0x34]
mov rsi, qword [rbp + 0x28]
mov r12, qword [0x14007c440]
mov qword [rbp + 0x138], rsi
lea r13d, [rcx - 1]
mov qword [rsp + 0x50], r12
cmp dword [rbp + 0x30], r13d
cmovl r13d, dword [rbp + 0x30]
lea eax, [r13 + 1]
cmp eax, ecx
cmovl ecx, eax
movsxd rbx, ecx
cmp rbx, 1
jb 0x1400329b7
mov rdx, qword [r14 + 0x1e80]
mov r8, rbx
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov r12, qword [0x14007c440]
mov qword [rsp + 0x50], r12
mov byte [rbx + rsi - 1], 0
mov byte [rsp + 0x7c], 1
mov ebx, dword [rsp + 0x78]
xor eax, eax
mov dword [r14 + 0x2cc4], eax
mov qword [r14 + 0x2cc8], rax
mov qword [r14 + 0x2cd0], rax
mov eax, dword [r14 + 0x1a24]
cmp byte [rbp + 0x140], 0
mov ecx, eax
je 0x1400329fd
cmp eax, ebx
jne 0x140033607
call fcn.14001a920
mov ecx, dword [r14 + 0x1a24]
cmp ecx, ebx
jne 0x140033607
cmp byte [rsp + 0x60], 0
je 0x140033607
mov r13, qword [r14 + 0x1e80]
mov qword [rbp + 0x138], r13
jmp 0x14003360e
mov ecx, dword [rdi + 0x44]
test ecx, ecx
js 0x140032a71
mov dl, 1
call fcn.140016ad0
test al, al
je 0x140032a71
test sil, sil
je 0x140032a50
mov ecx, 0x10005
lea rdx, [r14 + 0x1e98]
or ecx, ebx
mov r8d, ecx
jmp 0x140032844
test r12b, r12b
lea rdx, [r14 + 0x1e98]
mov ecx, 0x10001
mov eax, 0x1000d
cmovne ecx, eax
or ecx, ebx
mov r8d, ecx
jmp 0x140032844
mov ecx, dword [rdi + 0x48]
test ecx, ecx
js 0x140032aea
mov dl, 1
call fcn.140016ad0
test al, al
je 0x140032aea
cmp byte [rsp + 0x58], 0
je 0x140032aea
cmp byte [r14 + 0x130], 0
je 0x140032acf
mov rdx, qword [rbp - 0x60]
mov r12, rdi
movss xmm1, dword [rdx + 0x5c]
movaps xmm0, xmm1
subss xmm0, dword [r14 + 0x18f8]
addss xmm1, dword [rdx + 0xe4]
maxss xmm0, xmm9
subss xmm1, xmm0
movss dword [rdx + 0x5c], xmm0
movss dword [rdx + 0xe4], xmm1
jmp 0x14003286f
movzx eax, sil
lea rdx, [r14 + 0x1e98]
lea r8d, [rax*4 + 0x10002]
or r8d, ebx
jmp 0x140032844
mov ecx, dword [rdi + 0x4c]
test ecx, ecx
js 0x140032b90
mov dl, 1
call fcn.140016ad0
test al, al
je 0x140032b90
cmp byte [rsp + 0x58], 0
je 0x140032b90
cmp byte [r14 + 0x130], 0
je 0x140032b75
mov rax, qword [rdi + 0x19f8]
movaps xmm2, xmm9
mov rcx, qword [rbp - 0x60]
mov r12, rdi
movss xmm0, dword [rax + 0x24]
subss xmm0, dword [rax + 0x74]
movss xmm1, dword [rax + 0x34]
movss xmm4, dword [rcx + 0x5c]
movaps xmm3, xmm4
addss xmm3, dword [r14 + 0x18f8]
addss xmm4, dword [rcx + 0xe4]
subss xmm1, xmm0
maxss xmm2, xmm1
minss xmm3, xmm2
subss xmm4, xmm3
movss dword [rcx + 0x5c], xmm3
movss dword [rcx + 0xe4], xmm4
jmp 0x14003286f
movzx eax, sil
lea rdx, [r14 + 0x1e98]
lea r8d, [rax*4 + 0x10003]
or r8d, ebx
jmp 0x140032844
mov ecx, dword [rdi + 0x58]
test ecx, ecx
js 0x140032bca
mov dl, 1
call fcn.140016ad0
test al, al
je 0x140032bca
mov eax, ebx
lea rdx, [r14 + 0x1e98]
or eax, 0x10006
mov r8d, 0x10004
or r8d, ebx
cmp byte [r14 + 0x130], 0
cmovne r8d, eax
jmp 0x140032844
mov ecx, dword [rdi + 0x5c]
test ecx, ecx
js 0x140032c04
mov dl, 1
call fcn.140016ad0
test al, al
je 0x140032c04
mov eax, ebx
lea rdx, [r14 + 0x1e98]
or eax, 0x10007
mov r8d, 0x10005
or r8d, ebx
cmp byte [r14 + 0x130], 0
cmovne r8d, eax
jmp 0x140032844
mov ecx, dword [rdi + 0x64]
test ecx, ecx
js 0x140032c34
mov dl, 1
call fcn.140016ad0
mov esi, dword [rsp + 0x60]
test al, al
je 0x140032c38
test sil, sil
je 0x140032c38
or ebx, 0x10008
lea rdx, [r14 + 0x1e98]
mov r8d, ebx
jmp 0x140032844
mov esi, dword [rsp + 0x60]
mov ecx, dword [rdi + 0x68]
test ecx, ecx
js 0x140032cf7
mov dl, 1
call fcn.140016ad0
test al, al
je 0x140032cf7
test sil, sil
je 0x140032cf7
mov eax, dword [r14 + 0x1ea0]
cmp dword [r14 + 0x1e9c], eax
jne 0x140032cd8
test r12b, r12b
je 0x140032ca1
mov r8d, 0x3000c
lea rdi, [r14 + 0x1e50]
lea rdx, [r14 + 0x1e98]
mov rcx, rdi
call fcn.140035340
mov byte [r14 + 0x2cc0], 1
mov dword [r14 + 0x2cbc], 0xbe99999a
jmp 0x140032cdf
cmp byte [r14 + 0xd1], 0
je 0x140032cd8
cmp byte [r14 + 0x133], 0
je 0x140032cd8
cmp byte [r14 + 0x132], 0
jne 0x140032cd8
cmp byte [r14 + 0x130], 0
lea rdi, [r14 + 0x1e50]
jne 0x140032cdf
mov r8d, 0x30004
jmp 0x140032c7d
lea rdi, [r14 + 0x1e50]
or ebx, 0x10009
lea rdx, [r14 + 0x1e98]
mov r8d, ebx
mov rcx, rdi
jmp 0x14003284b
mov ecx, dword [rdi + 0x70]
mov r12, rdi
test ecx, ecx
js 0x140032d85
mov dl, 1
call fcn.140016ad0
test al, al
je 0x140032d85
mov ebx, dword [rsp + 0x5c]
mov eax, ebx
shr eax, 0xb
and al, dl
cmp byte [rsp + 0x58], 0
je 0x140032d32
movzx ecx, byte [r14 + 0x130]
test al, al
je 0x140032d45
test cl, cl
jne 0x140032d49
mov byte [rbp + 0x140], dl
movzx r10d, dl
mov byte [rsp + 0x7d], dl
jmp 0x140032872
test cl, cl
jne 0x140032d32
test sil, sil
je 0x14003286f
mov dword [rbp + 0x158], 0xa
mov edx, ebx
lea rcx, [rbp + 0x158]
call fcn.140034680
test al, al
je 0x140032863
mov r8d, dword [rbp + 0x158]
lea rdx, [r14 + 0x1e98]
jmp 0x140032844
mov ebx, dword [rsp + 0x5c]
bt ebx, 0xa
jae 0x140032dd0
mov ecx, dword [rdi + 0x3c]
test ecx, ecx
js 0x140032dd0
mov dl, 1
call fcn.140016ad0
test al, al
je 0x140032dd0
cmp byte [r14 + 0x130], 0
jne 0x140032dd0
cmp byte [r14 + 0x131], 0
jne 0x140032dd0
cmp byte [r14 + 0x132], 0
jne 0x140032dd0
test sil, sil
je 0x140032dd0
mov dword [rbp + 0x158], 9
jmp 0x140032d5c
mov ecx, dword [rdi + 0x74]
test ecx, ecx
js 0x140032df3
mov dl, 1
call fcn.140016ad0
test al, al
je 0x140032df3
movzx ecx, dl
mov byte [rbp + 0x140], dl
xor r10b, r10b
jmp 0x140032874
test r10b, r10b
jne 0x14003322b
test r9b, r9b
jne 0x14003322b
cmp byte [rbp + 0x158], r9b
je 0x140032e53
mov ecx, dword [rdi + 0x78]
test ecx, ecx
js 0x140032e53
mov dl, 1
call fcn.140016ad0
test al, al
je 0x140032e53
mov eax, dword [r14 + 0x1e8c]
xor esi, esi
mov dword [r14 + 0x1e9c], esi
xor cl, cl
mov byte [r14 + 0x1ea7], sil
mov dword [r14 + 0x1ea0], eax
mov dword [r14 + 0x1e98], eax
mov byte [r14 + 0x2cc0], dl
jmp 0x140032876
test r13b, r13b
jne 0x1400330a2
test r15b, r15b
jne 0x1400330a2
test r11b, r11b
je 0x14003286f
mov rax, qword [rdi + 0xe8]
test rax, rax
je 0x140032e98
mov rcx, qword [rdi + 0xf8]
call rax
mov rbx, rax
test rax, rax
je 0x140032863
mov r12, qword [0x14007c440]
jmp 0x140032e9f
lea rbx, [0x140047a06]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rbx + rax], 0
jne 0x140032ea6
test r12, r12
je 0x140032ebc
inc dword [r12 + 0x3c8]
inc eax
movsxd rcx, eax
add rcx, rcx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
xor esi, esi
mov r12, rax
mov r15d, esi
cmp byte [rbx], sil
je 0x140032f45
mov r14d, dword [rsp + 0x5c]
mov rsi, rax
mov edi, 0x10000
nop dword [rax]
nop dword [rax + rax]
xor r8d, r8d
lea rcx, [rbp + 0x158]
mov rdx, rbx
call fcn.14001d230
movsxd rcx, eax
mov eax, dword [rbp + 0x158]
add rbx, rcx
test eax, eax
je 0x140032f3f
cmp eax, edi
jae 0x140032f3a
mov edx, r14d
lea rcx, [rbp + 0x158]
call fcn.140034680
test al, al
je 0x140032f3a
movzx eax, word [rbp + 0x158]
inc r15d
mov word [rsi], ax
add rsi, 2
cmp byte [rbx], 0
jne 0x140032ef0
mov r14, qword [rbp - 0x70]
xor esi, esi
movsxd rax, r15d
mov word [r12 + rax*2], si
test r15d, r15d
jle 0x14003306c
mov ecx, dword [r14 + 0x1e8c]
lea rbx, [r14 + 0x1e98]
mov r8d, dword [rbx + 8]
mov eax, dword [rbx + 4]
cmp eax, r8d
je 0x140032f95
mov edx, eax
cmp eax, ecx
jle 0x140032f7b
mov dword [rbx + 4], ecx
mov edx, ecx
mov r9d, r8d
cmp r8d, ecx
jle 0x140032f89
mov dword [rbx + 8], ecx
mov r9d, ecx
mov r8d, r9d
mov eax, edx
cmp edx, r9d
jne 0x140032f95
mov dword [rbx], edx
mov edx, dword [rbx]
cmp edx, ecx
jle 0x140032f9f
mov dword [rbx], ecx
mov edx, ecx
mov ecx, dword [r14 + 0x1e8c]
cmp eax, r8d
je 0x140032fd7
mov r9d, eax
cmp eax, ecx
jle 0x140032fb8
mov dword [rbx + 4], ecx
mov r9d, ecx
mov r10d, r8d
cmp r8d, ecx
jle 0x140032fc6
mov dword [rbx + 8], ecx
mov r10d, ecx
mov r8d, r10d
mov eax, r9d
cmp r9d, r10d
jne 0x140032fd7
mov dword [rbx], r9d
mov edx, r9d
cmp edx, ecx
jle 0x140032fdf
mov dword [rbx], ecx
mov edx, ecx
lea rdi, [r14 + 0x1e50]
cmp eax, r8d
je 0x140033022
mov rdx, rbx
mov rcx, rdi
jge 0x140033009
sub r8d, eax
mov r9d, r8d
mov r8d, eax
call fcn.140036000
mov eax, dword [rbx + 4]
mov dword [rbx + 8], eax
jmp 0x14003301a
sub eax, r8d
mov r9d, eax
call fcn.140036000
mov eax, dword [rbx + 8]
mov dword [rbx + 4], eax
mov dword [rbx], eax
mov edx, eax
mov byte [rbx + 0xf], 0
mov r9d, r15d
mov r8, r12
mov rcx, rdi
call fcn.140036530
test al, al
je 0x14003304e
mov edx, dword [rbx]
lea rcx, [rbx + 0x18]
mov r9d, r15d
xor r8d, r8d
call fcn.140034e50
add dword [rbx], r15d
mov byte [rbx + 0xf], 0
jmp 0x140033064
movzx eax, word [rbx + 0xe16]
test ax, ax
je 0x140033064
dec ax
mov word [rbx + 0xe16], ax
mov byte [r14 + 0x2cc0], 1
test r12, r12
je 0x140033083
mov rax, qword [0x14007c440]
test rax, rax
je 0x140033083
dec dword [rax + 0x3c8]
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov r12, qword [0x14007c440]
mov qword [rsp + 0x50], r12
xor cl, cl
xor r10b, r10b
jmp 0x140032876
cmp qword [r14 + 0xf0], 0
je 0x14003314c
mov edi, dword [r14 + 0x1ea0]
mov eax, dword [r14 + 0x1e9c]
cmp eax, edi
je 0x1400330cc
mov esi, edi
cmovl edi, eax
cmovge esi, eax
jmp 0x1400330d7
mov esi, dword [r14 + 0x1e8c]
xor eax, eax
mov edi, eax
mov edx, esi
lea rcx, [r14 + 0x1e78]
sub edx, edi
lea edx, [rdx*4 + 1]
call fcn.140002a80
mov rcx, qword [r14 + 0x1e60]
mov edx, dword [r14 + 0x1e78]
movsxd rax, esi
lea r9, [rcx + rax*2]
movsxd rax, edi
lea r8, [rcx + rax*2]
mov rcx, qword [r14 + 0x1e80]
call fcn.14001ca20
mov r12, qword [0x14007c440]
mov qword [rsp + 0x50], r12
mov rax, qword [r12 + 0xf0]
test rax, rax
je 0x14003314c
mov rdx, qword [r14 + 0x1e80]
mov rcx, qword [r12 + 0xf8]
call rax
mov r12, qword [0x14007c440]
mov qword [rsp + 0x50], r12
test r13b, r13b
je 0x14003286f
mov eax, dword [r14 + 0x1ea0]
xor esi, esi
cmp dword [r14 + 0x1e9c], eax
jne 0x14003318a
mov eax, dword [r14 + 0x1e8c]
mov dword [r14 + 0x1ea0], eax
mov dword [r14 + 0x1e98], eax
mov dword [r14 + 0x1e9c], esi
mov byte [r14 + 0x1ea7], sil
lea rbx, [r14 + 0x1e98]
mov byte [r14 + 0x2cc0], 1
mov r8d, dword [rbx + 8]
mov eax, dword [rbx + 4]
cmp eax, r8d
je 0x140033098
mov ecx, dword [r14 + 0x1e8c]
cmp eax, ecx
jle 0x1400331b9
mov dword [rbx + 4], ecx
mov eax, ecx
cmp r8d, ecx
jle 0x1400331c4
mov dword [rbx + 8], ecx
mov r8d, ecx
cmp eax, r8d
jne 0x1400331cf
mov dword [rbx], eax
mov edx, eax
jmp 0x1400331d1
mov edx, dword [rbx]
cmp edx, ecx
jle 0x1400331d7
mov dword [rbx], ecx
cmp eax, r8d
je 0x14003321d
mov rdx, rbx
lea rcx, [r14 + 0x1e50]
jge 0x1400331fe
sub r8d, eax
mov r9d, r8d
mov r8d, eax
call fcn.140036000
mov eax, dword [rbx + 4]
mov dword [rbx + 8], eax
jmp 0x14003320f
sub eax, r8d
mov r9d, eax
call fcn.140036000
mov eax, dword [rbx + 8]
mov dword [rbx + 4], eax
mov dword [rbx], eax
mov r12, qword [0x14007c440]
mov qword [rsp + 0x50], r12
xor cl, cl
mov byte [rbx + 0xf], 0
xor r10b, r10b
jmp 0x140032876
movzx r8d, r10b
lea rdx, [r14 + 0x1e98]
xor r8d, 1
lea rcx, [r14 + 0x1e50]
add r8d, 0x1000a
call fcn.140035340
mov eax, dword [r14 + 0x1e98]
mov dword [r14 + 0x1ea0], eax
mov dword [r14 + 0x1e9c], eax
jmp 0x140032850
mov ebx, dword [rsp + 0x5c]
cmp byte [rsp + 0x60], 0
je 0x1400332b9
mov edx, dword [r14 + 0x1e58]
lea rcx, [r14 + 0x1e78]
lea edx, [rdx*4 + 1]
call fcn.140002a80
mov r8, qword [r14 + 0x1e60]
xor r9d, r9d
mov edx, dword [r14 + 0x1e78]
mov rcx, qword [r14 + 0x1e80]
call fcn.14001ca20
mov r12, qword [0x14007c440]
mov ebx, dword [rsp + 0x5c]
mov qword [rsp + 0x50], r12
test ebx, 0x1c0
je 0x1400335b2
mov r9d, 0x15
lea r11d, [r9 + 0x6b]
test bl, 0x40
je 0x1400332f1
mov ecx, dword [r12 + 0x3c]
test ecx, ecx
js 0x1400332f1
mov dl, 1
call fcn.140016ad0
test al, al
je 0x1400332f1
lea eax, [r9 + 0x2b]
mov r9d, esi
jmp 0x140033340
test bl, bl
jns 0x140033333
mov ecx, dword [r12 + 0x48]
test ecx, ecx
js 0x140033314
mov dl, 1
call fcn.140016ad0
test al, al
je 0x140033314
mov eax, r11d
mov r9d, 3
jmp 0x140033340
mov ecx, dword [r12 + 0x4c]
test ecx, ecx
js 0x140033333
mov dl, 1
call fcn.140016ad0
test al, al
je 0x140033333
mov eax, r11d
mov r9d, 4
jmp 0x140033340
mov eax, 0x100
test eax, ebx
je 0x1400335b2
mov dword [rbp - 0x28], eax
mov r15d, esi
mov rax, qword [r14 + 0x1e80]
mov edi, 0x2800
mov qword [rbp - 0x10], rax
mov r12d, 0x2400
mov eax, dword [r14 + 0x1e88]
mov r10d, 0x3ff
mov dword [rbp - 8], eax
mov eax, dword [r14 + 0x1e90]
mov dword [rbp - 4], eax
movsxd rax, dword [r14 + 0x1e98]
mov dword [rbp - 0x14], r9d
mov r9, qword [r14 + 0x1e60]
mov dword [rbp - 0x24], ebx
mov rdx, r9
mov dword [rbp - 0x18], esi
mov ebx, 0x800
mov qword [rbp + 1], rsi
lea r8, [r9 + rax*2]
mov dword [rbp + 9], esi
mov word [rbp + 0xd], si
mov byte [rbp + 0xf], 0
mov qword [rbp - 0x20], rsi
mov byte [rbp], 0
test r8, r8
je 0x1400333bb
cmp rdx, r8
jae 0x1400333ff
movzx ecx, word [rdx]
test cx, cx
je 0x1400333ff
add rdx, 2
cmp cx, r11w
jae 0x1400333d2
inc r15d
jmp 0x1400333b1
cmp cx, bx
jae 0x1400333e1
mov eax, 2
add r15d, eax
jmp 0x1400333b1
lea eax, [r12 + rcx]
cmp ax, r10w
mov eax, esi
jbe 0x1400333fa
add cx, di
cmp cx, r10w
setbe al
add eax, 3
add r15d, eax
jmp 0x1400333b1
movsxd rax, dword [r14 + 0x1e9c]
mov rdx, r9
mov dword [rbp + 4], r15d
xor r14d, r14d
lea r8, [r9 + rax*2]
test r8, r8
je 0x14003341e
cmp rdx, r8
jae 0x140033460
movzx ecx, word [rdx]
test cx, cx
je 0x140033460
add rdx, 2
cmp cx, r11w
jae 0x140033434
inc esi
jmp 0x140033414
cmp cx, bx
jae 0x140033442
mov eax, 2
add esi, eax
jmp 0x140033414
lea eax, [r12 + rcx]
cmp ax, r10w
mov eax, r14d
jbe 0x14003345c
add cx, di
cmp cx, r10w
setbe al
add eax, 3
add esi, eax
jmp 0x140033414
mov r14, qword [rbp - 0x70]
mov r8d, 0x2800
mov dword [rbp + 8], esi
movsxd rax, dword [r14 + 0x1ea0]
lea rdx, [r9 + rax*2]
xor eax, eax
mov edi, eax
xor r14d, r14d
nop
test rdx, rdx
je 0x14003348a
cmp r9, rdx
jae 0x1400334ce
movzx ecx, word [r9]
test cx, cx
je 0x1400334ce
add r9, 2
cmp cx, r11w
jae 0x1400334a1
inc edi
jmp 0x140033480
cmp cx, bx
jae 0x1400334af
mov eax, 2
add edi, eax
jmp 0x140033480
lea eax, [r12 + rcx]
cmp ax, r10w
mov eax, r14d
jbe 0x1400334ca
add cx, r8w
cmp cx, r10w
setbe al
add eax, 3
add edi, eax
jmp 0x140033480
lea rcx, [rbp - 0x28]
mov dword [rbp + 0xc], edi
xor r12d, r12d
call r12
movsxd rax, dword [rbp + 4]
mov rbx, qword [rbp - 0x10]
mov r14, qword [rbp - 0x70]
cmp eax, r15d
je 0x140033507
lea rdx, [rbx + rax]
mov rcx, rbx
call fcn.14001cc80
mov dword [r14 + 0x1e98], eax
mov byte [r14 + 0x2cc0], 1
movsxd rax, dword [rbp + 8]
cmp eax, esi
je 0x140033522
lea rdx, [rbx + rax]
mov rcx, rbx
call fcn.14001cc80
mov dword [r14 + 0x1e9c], eax
movsxd rax, dword [rbp + 0xc]
cmp eax, edi
je 0x14003353d
lea rdx, [rbx + rax]
mov rcx, rbx
call fcn.14001cc80
mov dword [r14 + 0x1ea0], eax
mov edi, dword [rbp - 0x7c]
cmp byte [rbp], r12b
je 0x1400335a0
mov edx, dword [rbp - 8]
mov eax, dword [rbp - 0x78]
cmp edx, eax
jle 0x140033569
test dil, dil
je 0x140033569
lea rcx, [r14 + 0x1e58]
sub edx, eax
add edx, dword [rcx]
call fcn.140002880
mov rbx, qword [rbp - 0x10]
mov edx, dword [r14 + 0x1e58]
mov r8, rbx
mov rcx, qword [r14 + 0x1e60]
mov qword [rsp + 0x20], r12
call fcn.14001cfe0
mov dword [r14 + 0x1e8c], eax
mov eax, dword [rbp - 8]
mov dword [r14 + 0x1e88], eax
mov dword [r14 + 0x2cbc], 0xbe99999a
mov r12, qword [0x14007c440]
mov ebx, dword [rsp + 0x5c]
mov qword [rsp + 0x50], r12
jmp 0x1400335b5
mov edi, dword [rbp - 0x7c]
cmp byte [rsp + 0x60], 0
mov rsi, qword [rbp + 0x138]
je 0x140032904
mov r9, qword [r14 + 0x1e80]
mov r8, rsi
mov rax, r9
sub r8, r9
nop word [rax + rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x1400335f3
inc rax
test ecx, ecx
jne 0x1400335e0
test edx, edx
je 0x140032904
mov r13d, dword [r14 + 0x1e88]
jmp 0x14003290b
mov r13, qword [rbp + 0x138]
mov esi, dword [rsp + 0x58]
mov r15d, 1
movaps xmmword [rsp + 0x170], xmm13
movaps xmmword [rsp + 0x160], xmm14
test sil, sil
jne 0x140033706
mov r8d, r15d
lea rcx, [rsp + 0x68]
mov edx, ebx
call fcn.14001b420
mov rax, qword [0x14007c440]
lea rcx, [rbp - 0x58]
movups xmm0, xmmword [rax + 0x1660]
movups xmmword [rbp - 0x58], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x1550]
movss dword [rbp - 0x4c], xmm0
call fcn.14001c8b0
movss xmm0, dword [r14 + 0x158c]
mov r8d, eax
mov rdx, qword [rsp + 0x70]
movzx r9d, r15b
movss dword [rsp + 0x20], xmm0
movaps xmm0, xmm7
unpcklps xmm0, xmm11
movq rcx, xmm0
call fcn.14001ba50
mov r12, qword [0x14007c440]
movaps xmm0, xmm7
addss xmm0, dword [r14 + 0x1584]
mov ecx, dword [r14 + 0x1a24]
movaps xmm1, xmm11
addss xmm1, dword [r14 + 0x1588]
mov rdi, qword [rbp - 0x60]
movaps xmm14, xmm7
addss xmm14, xmm10
mov qword [rsp + 0x50], r12
movaps xmm13, xmm6
movss dword [rbp + 0x158], xmm0
addss xmm13, xmm11
movss dword [rbp + 0x15c], xmm1
movss dword [rbp - 0x50], xmm14
movss dword [rbp - 0x78], xmm14
movss dword [rbp - 0x4c], xmm13
movss dword [rbp - 0x64], xmm13
jmp 0x140033746
mov rdi, qword [rbp - 0x60]
movaps xmm2, xmm7
addss xmm2, xmm10
movaps xmm1, xmm6
addss xmm1, xmm11
movsd xmm0, qword [rdi + 0xc8]
movsd qword [rbp + 0x158], xmm0
movss dword [rbp - 0x78], xmm2
movaps xmm14, xmm2
movss dword [rbp - 0x50], xmm2
movaps xmm13, xmm1
movss dword [rbp - 0x64], xmm1
movss dword [rbp - 0x4c], xmm1
lea rax, [rbp + 0x158]
movss dword [rbp - 0x54], xmm11
movss xmm8, dword [rax + 4]
movss xmm15, dword [rax]
movss dword [rbp - 0x70], xmm15
movss dword [rbp + 0x140], xmm8
movss dword [rbp - 0x6c], xmm8
movss dword [rbp - 0x58], xmm7
movss dword [rbp + 0x158], xmm9
movss dword [rbp + 0x160], xmm9
cmp dword [r14 + 0x1e50], ebx
jne 0x1400337c8
test sil, sil
je 0x1400337c8
movsxd rdx, dword [rdi + 0x1e0]
lea rcx, str.SCROLLY
mov rax, qword [rdi + 0x1e8]
mov r8d, dword [rax + rdx*4 - 4]
xor edx, edx
call fcn.14001d630
mov ecx, dword [r14 + 0x1a24]
cmp ecx, eax
jne 0x1400337c8
mov al, 1
jmp 0x1400337ca
xor al, al
cmp ecx, ebx
je 0x1400339c9
test al, al
jne 0x1400339c9
test sil, sil
je 0x14003384a
movzx edx, byte [r13]
lea r8, [r13 + 1]
xor eax, eax
mov ecx, eax
test dl, dl
je 0x140033806
cmp dl, 0xa
lea eax, [rcx + 1]
movzx edx, byte [r8]
cmovne eax, ecx
inc r8
mov ecx, eax
test dl, dl
jne 0x1400337f0
movzx eax, byte [r8 - 1]
dec r8
cmp al, 0xa
je 0x140033818
cmp al, 0xd
je 0x140033818
inc ecx
movd xmm8, ecx
lea rbx, [r14 + 0x18f8]
cvtdq2ps xmm8, xmm8
movss dword [rbp + 0x158], xmm10
mulss xmm8, dword [rbx]
movss dword [rbp + 0x160], xmm8
movss xmm8, dword [rbp + 0x140]
jmp 0x140033872
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rax + r13], 0
jne 0x140033851
lea r8, [rax + r13]
cmp rax, 0x200000
jge 0x1400343ee
lea rbx, [r14 + 0x18f8]
movups xmm0, xmmword [r12 + 0x15f0]
mov r10, qword [rdi + 0x2a0]
lea rcx, [rsp + 0x68]
movups xmmword [rsp + 0x68], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [r12 + 0x1550]
movss dword [rsp + 0x74], xmm0
call fcn.14001c8b0
movss xmm2, dword [rbx]
lea r9, [rbp - 0x58]
mov r11, qword [r14 + 0x18f0]
mov edx, eax
test sil, sil
mov eax, 0
mov r15, rbx
cmovne r9, rax
test edx, 0xff000000
je 0x14003439d
test r8, r8
jne 0x1400338ec
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [r8 + r13], al
jne 0x1400338e0
add r8, r13
cmp r13, r8
je 0x14003439d
test r11, r11
jne 0x140033902
mov rax, qword [r10 + 0x38]
mov r11, qword [rax + 8]
ucomiss xmm2, xmm9
jp 0x140033913
jne 0x140033913
mov rax, qword [r10 + 0x38]
movss xmm2, dword [rax + 0x10]
movsxd rcx, dword [r10 + 0x60]
mov rax, qword [r10 + 0x68]
add rcx, rcx
movups xmm0, xmmword [rax + rcx*8 - 0x10]
movups xmmword [rsp + 0x68], xmm0
test r9, r9
je 0x140033983
movss xmm1, dword [r9]
movss xmm0, dword [rsp + 0x68]
comiss xmm0, xmm1
jae 0x140033943
movss dword [rsp + 0x68], xmm1
movss xmm1, dword [r9 + 4]
movss xmm0, dword [rsp + 0x6c]
comiss xmm0, xmm1
jae 0x14003395a
movss dword [rsp + 0x6c], xmm1
movss xmm0, dword [r9 + 8]
comiss xmm0, dword [rsp + 0x70]
ja 0x14003396d
movss dword [rsp + 0x70], xmm0
movss xmm0, dword [r9 + 0xc]
comiss xmm0, dword [rsp + 0x74]
ja 0x140033980
movss dword [rsp + 0x74], xmm0
test r9, r9
mov r9, qword [rbp - 0x70]
setne al
mov byte [rsp + 0x48], al
mov rcx, r11
movss dword [rsp + 0x40], xmm9
lea rax, [rsp + 0x68]
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], edx
mov rdx, r10
call fcn.14001eac0
mov r12, qword [0x14007c440]
mov qword [rsp + 0x50], r12
jmp 0x14003439d
movss xmm0, dword [r14 + 0x18]
xor r8d, r8d
movsxd rax, dword [r14 + 0x1e98]
movaps xmm7, xmm9
mov rsi, qword [r14 + 0x1e60]
movaps xmm6, xmm9
addss xmm0, dword [r14 + 0x2cbc]
mov ecx, dword [r14 + 0x1e9c]
lea edx, [r8 - 1]
mov edi, r8d
mov ebx, 0xfffffc19
lea r9, [rsi + rax*2]
mov eax, dword [r14 + 0x1ea0]
movss dword [r14 + 0x2cbc], xmm0
cmp ecx, eax
je 0x140033a2d
cmovl eax, ecx
mov ebx, edx
cdqe
mov r15d, 2
lea rdi, [rsi + rax*2]
movzx eax, byte [rsp + 0x58]
mov r11d, r8d
movzx ecx, word [rsi]
add r15d, eax
mov rax, rsi
test cx, cx
je 0x140033a83
cmp cx, 0xa
jne 0x140033a76
inc r11d
cmp edx, 0xffffffff
jne 0x140033a61
cmp rax, r9
jb 0x140033a61
dec r15d
mov edx, r11d
test r15d, r15d
jle 0x140033a83
cmp ebx, 0xffffffff
jne 0x140033a76
cmp rax, rdi
jb 0x140033a76
dec r15d
mov ebx, r11d
test r15d, r15d
jle 0x140033a83
movzx ecx, word [rax + 2]
add rax, 2
test cx, cx
jne 0x140033a43
inc r11d
cmp edx, 0xffffffff
mov r10d, r11d
cmovne r10d, edx
cmp ebx, 0xffffffff
mov rdx, r9
cmove ebx, r11d
cmp r9, rsi
jbe 0x140033ab3
nop
cmp word [rdx - 2], 0xa
lea rax, [rdx - 2]
je 0x140033ab3
mov rdx, rax
cmp rax, rsi
ja 0x140033aa0
mov r8, qword [r12 + 0x18f0]
movaps xmm2, xmm9
movss xmm4, dword [r12 + 0x18f8]
movaps xmm11, xmm9
divss xmm4, dword [r8]
cmp rdx, r9
jae 0x140033b24
nop word [rax + rax]
movzx ecx, word [rdx]
add rdx, 2
cmp ecx, 0xa
jne 0x140033af7
maxss xmm2, xmm11
movaps xmm11, xmm9
jmp 0x140033b1f
cmp ecx, 0xd
je 0x140033b1f
cmp ecx, dword [r8 + 0x20]
jge 0x140033b0d
mov rax, qword [r8 + 0x28]
movss xmm1, dword [rax + rcx*4]
jmp 0x140033b13
movss xmm1, dword [r8 + 0x48]
movaps xmm0, xmm4
mulss xmm0, xmm1
addss xmm11, xmm0
cmp rdx, r9
jb 0x140033ae0
movd xmm12, r10d
lea r15, [r14 + 0x18f8]
movss xmm3, dword [r15]
maxss xmm11, xmm2
cvtdq2ps xmm12, xmm12
movss dword [rbp - 0x7c], xmm11
mulss xmm12, xmm3
movss dword [rsp + 0x78], xmm12
test ebx, ebx
js 0x140033bd1
mov rdx, rdi
cmp rdi, rsi
jbe 0x140033b73
nop dword [rax]
cmp word [rdx - 2], 0xa
lea rax, [rdx - 2]
je 0x140033b73
mov rdx, rax
cmp rax, rsi
ja 0x140033b60
movaps xmm2, xmm9
movaps xmm6, xmm9
cmp rdx, rdi
jae 0x140033bc2
movzx ecx, word [rdx]
add rdx, 2
cmp ecx, 0xa
jne 0x140033b96
maxss xmm2, xmm6
movaps xmm6, xmm9
jmp 0x140033bbd
cmp ecx, 0xd
je 0x140033bbd
cmp ecx, dword [r8 + 0x20]
jge 0x140033bac
mov rax, qword [r8 + 0x28]
movss xmm1, dword [rax + rcx*4]
jmp 0x140033bb2
movss xmm1, dword [r8 + 0x48]
movaps xmm0, xmm4
mulss xmm0, xmm1
addss xmm6, xmm0
cmp rdx, rdi
jb 0x140033b80
movd xmm7, ebx
maxss xmm6, xmm2
cvtdq2ps xmm7, xmm7
mulss xmm7, xmm3
mov r8d, dword [rsp + 0x58]
test r8b, r8b
je 0x140033bf8
movd xmm5, r11d
cvtdq2ps xmm5, xmm5
movss dword [rbp + 0x158], xmm10
mulss xmm5, xmm3
movss dword [rbp + 0x160], xmm5
cmp byte [r14 + 0x2cc0], 0
je 0x140033cd9
test dword [rsp + 0x5c], 0x1000
jne 0x140033c75
movss xmm2, dword [r14 + 0x1e94]
movaps xmm0, xmm10
comiss xmm2, xmm11
mulss xmm0, dword [0x14004c4a8]
movaps xmm1, xmm11
jbe 0x140033c51
subss xmm1, xmm0
movaps xmm0, xmm9
maxss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [r14 + 0x1e94], xmm0
jmp 0x140033c7e
subss xmm1, xmm10
comiss xmm1, xmm2
jb 0x140033c7e
addss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [r14 + 0x1e94], xmm0
jmp 0x140033c7e
xor eax, eax
mov dword [r14 + 0x1e94], eax
test r8b, r8b
je 0x140033cd9
mov rax, qword [rbp - 0x60]
movaps xmm1, xmm12
subss xmm1, dword [r15]
movss xmm8, dword [rax + 0x5c]
comiss xmm8, xmm1
jbe 0x140033ca6
movaps xmm0, xmm9
maxss xmm0, xmm1
jmp 0x140033cb4
movaps xmm0, xmm12
subss xmm0, dword [rbp - 0x40]
maxss xmm0, xmm8
subss xmm8, xmm0
movss dword [rax + 0x5c], xmm0
addss xmm8, dword [rax + 0xcc]
movss dword [rbp + 0x140], xmm8
movss dword [rax + 0xcc], xmm8
mov ecx, dword [r14 + 0x1ea0]
mov edx, dword [r14 + 0x1e9c]
movss xmm10, dword [r14 + 0x1e94]
mov byte [r14 + 0x2cc0], 0
cmp edx, ecx
je 0x140033f52
mov eax, ecx
cmovge ecx, edx
cmovl eax, edx
cdqe
lea rbx, [rsi + rax*2]
movsxd rax, ecx
lea rdi, [rsi + rax*2]
test r8b, r8b
je 0x140033d22
movss dword [rbp - 0x34], xmm9
jmp 0x140033d2b
movss xmm9, dword [0x14004c51c]
movups xmm0, xmmword [r12 + 0x1890]
lea rcx, [rsp + 0x68]
movups xmmword [rsp + 0x68], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [r12 + 0x1550]
movss dword [rsp + 0x74], xmm0
call fcn.14001c8b0
addss xmm8, xmm7
movaps xmm5, xmm15
addss xmm5, xmm6
xorps xmm7, xmm7
mov esi, eax
subss xmm8, xmm7
subss xmm5, xmm10
cmp rbx, rdi
jae 0x140033f4e
movss xmm6, dword [r15]
movss xmm11, dword [0x14004c4bc]
movaps xmm1, xmm6
movss xmm12, dword [rbp - 0x3c]
movss xmm2, dword [rbp - 0x80]
mov r13, qword [rbp - 0x60]
nop dword [rax]
movaps xmm0, xmm13
addss xmm0, xmm1
comiss xmm8, xmm0
ja 0x140033f30
comiss xmm2, xmm8
jbe 0x140033ddc
cmp rbx, rdi
jae 0x140033f11
movzx eax, word [rbx]
add rbx, 2
cmp ax, 0xa
je 0x140033f11
cmp rbx, rdi
jb 0x140033dc1
jmp 0x140033f11
mov rdx, qword [r12 + 0x18f0]
movaps xmm4, xmm7
movss xmm3, dword [r12 + 0x18f8]
movaps xmm2, xmm7
divss xmm3, dword [rdx]
cmp rbx, rdi
jae 0x140033e42
nop dword [rax]
movzx ecx, word [rbx]
add rbx, 2
cmp ecx, 0xa
je 0x140033e38
cmp ecx, 0xd
je 0x140033e31
cmp ecx, dword [rdx + 0x20]
jge 0x140033e21
mov rax, qword [rdx + 0x28]
movss xmm1, dword [rax + rcx*4]
jmp 0x140033e26
movss xmm1, dword [rdx + 0x48]
movaps xmm0, xmm3
mulss xmm0, xmm1
addss xmm2, xmm0
cmp rbx, rdi
jb 0x140033e00
jmp 0x140033e42
movaps xmm4, xmm7
maxss xmm4, xmm2
movaps xmm2, xmm7
maxss xmm2, xmm4
comiss xmm7, xmm2
jb 0x140033e7b
mov rax, qword [r14 + 0x18f0]
cmp dword [rax + 0x20], 0x20
jle 0x140033e66
mov rax, qword [rax + 0x28]
movss xmm0, dword [rax + 0x80]
jmp 0x140033e6b
movss xmm0, dword [rax + 0x48]
mulss xmm0, xmm11
cvttss2si eax, xmm0
movd xmm2, eax
cvtdq2ps xmm2, xmm2
movss xmm1, dword [rbp - 0x34]
addss xmm2, xmm5
subss xmm1, xmm6
movaps xmm0, xmm9
addss xmm0, xmm8
addss xmm5, xmm7
minss xmm2, xmm14
addss xmm1, xmm8
minss xmm0, xmm13
maxss xmm5, xmm12
movss dword [rsp + 0x70], xmm2
maxss xmm1, dword [rbp - 0x80]
comiss xmm0, dword [rbp - 0x80]
movss dword [rsp + 0x6c], xmm1
movss dword [rsp + 0x68], xmm5
movss dword [rsp + 0x74], xmm0
jbe 0x140033f0c
comiss xmm13, xmm1
jbe 0x140033f0c
comiss xmm2, xmm12
jbe 0x140033f0c
comiss xmm14, xmm5
jbe 0x140033f0c
mov rcx, qword [r13 + 0x2a0]
lea r8, [rsp + 0x70]
mov dword [rsp + 0x28], 0xf
lea rdx, [rsp + 0x68]
mov r9d, esi
movss dword [rsp + 0x20], xmm7
call fcn.14002ebf0
mov r12, qword [0x14007c440]
movss xmm2, dword [rbp - 0x80]
movss xmm6, dword [r15]
movaps xmm5, xmm15
subss xmm5, xmm10
movaps xmm1, xmm6
addss xmm8, xmm6
cmp rbx, rdi
jb 0x140033da0
movss xmm11, dword [rbp - 0x7c]
movss xmm12, dword [rsp + 0x78]
mov r13, qword [rbp + 0x138]
mov r8d, dword [rsp + 0x58]
mov qword [rsp + 0x50], r12
xorps xmm9, xmm9
movsxd rdx, dword [r14 + 0x1e88]
movss xmm7, dword [0x14004c610]
test r8b, r8b
jne 0x140033f72
cmp edx, 0x200000
jge 0x140034197
movups xmm1, xmmword [r12 + 0x15f0]
mov rbx, qword [rbp - 0x60]
movss xmm3, dword [0x14004c4e4]
comiss xmm9, xmm1
mov r10, qword [rbx + 0x2a0]
movaps xmm2, xmm1
shufps xmm2, xmm1, 0xff
mulss xmm2, dword [r12 + 0x1550]
movups xmmword [rsp + 0x68], xmm1
jbe 0x140033fb0
movaps xmm0, xmm9
jmp 0x140033fb7
movaps xmm0, xmm3
minss xmm0, xmm1
movss xmm13, dword [0x14004c4bc]
movss xmm1, dword [rsp + 0x6c]
comiss xmm9, xmm1
mulss xmm0, xmm7
addss xmm0, xmm13
cvttss2si ecx, xmm0
jbe 0x140033fdf
movaps xmm0, xmm9
jmp 0x140033fe6
movaps xmm0, xmm3
minss xmm0, xmm1
movss xmm1, dword [rsp + 0x70]
mulss xmm0, xmm7
addss xmm0, xmm13
cvttss2si eax, xmm0
shl eax, 8
or ecx, eax
comiss xmm9, xmm1
jbe 0x14003400a
movaps xmm0, xmm9
jmp 0x140034011
movaps xmm0, xmm3
minss xmm0, xmm1
mulss xmm0, xmm7
addss xmm0, xmm13
cvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
comiss xmm9, xmm2
jbe 0x14003402f
movaps xmm0, xmm9
jmp 0x140034036
movaps xmm0, xmm3
minss xmm0, xmm2
movss xmm8, dword [rbp + 0x140]
lea r8, [rbp - 0x58]
mov esi, dword [rsp + 0x58]
movaps xmm1, xmm8
movss xmm2, dword [r15]
subss xmm1, xmm9
mov r11, qword [r14 + 0x18f0]
mov eax, 0
mulss xmm0, xmm7
movss dword [rbp - 0x6c], xmm1
addss xmm0, xmm13
cvttss2si r9d, xmm0
movaps xmm0, xmm15
shl r9d, 0x18
subss xmm0, xmm10
or r9d, ecx
test sil, sil
cmovne r8, rax
add rdx, r13
movss dword [rbp - 0x70], xmm0
test r9d, 0xff000000
je 0x1400341b1
test rdx, rdx
jne 0x1400340bc
mov rdx, 0xffffffffffffffff
nop dword [rax]
inc rdx
cmp byte [rdx + r13], al
jne 0x1400340b0
add rdx, r13
cmp r13, rdx
je 0x1400341b1
test r11, r11
jne 0x1400340d2
mov rax, qword [r10 + 0x38]
mov r11, qword [rax + 8]
ucomiss xmm2, xmm9
jp 0x1400340e3
jne 0x1400340e3
mov rax, qword [r10 + 0x38]
movss xmm2, dword [rax + 0x10]
movsxd rcx, dword [r10 + 0x60]
mov rax, qword [r10 + 0x68]
add rcx, rcx
movups xmm0, xmmword [rax + rcx*8 - 0x10]
movups xmmword [rsp + 0x68], xmm0
test r8, r8
je 0x140034153
movss xmm1, dword [r8]
movss xmm0, dword [rsp + 0x68]
comiss xmm0, xmm1
jae 0x140034113
movss dword [rsp + 0x68], xmm1
movss xmm1, dword [r8 + 4]
movss xmm0, dword [rsp + 0x6c]
comiss xmm0, xmm1
jae 0x14003412a
movss dword [rsp + 0x6c], xmm1
movss xmm0, dword [r8 + 8]
comiss xmm0, dword [rsp + 0x70]
ja 0x14003413d
movss dword [rsp + 0x70], xmm0
movss xmm0, dword [r8 + 0xc]
comiss xmm0, dword [rsp + 0x74]
ja 0x140034150
movss dword [rsp + 0x74], xmm0
test r8, r8
setne al
mov rcx, r11
mov byte [rsp + 0x48], al
lea rax, [rsp + 0x68]
movss dword [rsp + 0x40], xmm9
mov qword [rsp + 0x38], rdx
mov rdx, r10
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r9d
mov r9, qword [rbp - 0x70]
call fcn.14001eac0
mov r12, qword [0x14007c440]
mov qword [rsp + 0x50], r12
jmp 0x1400341b1
movss xmm8, dword [rbp + 0x140]
movss xmm13, dword [0x14004c4bc]
mov rbx, qword [rbp - 0x60]
mov esi, dword [rsp + 0x58]
cmp byte [r14 + 0xd2], 0
je 0x1400341e8
movss xmm0, dword [r14 + 0x2cbc]
comiss xmm9, xmm0
jae 0x1400341e8
movss xmm1, dword [0x14004c4e8]
call sub.api_ms_win_crt_math_l1_1_0.dll_fmodf
movss xmm1, dword [0x14004c4d8]
comiss xmm1, xmm0
jae 0x1400341e8
xor al, al
jmp 0x1400341ea
mov al, 1
movss xmm4, dword [0x14004c4e4]
movaps xmm6, xmm8
addss xmm6, xmm12
addss xmm15, xmm11
movss xmm11, dword [rbp - 0x80]
subss xmm6, xmm9
subss xmm15, xmm10
movaps xmm0, xmm6
movaps xmm3, xmm6
movss dword [rbp - 0x58], xmm15
movaps xmm1, xmm15
addss xmm1, xmm4
subss xmm0, dword [r15]
subss xmm3, dword [0x14004c4f0]
movss dword [rbp - 0x50], xmm1
addss xmm0, xmm13
movss dword [rbp - 0x4c], xmm3
movss dword [rbp - 0x54], xmm0
test al, al
je 0x140034374
comiss xmm3, xmm11
jbe 0x140034374
movss xmm2, dword [rbp - 0x64]
comiss xmm2, xmm0
jbe 0x140034374
comiss xmm1, dword [rbp - 0x3c]
jbe 0x140034374
movss xmm0, dword [rbp - 0x78]
comiss xmm0, xmm15
jbe 0x140034374
movups xmm2, xmmword [r12 + 0x15f0]
comiss xmm9, xmm2
movaps xmm1, xmm2
shufps xmm1, xmm2, 0xff
mulss xmm1, dword [r12 + 0x1550]
movups xmmword [rsp + 0x68], xmm2
jbe 0x1400342a9
movaps xmm0, xmm9
jmp 0x1400342b0
movaps xmm0, xmm4
minss xmm0, xmm2
movss xmm2, dword [rsp + 0x6c]
comiss xmm9, xmm2
mulss xmm0, xmm7
addss xmm0, xmm13
cvttss2si ecx, xmm0
jbe 0x1400342cf
movaps xmm0, xmm9
jmp 0x1400342d6
movaps xmm0, xmm4
minss xmm0, xmm2
movss xmm2, dword [rsp + 0x70]
mulss xmm0, xmm7
addss xmm0, xmm13
cvttss2si eax, xmm0
shl eax, 8
or ecx, eax
comiss xmm9, xmm2
jbe 0x1400342fa
movaps xmm0, xmm9
jmp 0x140034301
movaps xmm0, xmm4
minss xmm0, xmm2
mulss xmm0, xmm7
addss xmm0, xmm13
cvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
comiss xmm9, xmm1
jbe 0x14003431f
movaps xmm0, xmm9
jmp 0x140034326
movaps xmm0, xmm4
minss xmm0, xmm1
mulss xmm0, xmm7
lea r8, [rbp - 0x70]
lea rdx, [rbp - 0x58]
movss dword [rbp - 0x70], xmm15
movss dword [rbp - 0x6c], xmm3
addss xmm0, xmm13
movss dword [rsp + 0x20], xmm4
cvttss2si r9d, xmm0
shl r9d, 0x18
or r9d, ecx
mov rcx, qword [rbx + 0x2a0]
call fcn.14002eee0
mov r12, qword [0x14007c440]
movss xmm4, dword [0x14004c4e4]
mov qword [rsp + 0x50], r12
cmp byte [rsp + 0x60], 0
movss xmm12, dword [rbp - 0x38]
je 0x14003439d
subss xmm6, dword [r15]
subss xmm15, xmm4
movss dword [r14 + 0x2d8c], xmm6
movss dword [r14 + 0x2d88], xmm15
test sil, sil
je 0x1400343ee
movss xmm0, dword [rbp + 0x158]
lea rcx, [rbp + 0x158]
addss xmm0, xmm9
movss dword [rbp + 0x158], xmm0
movss xmm0, dword [rbp + 0x160]
addss xmm0, dword [r15]
movss dword [rbp + 0x15c], xmm0
call fcn.140038e80
call fcn.1400162c0
call fcn.14000ff50
mov r12, qword [0x14007c440]
mov qword [rsp + 0x50], r12
mov eax, dword [rbp - 0x68]
movaps xmm15, xmmword [rsp + 0x150]
movaps xmm14, xmmword [rsp + 0x160]
movaps xmm13, xmmword [rsp + 0x170]
test al, al
je 0x1400344f1
mov rax, qword [r12 + 0x19f8]
mov rbx, r12
mov rcx, qword [rax + 0x2a0]
dec dword [rcx + 0x70]
call fcn.140023770
movsxd rcx, dword [r12 + 0x1a98]
lea eax, [rcx - 1]
mov dword [r12 + 0x1a98], eax
mov r12, qword [0x14007c440]
mov qword [rsp + 0x50], r12
test eax, eax
jne 0x14003446f
mov rcx, qword [r12 + 0xb0]
test rcx, rcx
jne 0x14003447b
mov rax, qword [r12 + 0xa0]
mov rcx, qword [rax + 0x48]
mov rcx, qword [rcx]
jmp 0x14003447b
mov rax, qword [rbx + 0x1aa0]
mov rcx, qword [rax + rcx*8 - 0x10]
movss xmm0, dword [r12 + 0xa8]
mov rax, qword [r12 + 0x19f8]
mov qword [r12 + 0x18f0], rcx
mulss xmm0, dword [rcx]
mulss xmm0, dword [rcx + 4]
movss dword [r12 + 0x18fc], xmm0
test rax, rax
je 0x1400344bb
movss xmm1, dword [rax + 0x298]
mulss xmm1, xmm0
jmp 0x1400344bf
movaps xmm1, xmm9
movss dword [r12 + 0x18f8], xmm1
mov rax, qword [rcx + 0x58]
movsd xmm0, qword [rax + 0x38]
mov eax, dword [rbp - 0x68]
movsd qword [r12 + 0x1900], xmm0
movss dword [r12 + 0x1910], xmm1
mov qword [r12 + 0x1908], rcx
cmp byte [r14 + 0x2dd0], 0
je 0x1400345fe
test al, al
jne 0x1400345fe
mov rdx, qword [r12 + 0x19f8]
mov rbx, r13
cmp r13, 0xffffffffffffffff
jae 0x140034531
movzx eax, byte [rbx]
test al, al
je 0x140034531
cmp al, 0x23
jne 0x140034528
cmp byte [rbx + 1], al
je 0x140034531
inc rbx
cmp rbx, 0xffffffffffffffff
jb 0x140034518
movss xmm0, dword [rdx + 0x100]
mov rdi, r13
mov eax, dword [rdx + 0x104]
mov r15d, eax
addss xmm0, dword [0x14004c4e4]
mov r8, qword [rsp + 0x50]
movss dword [rdx + 0x100], xmm8
mov ecx, dword [r8 + 0x2df0]
comiss xmm8, xmm0
seta r12b
cmp ecx, eax
jle 0x14003457e
mov dword [r8 + 0x2df0], eax
mov ecx, eax
mov r15d, dword [rdx + 0x104]
sub r15d, ecx
mov r8, rbx
mov edx, 0xa
sub r8, rdi
mov rcx, rdi
call sub.VCRUNTIME140.dll_memchr
test rax, rax
mov rsi, rbx
cmovne rsi, rax
cmp rsi, rbx
jne 0x1400345a8
cmp rdi, rsi
je 0x1400345f7
mov r9d, esi
sub r9d, edi
test r12b, r12b
jne 0x1400345cc
cmp rdi, r13
jne 0x1400345cc
mov r8, rdi
lea rcx, str.__.s
mov edx, r9d
call fcn.14000ad90
jmp 0x1400345ec
lea edx, [r15*4]
mov qword [rsp + 0x20], rdi
lea r8, [0x140047a06]
lea rcx, str._r_n_s_.s
call fcn.14000ad90
cmp rsi, rbx
je 0x1400345f7
lea rdi, [rsi + 1]
jmp 0x140034581
mov r12, qword [0x14007c440]
comiss xmm12, xmm9
jbe 0x14003463d
movss xmm0, dword [rbp - 0x30]
mov r9b, 1
addss xmm0, dword [r14 + 0x159c]
addss xmm11, dword [r14 + 0x1588]
mov rdx, qword [rbp + 0x130]
xor r8d, r8d
unpcklps xmm0, xmm11
movq rcx, xmm0
call fcn.14001c320
mov r12, qword [0x14007c440]
movzx ecx, byte [rsp + 0x7c]
test cl, cl
je 0x14003465e
mov rax, qword [r12 + 0x19f8]
mov byte [r12 + 0x1a36], 1
or dword [rax + 0x110], 4
test byte [rsp + 0x5c], 0x20
mov eax, ecx
movzx ecx, byte [rsp + 0x7d]
cmovne eax, ecx
jmp 0x140031b4d