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

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x20], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rax - 0x148]
sub rsp, 0x220
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
mov rax, qword [0x180059040]
xor rax, rsp
mov qword [rbp + 0x78], rax
mov rbx, qword [0x180059c00]
mov qword [rbp - 0x60], r8
mov rdi, rbx
mov qword [rsp + 0x68], rbx
mov rax, qword [rbx + 0x1a18]
mov byte [rax + 0x80], 1
mov r15, qword [rbx + 0x1a18]
cmp byte [r15 + 0x83], 0
jne 0x1800416fc
mov ecx, dword [rbp + 0x178]
mov eax, ecx
shr eax, 0xe
mov r14d, ecx
and al, 1
shr r14d, 0x14
mov dword [rsp + 0x74], eax
and r14b, 1
mov eax, ecx
mov dword [rsp + 0x70], r14d
shr eax, 0xf
and al, 1
mov dword [rbp - 0x54], eax
mov eax, ecx
shr eax, 0x10
not al
and al, 1
mov dword [rbp - 0x74], eax
mov eax, ecx
shr eax, 0x12
and al, 1
mov dword [rbp - 0x50], eax
test r14b, r14b
je 0x1800414fe
call fcn.180024ec0
mov rbx, qword [0x180059c00]
movsxd rax, dword [r15 + 0xc0]
lea r12, str.Results_Play_Speed
mov r8, qword [r15 + 0xc8]
xor edx, edx
mov rcx, r12
mov r8d, dword [r8 + rax*4 - 4]
call fcn.180019fe0
mov esi, eax
mov dword [rbp - 0x70], eax
cmp dword [rbx + 0x1a60], eax
jne 0x180041535
mov dword [rbx + 0x1a64], eax
cmp dword [rbx + 0x1a9c], esi
jne 0x180041544
mov byte [rbx + 0x1aa0], 1
mov rcx, r12
cmp r12, 0xffffffffffffffff
jae 0x18004156d
nop dword [rax]
movzx edx, byte [rcx]
test dl, dl
je 0x18004156d
lea rax, [rcx + 1]
cmp dl, 0x23
jne 0x180041564
cmp byte [rax], dl
je 0x18004156d
mov rcx, rax
cmp rax, 0xffffffffffffffff
jb 0x180041550
movss xmm1, dword [0x180051c4c]
xorps xmm12, xmm12
movss xmm0, dword [rbx + 0x1910]
movss dword [rbp - 0x38], xmm1
cmp r12, rcx
jne 0x180041591
xorps xmm11, xmm11
jmp 0x1800415db
movss xmm3, dword [0x180051c40]
lea rdx, [rbp - 0x80]
mov qword [rsp + 0x30], rcx
movaps xmm2, xmm0
mov rcx, qword [rbx + 0x1908]
mov qword [rsp + 0x28], r12
movss dword [rsp + 0x20], xmm1
call fcn.180038830
movss xmm0, dword [rbp - 0x80]
addss xmm0, dword [0x180051b64]
cvttss2si eax, xmm0
movss xmm0, dword [rbp - 0x7c]
movd xmm11, eax
cvtdq2ps xmm11, xmm11
movss dword [rbp - 0x40], xmm11
test r14b, r14b
je 0x1800415f6
movss xmm0, dword [rdi + 0x1910]
mulss xmm0, dword [0x180051be4]
movss xmm6, dword [rdi + 0x1594]
movaps xmm3, xmm6
addss xmm3, xmm6
addss xmm3, xmm0
call fcn.1800246b0
mov rdx, qword [rbp + 0x170]
lea rcx, [rbp - 0x80]
movaps xmm2, xmm0
mov rdx, qword [rdx]
call fcn.180024720
comiss xmm11, xmm12
jbe 0x180041638
movaps xmm2, xmm11
addss xmm2, dword [rdi + 0x15a8]
jmp 0x18004163b
xorps xmm2, xmm2
movss xmm4, dword [r15 + 0xd4]
movss xmm7, dword [rbp - 0x7c]
movaps xmm0, xmm4
movss xmm3, dword [r15 + 0xd0]
addss xmm0, xmm7
movss xmm9, dword [rbp - 0x80]
movaps xmm1, xmm3
movss dword [rbp - 0x30], xmm7
addss xmm2, xmm9
movss dword [rbp - 0x28], xmm3
addss xmm1, xmm9
movss dword [rbp - 0x24], xmm4
movss dword [rbp - 0x1c], xmm0
movaps xmm0, xmm4
movss dword [rbp + 0x58], xmm3
addss xmm0, xmm7
movss dword [rbp + 0x5c], xmm4
addss xmm2, xmm3
movss dword [rbp - 0x20], xmm1
mov qword [rbp - 0x80], r15
movss dword [rbp + 0x64], xmm0
movss dword [rbp + 0x60], xmm2
test r14b, r14b
je 0x1800417bf
lea r8, [rbp - 0x28]
mov edx, esi
lea rcx, [rbp + 0x58]
call fcn.18001c220
test al, al
jne 0x180041749
movss xmm1, dword [rbp + 0x64]
lea rcx, [rbp - 0x80]
subss xmm1, dword [rbp + 0x5c]
movss xmm0, dword [rbp + 0x60]
subss xmm0, dword [rbp + 0x58]
movss dword [rbp - 0x7c], xmm1
movss xmm1, dword [rdi + 0x1594]
movss dword [rbp - 0x80], xmm0
call fcn.18001c0e0
call fcn.180024fe0
xor al, al
mov rcx, qword [rbp + 0x78]
xor rcx, rsp
call fcn.180046c70
lea r11, [rsp + 0x220]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x48]
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 r12
pop rdi
pop rbp
ret
movss xmm8, dword [rbp - 0x20]
lea rdx, [rbp - 0x80]
movss xmm6, dword [rbp - 0x28]
movaps xmm0, xmm8
movss xmm1, dword [rbp - 0x1c]
subss xmm0, xmm6
movss xmm10, dword [rbp - 0x24]
mov ecx, esi
subss xmm1, xmm10
movss dword [rbp - 0x34], xmm8
movss dword [rbp - 0x3c], xmm6
movss dword [rbp - 0x58], xmm10
movss dword [rbp - 0x80], xmm0
movss dword [rbp - 0x7c], xmm1
call fcn.18001f5e0
test al, al
jne 0x1800417a0
call fcn.18001f350
jmp 0x1800416f7
mov rbx, qword [rdi + 0x1a18]
mov qword [rbp - 0x80], rbx
mov eax, dword [rbx + 0x13c]
or dword [rbx + 0x144], eax
subss xmm9, dword [rbx + 0x74]
jmp 0x180041817
subss xmm2, xmm3
movaps xmm1, xmm6
subss xmm0, xmm4
lea rcx, [rsp + 0x58]
movss dword [rsp + 0x58], xmm2
movss dword [rsp + 0x5c], xmm0
call fcn.18001c0e0
lea r8, [rbp - 0x28]
mov edx, esi
lea rcx, [rbp + 0x58]
call fcn.18001c220
test al, al
je 0x1800416fc
movss xmm0, dword [rbp - 0x20]
movss xmm10, dword [rbp - 0x24]
movss xmm6, dword [rbp - 0x28]
movss dword [rbp - 0x34], xmm0
movss dword [rbp - 0x58], xmm10
movss dword [rbp - 0x3c], xmm6
mov qword [rsp + 0x250], r13
lea rcx, [rbp - 0x28]
mov edx, esi
movaps xmmword [rsp + 0x180], xmm15
call fcn.18001c400
mov byte [rbp - 0x6c], al
movzx r11d, al
test al, al
je 0x180041848
mov dword [rdi + 0x1e90], 1
xor eax, eax
lea r14, [rdi + 0x1f88]
cmp dword [r14], esi
mov rbx, r14
mov edx, esi
mov rcx, r15
cmovne rbx, rax
mov qword [rsp + 0x58], rbx
call fcn.18001c560
movzx esi, al
test al, al
je 0x18004188e
cmp qword [rdi + 0x1cb8], r15
jne 0x18004188e
mov ecx, dword [r15 + 0x178]
cmp dword [rdi + 0x1cc8], ecx
jne 0x18004188e
mov r12b, 1
jmp 0x18004189b
xor r12b, r12b
mov byte [rsp + 0x51], 1
test sil, sil
jne 0x1800418a0
mov byte [rsp + 0x51], 0
test r11b, r11b
je 0x1800418b3
cmp byte [rdi + 0x420], 0
je 0x1800418b3
mov r13b, 1
jmp 0x1800418b6
xor r13b, r13b
mov edi, dword [rdi + 0x1a60]
mov byte [rsp + 0x50], r13b
cmp edi, edx
je 0x1800418ea
mov rax, qword [rsp + 0x68]
cmp dword [rax + 0x1b98], edx
je 0x1800418e3
cmp dword [rax + 0x1b8c], edx
jne 0x1800418ea
cmp dword [rax + 0x1bac], 3
jne 0x1800418ea
mov byte [rsp + 0x60], 1
jmp 0x1800418ef
mov byte [rsp + 0x60], 0
mov eax, dword [rsp + 0x70]
test al, al
je 0x18004193a
test rbx, rbx
je 0x18004193a
test edi, edi
jne 0x18004193a
mov rcx, qword [rbp - 0x80]
xor edx, edx
movsxd rax, dword [rcx + 0xc0]
mov r8, qword [rcx + 0xc8]
lea rcx, str.SCROLLY
mov r8d, dword [r8 + rax*4 - 4]
call fcn.180019fe0
mov rcx, qword [rsp + 0x68]
cmp dword [rcx + 0x1a9c], eax
jne 0x180041936
mov bl, 1
jmp 0x180041948
mov eax, dword [rsp + 0x70]
xor bl, bl
test al, al
je 0x180041975
cmp qword [rsp + 0x58], 0
je 0x180041975
mov rcx, qword [rbp - 0x80]
xor edx, edx
movsxd rax, dword [rcx + 0xc0]
mov r8, qword [rcx + 0xc8]
lea rcx, str.SCROLLY
mov r8d, dword [r8 + rax*4 - 4]
call fcn.180019fe0
cmp edi, eax
jne 0x180041975
mov al, 1
jmp 0x180041977
xor al, al
mov edx, dword [rbp - 0x70]
movzx ecx, byte [rsp + 0x60]
mov byte [rsp + 0x62], al
mov byte [rsp + 0x61], 0
cmp edi, edx
je 0x1800419a5
test byte [rbp + 0x178], 0x10
jne 0x180041999
test cl, cl
je 0x1800419a5
cmp byte [rsp + 0x70], 0
mov byte [rsp + 0x64], 1
je 0x1800419aa
mov byte [rsp + 0x64], 0
test sil, sil
jne 0x180041b24
test r13b, r13b
jne 0x180041b24
test bl, bl
jne 0x180041b24
test cl, cl
jne 0x180041b24
test al, al
jne 0x180041b27
mov rsi, qword [rsp + 0x58]
mov r14d, edx
mov r12d, dword [rsp + 0x64]
mov rdi, qword [rsp + 0x68]
cmp dword [rdi + 0x1a60], r14d
je 0x180041a77
test r13b, r13b
je 0x180041a77
mov rdx, r15
mov ecx, r14d
call fcn.18001bf40
call fcn.18001c010
mov rcx, r15
call fcn.1800243c0
mov eax, dword [rdi + 0x1a74]
mov ecx, dword [rsp + 0x70]
or eax, 3
mov edx, dword [rbp + 0x178]
mov dword [rdi + 0x1a74], eax
test cl, cl
jne 0x180041a31
test dl, dl
jns 0x180041a3a
or eax, 0xc
mov dword [rdi + 0x1a74], eax
mov rax, qword [rdi + 0x1a80]
or dword [rdi + 0x1a78], 2
or rax, 0x180
mov qword [rdi + 0x1a80], rax
test cl, cl
je 0x180041a64
or rax, 0x60
mov qword [rdi + 0x1a80], rax
test edx, 0x440
je 0x180041a77
or rax, 1
mov qword [rdi + 0x1a80], rax
mov r10, qword [0x180059c00]
mov qword [rbp + 0x58], r10
cmp dword [rdi + 0x1a60], r14d
jne 0x180041d3c
test rsi, rsi
jne 0x180041aed
mov ecx, dword [r10 + 0x1a60]
test ecx, ecx
setne al
xor r8d, r8d
mov byte [r10 + 0x1a6c], al
test ecx, ecx
je 0x180041abd
mov dword [r10 + 0x1a68], r8d
mov word [r10 + 0x1a6e], r8w
mov dword [r10 + 0x1a60], r8d
mov byte [r10 + 0x1a6d], 0
mov qword [r10 + 0x1a90], r8
mov byte [r10 + 0x1a70], 0
mov qword [r10 + 0x1a74], 0
mov qword [r10 + 0x1a80], r8
cmp dword [rdi + 0x1a60], r14d
jne 0x180041d3c
cmp byte [rdi + 0x420], 0
je 0x180041d48
test bl, bl
jne 0x180041d48
test r13b, r13b
jne 0x180041d48
mov byte [rsp + 0x61], 1
mov cl, 1
jmp 0x180041d4e
mov r13b, 1
mov rsi, qword [rsp + 0x58]
mov bl, 1
mov qword [rsp + 0x58], rsi
cmp edi, edx
je 0x1800419d9
mov rsi, r14
mov qword [rsp + 0x58], r14
mov dword [r14 + 0xe70], 0xbe99999a
mov rax, 0xffffffffffffffff
mov r14, qword [rbp - 0x60]
nop dword [rax]
cmp byte [r14 + rax + 1], 0
lea rax, [rax + 1]
jne 0x180041b60
mov ecx, dword [rsi + 0x34]
lea ebx, [rax + 1]
cmp ebx, ecx
jle 0x180041b9a
test ecx, ecx
je 0x180041b85
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x180041b8a
mov eax, 8
cmp eax, ebx
lea rcx, [rsi + 0x30]
mov edx, ebx
cmovg edx, eax
call fcn.18002b810
mov dword [rsi + 0x30], ebx
mov rdx, r14
mov rcx, qword [rsi + 0x38]
movsxd r8, ebx
call sub.VCRUNTIME140.dll_memcpy
mov ecx, dword [rsi + 0x14]
cmp ecx, 0x21
jge 0x180041bdb
test ecx, ecx
je 0x180041bc3
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x180041bc8
mov eax, 8
mov edx, 0x21
lea rcx, [rsi + 0x10]
cmp eax, edx
cmovg edx, eax
call fcn.18002b8a0
mov dword [rsi + 0x10], 0x21
mov ecx, dword [rsi + 0x24]
test ecx, ecx
jns 0x180041c06
mov eax, ecx
xor r8d, r8d
cdq
sub eax, edx
mov edx, r8d
sar eax, 1
add eax, ecx
lea rcx, [rsi + 0x20]
test eax, eax
cmovg edx, eax
call fcn.18002b810
xor ecx, ecx
mov rdi, r14
mov dword [rsi + 0x20], ecx
mov r14, qword [rsi + 0x18]
mov byte [rsi + 0x40], cl
mov rbx, r14
lea rsi, [r14 + 0x3e]
cmp r14, rsi
jae 0x180041c57
cmp byte [rdi], 0
je 0x180041c55
xor r8d, r8d
lea rcx, [rbp - 0x78]
mov rdx, rdi
call fcn.18001a3a0
movsxd rcx, eax
mov eax, dword [rbp - 0x78]
add rdi, rcx
test eax, eax
je 0x180041c55
cmp eax, 0xffff
ja 0x180041c50
mov word [rbx], ax
add rbx, 2
cmp rbx, rsi
jb 0x180041c21
xor ecx, ecx
mov rsi, qword [rsp + 0x58]
sub edi, dword [rbp - 0x60]
mov word [rbx], cx
sub rbx, r14
mov r14d, dword [rbp - 0x70]
sar rbx, 1
mov dword [rsi + 4], ebx
mov dword [rsi + 8], edi
cmp dword [rsi], r14d
jne 0x180041c9b
cmp dword [rsi + 0x4c], ebx
mov ecx, ebx
cmovl ecx, dword [rsi + 0x4c]
cmp dword [rsi + 0x50], ebx
mov dword [rsi + 0x4c], ecx
mov ecx, ebx
cmovl ecx, dword [rsi + 0x50]
cmp dword [rsi + 0x54], ebx
mov dword [rsi + 0x50], ecx
cmovl ebx, dword [rsi + 0x54]
mov dword [rsi + 0x54], ebx
jmp 0x180041cf8
mov dword [rsi + 0xe68], ecx
mov dword [rsi + 0x60], ecx
mov ecx, dword [rsp + 0x70]
movzx eax, cl
xor al, 1
mov dword [rsi], r14d
mov qword [rsi + 0x48], 0
mov dword [rsi + 0xe62], 0x630000
mov dword [rsi + 0xe6c], 0x3e7
mov qword [rsi + 0x50], 0
mov dword [rsi + 0x58], 0x10000
mov byte [rsi + 0x5c], al
test cl, cl
jne 0x180041cfc
mov ecx, dword [rsp + 0x64]
test r12b, r12b
movzx ecx, cl
mov eax, 1
cmovne ecx, eax
mov dword [rsp + 0x64], ecx
mov ecx, dword [rsp + 0x70]
test dword [rbp + 0x178], 0x2000
je 0x180041d0c
mov byte [rsi + 0x58], 1
test cl, cl
jne 0x180041d35
cmp byte [rsp + 0x51], cl
jne 0x180041d29
cmp byte [rsp + 0x50], cl
je 0x180041d35
mov rax, qword [rsp + 0x68]
cmp byte [rax + 0x148], cl
je 0x180041d35
mov r12b, 1
movzx ebx, r12b
jmp 0x1800419e1
mov bl, 1
jmp 0x1800419dc
test rsi, rsi
je 0x180041d4c
cmp byte [rsp + 0x62], 0
je 0x180041d4c
mov cl, 1
jmp 0x180041d4e
xor cl, cl
mov byte [rsp + 0x50], cl
test rsi, rsi
je 0x180041d68
mov eax, dword [rsi + 0x54]
cmp dword [rsi + 0x50], eax
je 0x180041d68
test cl, cl
je 0x180041d68
mov r13b, 1
jmp 0x180041d6b
xor r13b, r13b
cmp byte [rsp + 0x74], 0
mov dword [rbp - 0x68], r13d
movzx r15d, r13b
mov byte [rsp + 0x7c], 0
mov byte [rsp + 0x51], 0
je 0x180041e93
test rsi, rsi
je 0x180041e93
test cl, cl
jne 0x180041d9e
test r13b, r13b
je 0x180041e9c
mov ecx, dword [rsi + 0x14]
lea rbx, [rsi + 0x10]
cmp ecx, 0x21
jge 0x180041de0
test ecx, ecx
je 0x180041db9
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x180041dbe
mov eax, 8
mov edx, 0x21
mov rcx, rbx
cmp eax, edx
cmovg edx, eax
call fcn.18002b8a0
mov rsi, qword [0x180059c00]
mov qword [rbp + 0x58], rsi
mov rsi, qword [rsp + 0x58]
mov rax, qword [rbp - 0x60]
mov dword [rbx], 0x21
mov rdi, rax
mov r14, qword [rsi + 0x18]
mov rbx, r14
lea rsi, [r14 + 0x40]
cmp r14, rsi
jae 0x180041e38
nop dword [rax]
cmp byte [rdi], 0
je 0x180041e34
xor r8d, r8d
lea rcx, [rbp - 0x78]
mov rdx, rdi
call fcn.18001a3a0
movsxd rcx, eax
mov eax, dword [rbp - 0x78]
add rdi, rcx
test eax, eax
je 0x180041e34
cmp eax, 0xffff
ja 0x180041e2f
mov word [rbx], ax
add rbx, 2
cmp rbx, rsi
jb 0x180041e00
mov rax, qword [rbp - 0x60]
mov rdx, qword [rsp + 0x58]
xor r8d, r8d
mov r10, qword [rbp + 0x58]
sub edi, eax
mov word [rbx], r8w
mov r13d, r8d
sub rbx, r14
mov r14d, dword [rbp - 0x70]
sar rbx, 1
cmp dword [rdx + 0x4c], ebx
mov ecx, ebx
mov dword [rdx + 4], ebx
cmovl ecx, dword [rdx + 0x4c]
cmp dword [rdx + 0x50], ebx
mov dword [rdx + 0x4c], ecx
mov ecx, ebx
cmovl ecx, dword [rdx + 0x50]
cmp dword [rdx + 0x54], ebx
mov dword [rdx + 8], edi
cmovl ebx, dword [rdx + 0x54]
mov rdi, qword [rsp + 0x68]
cmp ecx, ebx
mov dword [rdx + 0x50], ecx
movzx ecx, byte [rsp + 0x50]
cmovne r13d, r15d
mov dword [rbp - 0x68], r13d
mov dword [rdx + 0x54], ebx
test cl, cl
jne 0x180041ea5
test r13b, r13b
jne 0x180041ea5
cmp dword [rdi + 0x1a60], r14d
jne 0x180041ec5
mov esi, dword [rsp + 0x74]
mov r15, qword [rsp + 0x58]
test sil, sil
jne 0x180041ece
test r15, r15
je 0x180041ece
cmp byte [r15 + 0x40], sil
je 0x180041ece
mov byte [rsp + 0x62], 1
jmp 0x180041ed3
mov r15, qword [rsp + 0x58]
mov esi, dword [rsp + 0x74]
mov byte [rsp + 0x62], 0
cmp byte [rbp - 0x54], 0
je 0x180041f8c
mov rdx, qword [rdi + 0x1908]
cmp dword [rdx + 0x18], 0x2a
jg 0x180041ef0
mov r9, qword [rdx + 0x38]
jmp 0x180041f14
mov rax, qword [rdx + 0x20]
movzx ecx, word [rax + 0x54]
mov eax, 0xffff
cmp cx, ax
jne 0x180041f08
mov r9, qword [rdx + 0x38]
jmp 0x180041f14
mov rax, qword [rdx + 0x30]
lea rcx, [rcx + rcx*4]
lea r9, [rax + rcx*8]
mov eax, dword [rdx + 0x14]
lea r8, [rdi + 0x2e18]
mov dword [r8 + 0x14], eax
mov rax, qword [rdi + 0x1908]
mov ecx, dword [rax + 0x60]
mov dword [r8 + 0x60], ecx
mov rcx, r8
mov rax, qword [rdi + 0x1908]
movsd xmm0, qword [rax + 0x40]
movsd qword [r8 + 0x40], xmm0
mov rax, qword [rdi + 0x1908]
mov edx, dword [rax + 0x64]
mov dword [r8 + 0x64], edx
mov rax, qword [rdi + 0x1908]
mov edx, dword [rax + 0x68]
mov dword [r8 + 0x68], edx
mov rax, qword [rdi + 0x1908]
mov rdx, qword [rax + 0x48]
mov qword [r8 + 0x48], rdx
mov qword [r8 + 0x38], r9
mov eax, dword [r9 + 4]
mov dword [r8 + 0x10], eax
call fcn.1800248c0
mov r10, qword [0x180059c00]
mov qword [rbp + 0x58], r10
movss xmm0, dword [0x180051b3c]
xor r9d, r9d
mov edx, 0x20000c
mov r13d, dword [rsp + 0x70]
mov dword [rsp + 0x64], r9d
cmp dword [rdi + 0x1a60], r14d
jne 0x1800423e0
mov eax, dword [r15 + 8]
mov r8d, dword [rbp + 0x178]
mov dword [r15 + 0xe78], r8d
mov dword [r15 + 0x44], 0x20
mov qword [r15 + 0xe80], r9
mov qword [r15 + 0xe88], r9
cmp byte [rdi + 0x138], r9b
mov dword [rdi + 0x315c], 1
mov dword [rsp + 0x64], eax
sete al
mov byte [rdi + 0x1a6d], al
movss xmm1, dword [rdi + 0x130]
subss xmm1, xmm6
subss xmm1, dword [rdi + 0x1590]
addss xmm1, dword [r15 + 0x48]
test r13b, r13b
je 0x180042036
mov rax, qword [rbp - 0x80]
movss xmm2, dword [rdi + 0x134]
subss xmm2, dword [rax + 0xd4]
subss xmm2, dword [rdi + 0x1594]
jmp 0x180042042
movss xmm2, dword [rdi + 0x1910]
mulss xmm2, xmm0
movzx edi, byte [rdi + 0xc9]
test r12b, r12b
jne 0x1800421c3
movzx eax, byte [rbp - 0x6c]
mov rcx, qword [rsp + 0x68]
test al, al
je 0x180042071
test dil, dil
jne 0x1800420d1
cmp byte [rcx + 0x425], r9b
jne 0x1800421c3
cmp byte [rcx + 0x420], r9b
je 0x180042138
cmp byte [r15 + 0xe75], r9b
jne 0x180042138
test al, al
je 0x1800421df
cmp byte [r15 + 0x5c], r9b
je 0x18004209d
movaps xmm2, xmm12
mov rcx, r15
call fcn.18003fb20
mov r10, qword [rbp + 0x58]
mov r8d, dword [rbp + 0x178]
mov dword [r15 + 0x4c], eax
mov dword [r15 + 0x50], eax
mov dword [r15 + 0x54], eax
mov byte [r15 + 0x5b], 0
mov dword [r15 + 0xe70], 0xbe99999a
jmp 0x1800421df
cmp byte [rcx + 0x425], r9b
je 0x180042071
mov r8d, edx
mov rcx, r15
lea rdx, [r15 + 0x4c]
call fcn.180040010
mov r8d, 0x60000d
mov byte [r15 + 0xe74], 1
lea rdx, [r15 + 0x4c]
mov dword [r15 + 0xe70], 0xbe99999a
mov rcx, r15
call fcn.180040010
mov r10, qword [0x180059c00]
mov r8d, dword [rbp + 0x178]
mov qword [rbp + 0x58], r10
mov byte [r15 + 0xe74], 1
mov dword [r15 + 0xe70], 0xbe99999a
jmp 0x1800421df
mov rax, qword [rsp + 0x68]
cmp byte [rax + 0x138], r9b
je 0x1800421e4
cmp byte [r15 + 0xe75], r9b
jne 0x1800421e4
movss xmm0, dword [rax + 0x3c0]
ucomiss xmm0, xmm12
jp 0x180042177
jne 0x180042177
movss xmm0, dword [rax + 0x3c4]
ucomiss xmm0, xmm12
jp 0x180042177
je 0x1800421e4
cmp byte [r15 + 0x5c], r9b
je 0x180042181
movaps xmm2, xmm12
mov eax, dword [r15 + 0x54]
cmp dword [r15 + 0x50], eax
jne 0x180042193
mov eax, dword [r15 + 0x4c]
mov dword [r15 + 0x50], eax
mov rcx, r15
call fcn.18003fb20
mov r10, qword [rbp + 0x58]
mov r8d, dword [rbp + 0x178]
mov dword [r15 + 0x54], eax
mov dword [r15 + 0x4c], eax
mov dword [r15 + 0xe70], 0xbe99999a
mov byte [r15 + 0xe74], 1
jmp 0x1800421df
mov eax, dword [r15 + 4]
mov dword [r15 + 0x54], eax
mov dword [r15 + 0x4c], eax
mov dword [r15 + 0x50], r9d
mov byte [r15 + 0x5b], r9b
mov byte [r15 + 0xe75], 1
mov rax, qword [rsp + 0x68]
cmp byte [r15 + 0xe75], 0
je 0x1800421ff
cmp byte [rax + 0x138], 0
jne 0x1800421ff
mov byte [r15 + 0xe75], 0
cmp byte [rax + 0x148], 0
je 0x180042215
cmp byte [rax + 0x14a], 0
je 0x1800423d1
test dil, dil
mov rdi, qword [rsp + 0x68]
je 0x18004222c
cmp byte [rdi + 0x14b], 0
jne 0x1800423d6
xor bl, bl
bt r8d, 0xa
jae 0x1800422da
mov ecx, dword [r10 + 0x3c]
test ecx, ecx
js 0x1800422da
call fcn.18001f030
test al, al
je 0x1800422da
test bl, bl
jne 0x1800422da
cmp byte [rdi + 0x149], bl
jne 0x1800422da
test sil, sil
jne 0x1800422da
mov rcx, qword [rdi + 0x1550]
movsxd rax, dword [rdi + 0x1548]
lea rdx, [rcx + rax*2]
cmp rcx, rdx
jae 0x180042292
nop
movzx eax, word [rcx]
add rcx, 2
cmp ax, 9
je 0x1800422da
cmp rcx, rdx
jb 0x180042280
mov edx, r8d
mov dword [rsp + 0x78], 9
lea rcx, [rsp + 0x78]
call fcn.180041280
test al, al
je 0x1800422cf
mov r8d, dword [rsp + 0x78]
lea rdx, [r15 + 0x4c]
mov rcx, r15
call fcn.180040010
mov byte [r15 + 0xe74], 1
mov dword [r15 + 0xe70], 0xbe99999a
mov r10, qword [0x180059c00]
mov qword [rbp + 0x58], r10
cmp dword [rdi + 0x1548], 0
jle 0x1800423dd
xor r12d, r12d
test bl, bl
jne 0x180042393
test sil, sil
jne 0x180042393
cmp byte [rsp + 0x60], sil
jne 0x180042393
mov rsi, qword [rsp + 0x68]
mov edi, r12d
mov r13d, dword [rbp + 0x178]
mov ebx, r12d
nop dword [rax + rax]
mov rax, qword [rsi + 0x1550]
movzx ecx, word [rax + rbx]
mov dword [rsp + 0x78], ecx
cmp ecx, 9
jne 0x18004233d
cmp byte [rsi + 0x149], r12b
jne 0x180042372
mov edx, r13d
lea rcx, [rsp + 0x78]
call fcn.180041280
test al, al
je 0x180042372
mov r8d, dword [rsp + 0x78]
lea rdx, [r15 + 0x4c]
mov rcx, r15
call fcn.180040010
mov byte [r15 + 0xe74], 1
mov dword [r15 + 0xe70], 0xbe99999a
inc edi
add rbx, 2
cmp edi, dword [rsi + 0x1548]
jl 0x180042320
mov r10, qword [0x180059c00]
mov rdi, rsi
mov r13d, dword [rsp + 0x70]
mov qword [rbp + 0x58], r10
mov ecx, dword [rdi + 0x154c]
test ecx, ecx
jns 0x1800423c5
mov eax, ecx
cdq
sub eax, edx
mov edx, r12d
sar eax, 1
add eax, ecx
lea rcx, [rdi + 0x1548]
test eax, eax
cmovg edx, eax
call fcn.18002b8a0
mov r10, qword [0x180059c00]
mov qword [rbp + 0x58], r10
xor r9d, r9d
mov dword [rdi + 0x1548], r9d
jmp 0x1800423e0
mov rdi, qword [rsp + 0x68]
mov bl, 1
jmp 0x18004222e
xor r9d, r9d
xor cl, cl
mov r12d, 0x3ff
cmp dword [rdi + 0x1a60], r14d
jne 0x180042fa3
cmp byte [rdi + 0x1a6c], cl
jne 0x180042fa3
cmp byte [rsp + 0x61], cl
jne 0x180042fa3
movzx ecx, byte [rdi + 0x149]
movzx r12d, byte [rdi + 0xc9]
movzx eax, cl
neg al
sbb r14d, r14d
and r14d, 0x400000
test r12b, r12b
je 0x180042478
cmp byte [rdi + 0x14b], 0
je 0x180042445
cmp byte [rdi + 0x148], 0
mov eax, 1
je 0x180042448
mov eax, r9d
test eax, eax
jne 0x18004248a
xor r15b, r15b
test r12b, r12b
je 0x18004249c
cmp byte [rdi + 0x14b], 0
je 0x18004249c
cmp cl, 0
je 0x18004249c
cmp byte [rdi + 0x148], 0
jne 0x18004249c
cmp byte [rdi + 0x14a], 0
jne 0x18004249c
mov bl, 1
jmp 0x1800424a3
cmp byte [rdi + 0x148], 0
je 0x18004244c
cmp byte [rdi + 0x14b], 0
jne 0x18004244c
cmp byte [rdi + 0x14a], 0
jne 0x18004244c
test cl, cl
jne 0x18004244c
mov r15b, 1
jmp 0x18004244f
xor bl, bl
test r12b, r12b
je 0x1800424f2
cmp byte [rdi + 0x14b], 0
movzx esi, byte [rdi + 0x14a]
je 0x1800424f9
cmp byte [rdi + 0x148], 0
jne 0x1800424f9
test sil, sil
jne 0x1800424f9
movzx ecx, byte [rdi + 0x148]
mov r11b, 1
xor r8b, r8b
cmp byte [rdi + 0x149], r8b
je 0x180042525
test cl, cl
jne 0x180042525
cmp byte [rdi + 0x14a], r8b
jne 0x180042525
cmp byte [rdi + 0x14b], r8b
jne 0x180042525
mov r9b, 1
jmp 0x180042528
movzx esi, byte [rdi + 0x148]
movzx ecx, byte [rdi + 0x148]
xor r11b, r11b
test cl, cl
je 0x1800424cb
cmp byte [rdi + 0x149], r11b
jne 0x1800424cb
cmp byte [rdi + 0x14a], r11b
jne 0x1800424cb
cmp byte [rdi + 0x14b], r11b
jne 0x1800424cb
mov r8b, 1
xor r9b, r9b
test r15b, r15b
je 0x180042541
mov ecx, dword [r10 + 0x88]
test ecx, ecx
js 0x180042541
call fcn.18001f030
test al, al
jne 0x180042557
test r9b, r9b
je 0x18004257b
mov ecx, dword [r10 + 0x64]
test ecx, ecx
js 0x18004257b
call fcn.18001f030
test al, al
je 0x18004257b
cmp byte [rsp + 0x74], 0
mov rdi, qword [rsp + 0x58]
jne 0x180042580
cmp byte [rbp - 0x54], 0
jne 0x180042580
test r13b, r13b
je 0x180042576
mov eax, dword [rdi + 0x54]
cmp dword [rdi + 0x50], eax
je 0x180042580
mov r13b, 1
jmp 0x180042583
mov rdi, qword [rsp + 0x58]
xor r13b, r13b
test r15b, r15b
je 0x18004259c
mov ecx, dword [r10 + 0x80]
test ecx, ecx
js 0x18004259c
call fcn.18001f030
test al, al
jne 0x1800425b2
test r8b, r8b
je 0x1800425cc
mov ecx, dword [r10 + 0x60]
test ecx, ecx
js 0x1800425cc
call fcn.18001f030
test al, al
je 0x1800425cc
cmp byte [rbp - 0x54], 0
jne 0x1800425cc
cmp byte [rsp + 0x70], 0
je 0x1800425c7
mov eax, dword [rdi + 0x54]
cmp dword [rdi + 0x50], eax
je 0x1800425cc
mov dil, 1
jmp 0x1800425cf
xor dil, dil
test r15b, r15b
je 0x1800425e8
mov ecx, dword [r10 + 0x84]
test ecx, ecx
js 0x1800425e8
call fcn.18001f030
test al, al
jne 0x1800425fe
test r9b, r9b
je 0x18004260d
mov ecx, dword [r10 + 0x60]
test ecx, ecx
js 0x18004260d
call fcn.18001f030
test al, al
je 0x18004260d
mov r9d, dword [rsp + 0x74]
test r9b, r9b
jne 0x180042612
mov r10b, 1
jmp 0x180042615
mov r9d, dword [rsp + 0x74]
xor r10b, r10b
mov r8, qword [rbp + 0x58]
test r15b, r15b
je 0x180042642
mov ecx, dword [r8 + 0x90]
test ecx, ecx
js 0x180042642
call fcn.18001f030
test al, al
je 0x180042642
test r9b, r9b
jne 0x180042642
cmp byte [rbp - 0x74], r9b
je 0x180042642
mov r9b, 1
jmp 0x18004264a
xor r9b, r9b
test r15b, r15b
je 0x18004265e
mov ecx, dword [r8 + 0x8c]
test ecx, ecx
js 0x18004265e
call fcn.18001f030
test al, al
jne 0x180042676
test bl, bl
je 0x180042688
mov ecx, dword [r8 + 0x90]
test ecx, ecx
js 0x180042688
call fcn.18001f030
test al, al
je 0x180042688
cmp byte [rsp + 0x74], 0
jne 0x180042688
cmp byte [rbp - 0x74], 0
je 0x180042688
mov r8b, 1
jmp 0x18004268b
xor r8b, r8b
mov rbx, qword [rbp + 0x58]
mov ecx, dword [rbx + 0x40]
test ecx, ecx
js 0x1800426fd
call fcn.18001f030
test al, al
je 0x1800426fd
test r11b, r11b
je 0x1800426ab
mov ecx, 0x200004
jmp 0x1800426bb
mov ecx, 0x200000
mov eax, 0x20000c
test sil, sil
cmovne ecx, eax
or ecx, r14d
mov r8d, ecx
mov r15, qword [rsp + 0x58]
mov rcx, r15
lea rdx, [r15 + 0x4c]
call fcn.180040010
mov byte [r15 + 0xe74], 1
mov dword [r15 + 0xe70], 0xbe99999a
mov rcx, qword [0x180059c00]
mov rdi, qword [rsp + 0x68]
mov rsi, rcx
mov qword [rbp + 0x58], rcx
jmp 0x180042f76
mov ecx, dword [rbx + 0x44]
test ecx, ecx
js 0x180042725
call fcn.18001f030
test al, al
je 0x180042725
test r11b, r11b
je 0x180042719
mov ecx, 0x200005
jmp 0x1800426bb
mov ecx, 0x200001
mov eax, 0x20000d
jmp 0x1800426b5
mov ecx, dword [rbx + 0x48]
test ecx, ecx
js 0x1800427c2
call fcn.18001f030
test al, al
je 0x1800427c2
cmp byte [rsp + 0x70], 0
je 0x1800427c2
mov rdi, qword [rsp + 0x68]
mov r15, qword [rsp + 0x58]
cmp byte [rdi + 0x148], 0
je 0x180042781
mov rdx, qword [rbp - 0x80]
xor r8d, r8d
mov rsi, rbx
movss xmm0, dword [rdx + 0x58]
subss xmm0, dword [rdi + 0x1910]
mov dword [rdx + 0x70], r8d
maxss xmm0, xmm12
movss dword [rdx + 0x68], xmm0
jmp 0x180042f76
movzx eax, r11b
lea r8d, [rax*4 + 0x200002]
or r8d, r14d
lea rdx, [r15 + 0x4c]
mov rcx, r15
call fcn.180040010
mov rcx, qword [0x180059c00]
mov qword [rbp + 0x58], rcx
mov rsi, rcx
mov byte [r15 + 0xe74], 1
mov dword [r15 + 0xe70], 0xbe99999a
jmp 0x180042f76
mov ecx, dword [rbx + 0x4c]
test ecx, ecx
js 0x18004282e
call fcn.18001f030
test al, al
je 0x18004282e
cmp byte [rsp + 0x70], 0
je 0x18004282e
mov rdi, qword [rsp + 0x68]
mov r15, qword [rsp + 0x58]
cmp byte [rdi + 0x148], 0
je 0x18004281d
mov rcx, qword [rbp - 0x80]
xor r8d, r8d
movss xmm0, dword [rdi + 0x1910]
mov rsi, rbx
mov rax, qword [rbx + 0x1a18]
addss xmm0, dword [rcx + 0x58]
minss xmm0, dword [rax + 0x60]
mov dword [rcx + 0x70], r8d
movss dword [rcx + 0x68], xmm0
jmp 0x180042f76
movzx eax, r11b
lea r8d, [rax*4 + 0x200003]
jmp 0x18004278d
mov ecx, dword [rbx + 0x58]
mov r11, rbx
test ecx, ecx
js 0x18004286c
call fcn.18001f030
test al, al
je 0x18004286c
mov eax, r14d
mov r8d, 0x200004
or eax, 0x200006
mov rdi, qword [rsp + 0x68]
or r8d, r14d
mov r15, qword [rsp + 0x58]
cmp byte [rdi + 0x148], 0
cmovne r8d, eax
jmp 0x180042790
mov ecx, dword [rbx + 0x5c]
test ecx, ecx
js 0x18004288c
call fcn.18001f030
test al, al
je 0x18004288c
mov eax, r14d
mov r8d, 0x200005
or eax, 0x200007
jmp 0x18004284f
mov ecx, dword [rbx + 0x64]
test ecx, ecx
js 0x1800428b3
call fcn.18001f030
mov ebx, dword [rsp + 0x74]
test al, al
je 0x1800428b7
test bl, bl
jne 0x1800428b7
or r14d, 0x200008
mov r8d, r14d
jmp 0x1800426c1
mov ebx, dword [rsp + 0x74]
mov ecx, dword [r11 + 0x68]
test ecx, ecx
js 0x18004297e
call fcn.18001f030
test al, al
je 0x18004297e
test bl, bl
jne 0x18004297e
mov r15, qword [rsp + 0x58]
mov eax, dword [r15 + 0x54]
cmp dword [r15 + 0x50], eax
jne 0x180042911
test sil, sil
je 0x180042925
lea rdx, [r15 + 0x4c]
mov r8d, 0x60000c
mov rcx, r15
call fcn.180040010
mov byte [r15 + 0xe74], 1
mov dword [r15 + 0xe70], 0xbe99999a
mov rdi, qword [rsp + 0x68]
or r14d, 0x200009
mov r8d, r14d
jmp 0x180042790
test r12b, r12b
je 0x180042911
mov rdi, qword [rsp + 0x68]
cmp byte [rdi + 0x14b], 0
je 0x180042916
cmp byte [rdi + 0x14a], 0
jne 0x180042916
cmp byte [rdi + 0x148], 0
jne 0x180042916
lea rdx, [r15 + 0x4c]
mov r8d, 0x600004
mov rcx, r15
call fcn.180040010
or r14d, 0x200009
mov byte [r15 + 0xe74], 1
mov r8d, r14d
mov dword [r15 + 0xe70], 0xbe99999a
jmp 0x180042790
mov ecx, dword [r11 + 0x70]
test ecx, ecx
js 0x18004298f
call fcn.18001f030
test al, al
jne 0x1800429a0
mov ecx, dword [r11 + 0x78]
test ecx, ecx
js 0x180042a0c
call fcn.18001f030
test al, al
je 0x180042a0c
mov edx, dword [rbp + 0x178]
mov eax, edx
mov rdi, qword [rsp + 0x68]
shr eax, 0xb
and al, 1
cmp byte [rsp + 0x70], 0
je 0x1800429c8
movzx ecx, byte [rdi + 0x148]
test al, al
je 0x1800429d7
test cl, cl
jne 0x1800429db
mov byte [rsp + 0x61], 1
mov byte [rsp + 0x51], 1
jmp 0x180042f6e
test cl, cl
jne 0x1800429c8
test bl, bl
jne 0x180042f6e
lea rcx, [rsp + 0x78]
mov dword [rsp + 0x78], 0xa
call fcn.180041280
test al, al
je 0x180042ad1
mov r15, qword [rsp + 0x58]
mov r8d, dword [rsp + 0x78]
jmp 0x180042790
mov ecx, dword [r11 + 0x74]
test ecx, ecx
js 0x180042a35
call fcn.18001f030
test al, al
je 0x180042a35
mov r15, qword [rsp + 0x58]
mov cl, 1
mov rdi, qword [rsp + 0x68]
mov rsi, r11
mov byte [rsp + 0x61], cl
jmp 0x180042f78
test r9b, r9b
jne 0x180042f12
test r8b, r8b
jne 0x180042f12
test r15b, r15b
je 0x180042a8b
mov ecx, dword [r11 + 0x7c]
test ecx, ecx
js 0x180042a8b
call fcn.18001f030
test al, al
je 0x180042a8b
mov r15, qword [rsp + 0x58]
xor r8d, r8d
mov rdi, qword [rsp + 0x68]
mov eax, dword [r15 + 4]
mov dword [r15 + 0x54], eax
mov dword [r15 + 0x4c], eax
mov dword [r15 + 0x50], r8d
mov byte [r15 + 0x5b], r8b
mov byte [r15 + 0xe74], 1
jmp 0x180042f73
test r13b, r13b
jne 0x180042ce6
test dil, dil
jne 0x180042ce6
test r10b, r10b
je 0x180042f69
mov rax, qword [r11 + 0x100]
test rax, rax
je 0x180042ae9
mov rcx, qword [r11 + 0x110]
call rax
mov rbx, rax
test rax, rax
je 0x180042acc
mov r11, qword [0x180059c00]
jmp 0x180042af0
mov rdi, qword [rsp + 0x68]
mov rcx, qword [0x180059c00]
mov r15, qword [rsp + 0x58]
mov rsi, rcx
mov qword [rbp + 0x58], rcx
jmp 0x180042f76
lea rbx, [0x18004a6b0]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rbx + rax], 0
jne 0x180042af7
test r11, r11
je 0x180042b0c
inc dword [r11 + 0x3bc]
inc eax
movsxd rcx, eax
add rcx, rcx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
xor r12d, r12d
mov qword [rbp + 0x58], rax
mov r14, rax
mov esi, r12d
cmp byte [rbx], r12b
je 0x180042b81
mov r14d, dword [rbp + 0x178]
mov rdi, rax
nop word [rax + rax]
xor r8d, r8d
lea rcx, [rbp - 0x74]
mov rdx, rbx
call fcn.18001a3a0
movsxd rcx, eax
add rbx, rcx
cmp dword [rbp - 0x74], r12d
je 0x180042b7d
mov edx, r14d
lea rcx, [rbp - 0x74]
call fcn.180041280
test al, al
je 0x180042b78
movzx eax, word [rbp - 0x74]
inc esi
mov word [rdi], ax
add rdi, 2
cmp byte [rbx], r12b
jne 0x180042b40
mov r14, qword [rbp + 0x58]
mov r15, qword [rsp + 0x58]
movsxd rax, esi
mov word [r14 + rax*2], r12w
test esi, esi
jle 0x180042cc1
mov r8d, dword [r15 + 0x54]
mov eax, dword [r15 + 0x50]
mov ecx, dword [r15 + 4]
cmp eax, r8d
je 0x180042bd2
mov r9d, eax
cmp eax, ecx
jle 0x180042bb5
mov dword [r15 + 0x50], ecx
mov r9d, ecx
mov edx, r8d
cmp r8d, ecx
jle 0x180042bc3
mov dword [r15 + 0x54], ecx
mov edx, ecx
mov r8d, edx
mov eax, r9d
cmp r9d, edx
jne 0x180042bd2
mov dword [r15 + 0x4c], r9d
mov r10d, dword [r15 + 0x4c]
cmp r10d, ecx
jle 0x180042be2
mov dword [r15 + 0x4c], ecx
mov r10d, ecx
cmp eax, r8d
je 0x180042c13
mov edx, eax
cmp eax, ecx
jle 0x180042bf3
mov dword [r15 + 0x50], ecx
mov edx, ecx
mov r9d, r8d
cmp r8d, ecx
jle 0x180042c02
mov dword [r15 + 0x54], ecx
mov r9d, ecx
mov r8d, r9d
mov eax, edx
cmp edx, r9d
jne 0x180042c13
mov dword [r15 + 0x4c], edx
mov r10d, edx
cmp r10d, ecx
jle 0x180042c1c
mov dword [r15 + 0x4c], ecx
cmp eax, r8d
je 0x180042c5d
lea rdx, [r15 + 0x4c]
mov rcx, r15
jge 0x180042c42
sub r8d, eax
mov r9d, r8d
mov r8d, eax
call fcn.18003fe90
mov eax, dword [r15 + 0x50]
mov dword [r15 + 0x54], eax
jmp 0x180042c55
sub eax, r8d
mov r9d, eax
call fcn.18003fe90
mov eax, dword [r15 + 0x54]
mov dword [r15 + 0x50], eax
mov dword [r15 + 0x4c], eax
mov byte [r15 + 0x5b], r12b
mov edx, dword [r15 + 0x4c]
mov r9d, esi
mov r8, r14
mov rcx, r15
call fcn.18003f970
test al, al
je 0x180042ca1
mov edi, dword [r15 + 0x4c]
lea rcx, [r15 + 0x64]
xor edx, edx
call fcn.180040eb0
test rax, rax
je 0x180042c97
mov dword [rax], edi
mov dword [rax + 4], r12d
mov dword [rax + 8], esi
mov dword [rax + 0xc], 0xffffffff
add dword [r15 + 0x4c], esi
mov byte [r15 + 0x5b], r12b
jmp 0x180042cb9
movzx eax, word [r15 + 0xe62]
test ax, ax
je 0x180042cb9
dec ax
mov word [r15 + 0xe62], ax
mov byte [r15 + 0xe74], 1
test r14, r14
je 0x180042cd8
mov rax, qword [0x180059c00]
test rax, rax
je 0x180042cd8
dec dword [rax + 0x3bc]
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x1800426e5
mov rdi, qword [rsp + 0x68]
mov r15, qword [rsp + 0x58]
cmp qword [rdi + 0x108], 0
je 0x180042e31
mov esi, dword [r15 + 0x54]
mov eax, dword [r15 + 0x50]
cmp eax, esi
je 0x180042d16
mov r14d, esi
cmovge esi, eax
cmovl r14d, eax
jmp 0x180042d20
mov esi, dword [r15 + 4]
xor r8d, r8d
mov r14d, r8d
mov rcx, qword [r15 + 0x18]
mov ebx, 0x80
movsxd rax, esi
xor r15d, r15d
mov edx, r15d
mov edi, 0x800
mov r10d, 0x3ff
mov r12d, 0x2400
mov r11d, 0x2800
lea r9, [rcx + rax*2]
movsxd rax, r14d
lea r8, [rcx + rax*2]
test r9, r9
je 0x180042d5e
cmp r8, r9
jae 0x180042da1
movzx ecx, word [r8]
test cx, cx
je 0x180042da1
add r8, 2
cmp cx, bx
jae 0x180042d74
inc edx
jmp 0x180042d54
cmp cx, di
jae 0x180042d82
mov eax, 2
add edx, eax
jmp 0x180042d54
lea eax, [r12 + rcx]
cmp ax, r10w
mov eax, r15d
jbe 0x180042d9d
add cx, r11w
cmp cx, r10w
setbe al
add eax, 3
add edx, eax
jmp 0x180042d54
mov r11, qword [rbp + 0x58]
lea edi, [rdx + 1]
mov r15, qword [rsp + 0x58]
test r11, r11
je 0x180042db9
inc dword [r11 + 0x3bc]
movsxd rcx, edi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r8, qword [r15 + 0x18]
mov edx, edi
movsxd rcx, esi
mov rbx, rax
lea r9, [r8 + rcx*2]
movsxd rcx, r14d
lea r8, [r8 + rcx*2]
mov rcx, rax
call fcn.18001a540
mov r9, qword [0x180059c00]
mov rax, qword [r9 + 0x108]
test rax, rax
je 0x180042e07
mov rcx, qword [r9 + 0x110]
mov rdx, rbx
call rax
mov r9, qword [0x180059c00]
test rbx, rbx
je 0x180042e18
test r9, r9
je 0x180042e18
dec dword [r9 + 0x3bc]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rdx, qword [0x180059c00]
mov rdi, qword [rsp + 0x68]
mov qword [rbp + 0x58], rdx
test r13b, r13b
je 0x180042f63
mov eax, dword [r15 + 0x54]
cmp dword [r15 + 0x50], eax
jne 0x180042e5b
xor eax, eax
mov byte [r15 + 0x5b], 0
mov dword [r15 + 0x50], eax
mov eax, dword [r15 + 4]
mov dword [r15 + 0x54], eax
mov dword [r15 + 0x4c], eax
mov byte [r15 + 0xe74], 1
mov r8d, dword [r15 + 0x54]
mov eax, dword [r15 + 0x50]
cmp eax, r8d
je 0x180042f63
mov ecx, dword [r15 + 4]
cmp eax, ecx
jle 0x180042e82
mov dword [r15 + 0x50], ecx
mov eax, ecx
cmp r8d, ecx
jle 0x180042e8e
mov dword [r15 + 0x54], ecx
mov r8d, ecx
cmp eax, r8d
jne 0x180042e97
mov dword [r15 + 0x4c], eax
cmp dword [r15 + 0x4c], ecx
jle 0x180042ea1
mov dword [r15 + 0x4c], ecx
cmp eax, r8d
je 0x180042f07
lea rdx, [r15 + 0x4c]
mov rcx, r15
jge 0x180042ede
sub r8d, eax
mov r9d, r8d
mov r8d, eax
call fcn.18003fe90
mov eax, dword [r15 + 0x50]
mov dword [r15 + 0x54], eax
mov dword [r15 + 0x4c], eax
mov rsi, qword [0x180059c00]
mov qword [rbp + 0x58], rsi
mov byte [r15 + 0x5b], 0
jmp 0x180042f76
sub eax, r8d
mov r9d, eax
call fcn.18003fe90
mov eax, dword [r15 + 0x54]
mov dword [r15 + 0x50], eax
mov dword [r15 + 0x4c], eax
mov rsi, qword [0x180059c00]
mov qword [rbp + 0x58], rsi
mov byte [r15 + 0x5b], 0
jmp 0x180042f76
mov rsi, qword [rbp + 0x58]
mov byte [r15 + 0x5b], 0
jmp 0x180042f76
mov r15, qword [rsp + 0x58]
movzx r8d, r9b
mov rcx, r15
xor r8d, 1
add r8d, 0x20000a
lea rdx, [r15 + 0x4c]
call fcn.180040010
mov eax, dword [r15 + 0x4c]
mov rsi, qword [0x180059c00]
mov rdi, qword [rsp + 0x68]
mov dword [r15 + 0x54], eax
mov dword [r15 + 0x50], eax
mov qword [rbp + 0x58], rsi
mov byte [r15 + 0xe74], 1
mov dword [r15 + 0xe70], 0xbe99999a
jmp 0x180042f76
mov rsi, qword [rbp + 0x58]
jmp 0x180042f76
mov rdi, qword [rsp + 0x68]
mov r15, qword [rsp + 0x58]
mov rsi, r11
xor cl, cl
mov eax, dword [r15 + 0x54]
cmp dword [r15 + 0x50], eax
je 0x180042f8d
cmp byte [rsp + 0x50], 0
je 0x180042f8d
mov al, 1
jmp 0x180042f8f
xor al, al
mov edx, dword [rbp - 0x68]
mov r12d, 0x3ff
mov r14d, dword [rbp - 0x70]
or dl, al
mov dword [rbp - 0x68], edx
jmp 0x180042fa7
mov rsi, qword [rbp + 0x58]
cmp dword [rdi + 0x1a60], r14d
jne 0x180043611
xor r11d, r11d
mov qword [rbp - 0x48], r11
mov r13d, r11d
mov dword [rsp + 0x78], r11d
test cl, cl
je 0x180043029
cmp byte [rsp + 0x74], r11b
jne 0x180043007
mov r9, qword [r15 + 0x38]
mov rax, qword [rbp - 0x60]
mov r8, r9
sub r8, rax
nop dword [rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x180042ff3
inc rax
test ecx, ecx
jne 0x180042fe0
test edx, edx
je 0x180043007
mov r13d, dword [r15 + 0x30]
dec r13d
mov qword [rbp - 0x48], r9
mov dword [rsp + 0x78], r13d
mov r9d, dword [rbp + 0x178]
cmp byte [rsp + 0x51], r11b
je 0x18004301b
test r9b, 0x20
jne 0x180043030
mov r12d, dword [rsp + 0x64]
mov r10, qword [rbp - 0x60]
jmp 0x18004353f
mov r9d, dword [rbp + 0x178]
cmp byte [rsp + 0x74], r11b
jne 0x18004309e
mov eax, dword [r15 + 0x10]
mov byte [r15 + 0x40], 1
mov ecx, dword [r15 + 0x24]
lea ebx, [rax*4 + 1]
cmp ebx, ecx
jle 0x18004307e
test ecx, ecx
je 0x18004305e
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x180043063
mov eax, 8
cmp eax, ebx
lea rcx, [r15 + 0x20]
mov edx, ebx
cmovg edx, eax
call fcn.18002b810
mov rsi, qword [0x180059c00]
mov qword [rbp + 0x58], rsi
mov dword [r15 + 0x20], ebx
xor r9d, r9d
mov r8, qword [r15 + 0x18]
mov edx, ebx
mov rcx, qword [r15 + 0x28]
call fcn.18001a540
mov r9d, dword [rbp + 0x178]
xor r11d, r11d
test r9d, 0x1c0
je 0x1800434ea
mov r8d, 0x16
test r9b, 0x40
je 0x1800430d3
mov ecx, dword [rsi + 0x3c]
test ecx, ecx
js 0x1800430d3
call fcn.18001f030
test al, al
je 0x1800430d3
xor esi, esi
mov eax, 0x40
mov r8d, esi
jmp 0x180043130
test r9b, r9b
jns 0x18004311e
mov ecx, dword [rsi + 0x48]
test ecx, ecx
js 0x1800430fb
call fcn.18001f030
test al, al
je 0x1800430fb
mov r11d, 0x80
xor esi, esi
mov eax, r11d
mov r8d, 3
jmp 0x180043136
mov ecx, dword [rsi + 0x4c]
test ecx, ecx
js 0x18004311e
call fcn.18001f030
test al, al
je 0x18004311e
mov r11d, 0x80
xor esi, esi
mov eax, r11d
mov r8d, 4
jmp 0x180043136
mov ecx, 0x100
mov esi, 0
test ecx, r9d
mov eax, esi
cmovne eax, ecx
mov r11d, 0x80
test eax, eax
je 0x1800434f1
mov dword [rbp - 0x18], eax
mov ebx, esi
mov rax, qword [r15 + 0x28]
mov edi, 0x800
mov qword [rbp], rax
mov r13d, 0x2400
mov eax, dword [r15 + 8]
mov dword [rbp + 8], eax
mov eax, dword [r15 + 0x44]
mov dword [rbp + 0xc], eax
movsxd rax, dword [r15 + 0x4c]
mov dword [rbp - 0x14], r9d
mov r9, qword [r15 + 0x18]
mov r15d, 0x2800
mov dword [rbp - 4], r8d
mov rdx, r9
mov dword [rbp - 8], esi
mov qword [rbp + 0x11], rsi
lea r8, [r9 + rax*2]
mov dword [rbp + 0x19], esi
mov word [rbp + 0x1d], si
mov byte [rbp + 0x1f], 0
mov qword [rbp - 0x10], rsi
mov byte [rbp + 0x10], 0
nop dword [rax + rax]
test r8, r8
je 0x1800431aa
cmp rdx, r8
jae 0x1800431ec
movzx ecx, word [rdx]
test cx, cx
je 0x1800431ec
add rdx, 2
cmp cx, r11w
jae 0x1800431c0
inc ebx
jmp 0x1800431a0
cmp cx, di
jae 0x1800431ce
mov eax, 2
add ebx, eax
jmp 0x1800431a0
lea eax, [rcx + r13]
cmp ax, r12w
mov eax, esi
jbe 0x1800431e8
add cx, r15w
cmp cx, r12w
setbe al
add eax, 3
add ebx, eax
jmp 0x1800431a0
mov r15, qword [rsp + 0x58]
mov rdx, r9
mov dword [rbp - 0x74], ebx
mov r12d, esi
mov dword [rbp + 0x14], ebx
mov r10d, 0x3ff
movsxd rax, dword [r15 + 0x50]
lea r8, [r9 + rax*2]
mov r9d, 0x2800
test r8, r8
je 0x18004321b
cmp rdx, r8
jae 0x180043260
movzx ecx, word [rdx]
test cx, cx
je 0x180043260
add rdx, 2
cmp cx, r11w
jae 0x180043232
inc r12d
jmp 0x180043211
cmp cx, di
jae 0x180043241
mov eax, 2
add r12d, eax
jmp 0x180043211
lea eax, [rcx + r13]
cmp ax, r10w
mov eax, esi
jbe 0x18004325b
add cx, r9w
cmp cx, r10w
setbe al
add eax, 3
add r12d, eax
jmp 0x180043211
mov r15, qword [rsp + 0x58]
mov ebx, 0x2800
mov dword [rbp + 0x18], r12d
movsxd rax, dword [r15 + 0x54]
mov r9, qword [r15 + 0x18]
mov r15d, esi
lea rdx, [r9 + rax*2]
nop dword [rax]
test rdx, rdx
je 0x18004328a
cmp r9, rdx
jae 0x1800432cf
movzx ecx, word [r9]
test cx, cx
je 0x1800432cf
add r9, 2
cmp cx, r11w
jae 0x1800432a2
inc r15d
jmp 0x180043280
cmp cx, di
jae 0x1800432b1
mov eax, 2
add r15d, eax
jmp 0x180043280
lea eax, [rcx + r13]
cmp ax, r10w
mov eax, esi
jbe 0x1800432ca
add cx, bx
cmp cx, r10w
setbe al
add eax, 3
add r15d, eax
jmp 0x180043280
lea rcx, [rbp - 0x18]
mov dword [rbp + 0x1c], r15d
call rsi
movsxd rax, dword [rbp + 0x14]
mov r14, qword [rbp]
mov r13d, dword [rsp + 0x78]
cmp eax, dword [rbp - 0x74]
je 0x18004333b
lea rdi, [r14 + rax]
mov rbx, r14
test rdi, rdi
je 0x1800432fc
cmp rbx, rdi
jae 0x18004332a
cmp byte [rbx], 0
je 0x18004332a
mov r8, rdi
lea rcx, [rbp - 0x78]
mov rdx, rbx
call fcn.18001a3a0
movsxd rcx, eax
mov eax, dword [rbp - 0x78]
add rbx, rcx
test eax, eax
je 0x18004332a
mov ecx, 0xffff
cmp eax, ecx
ja 0x1800432f2
inc esi
jmp 0x1800432f2
mov rax, qword [rsp + 0x58]
mov dword [rax + 0x4c], esi
xor esi, esi
mov byte [rax + 0xe74], 1
movsxd rax, dword [rbp + 0x18]
cmp eax, r12d
je 0x180043390
lea rdi, [r14 + rax]
mov rbx, r14
nop dword [rax + rax]
test rdi, rdi
je 0x18004335a
cmp rbx, rdi
jae 0x180043388
cmp byte [rbx], 0
je 0x180043388
mov r8, rdi
lea rcx, [rbp - 0x78]
mov rdx, rbx
call fcn.18001a3a0
movsxd rcx, eax
mov eax, dword [rbp - 0x78]
add rbx, rcx
test eax, eax
je 0x180043388
mov ecx, 0xffff
cmp eax, ecx
ja 0x180043350
inc esi
jmp 0x180043350
mov rax, qword [rsp + 0x58]
mov dword [rax + 0x50], esi
movsxd rax, dword [rbp + 0x1c]
cmp eax, r15d
je 0x1800433e7
lea rdi, [r14 + rax]
mov rbx, r14
xor eax, eax
mov esi, eax
test rdi, rdi
je 0x1800433ae
cmp rbx, rdi
jae 0x1800433dc
cmp byte [rbx], 0
je 0x1800433dc
mov r8, rdi
lea rcx, [rbp - 0x78]
mov rdx, rbx
call fcn.18001a3a0
movsxd rcx, eax
mov eax, dword [rbp - 0x78]
add rbx, rcx
test eax, eax
je 0x1800433dc
mov ecx, 0xffff
cmp eax, ecx
ja 0x1800433a4
inc esi
jmp 0x1800433a4
mov r15, qword [rsp + 0x58]
mov dword [r15 + 0x54], esi
jmp 0x1800433ec
mov r15, qword [rsp + 0x58]
cmp byte [rbp + 0x10], 0
mov r12d, dword [rsp + 0x64]
je 0x1800434d2
mov eax, dword [rbp + 8]
cmp eax, r12d
jle 0x180043446
cmp byte [rbp - 0x50], 0
je 0x180043446
mov ebx, dword [r15 + 0x10]
mov ecx, dword [r15 + 0x14]
sub ebx, r12d
add ebx, eax
cmp ebx, ecx
jle 0x180043442
test ecx, ecx
je 0x180043429
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x18004342e
mov eax, 8
cmp eax, ebx
lea rcx, [r15 + 0x10]
mov edx, ebx
cmovg edx, eax
call fcn.18002b8a0
mov r14, qword [rbp]
mov dword [r15 + 0x10], ebx
mov rsi, qword [r15 + 0x18]
movsxd rdi, dword [r15 + 0x10]
mov rbx, rsi
dec rdi
lea rdi, [rsi + rdi*2]
cmp rsi, rdi
jae 0x180043497
nop dword [rax]
cmp byte [r14], 0
je 0x180043497
xor r8d, r8d
lea rcx, [rbp - 0x78]
mov rdx, r14
call fcn.18001a3a0
movsxd rcx, eax
mov eax, dword [rbp - 0x78]
add r14, rcx
test eax, eax
je 0x180043497
mov ecx, 0xffff
cmp eax, ecx
ja 0x180043492
mov word [rbx], ax
add rbx, 2
cmp rbx, rdi
jb 0x180043460
mov r14d, dword [rbp - 0x70]
xor r11d, r11d
mov r9d, dword [rbp + 0x178]
mov word [rbx], r11w
sub rbx, rsi
mov rsi, qword [0x180059c00]
mov eax, dword [rbp + 8]
sar rbx, 1
mov dword [r15 + 4], ebx
mov dword [r15 + 8], eax
mov dword [r15 + 0xe70], 0xbe99999a
mov qword [rbp + 0x58], rsi
jmp 0x1800434f9
mov rsi, qword [0x180059c00]
mov r14d, dword [rbp - 0x70]
mov r9d, dword [rbp + 0x178]
mov qword [rbp + 0x58], rsi
jmp 0x1800434f6
mov r12d, dword [rsp + 0x64]
jmp 0x1800434f9
mov r12d, dword [rsp + 0x64]
xor r11d, r11d
cmp byte [rsp + 0x74], 0
mov r10, qword [rbp - 0x60]
jne 0x18004353f
mov r9, qword [r15 + 0x28]
mov r8, r10
mov rax, r9
sub r8, r9
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x180043524
inc rax
test ecx, ecx
jne 0x180043511
test edx, edx
je 0x180043538
mov r13d, dword [r15 + 8]
mov rdi, r9
mov r9d, dword [rbp + 0x178]
jmp 0x180043543
mov r9d, dword [rbp + 0x178]
mov rdi, qword [rbp - 0x48]
test rdi, rdi
je 0x1800435f3
mov ecx, 0x20
cmp r12d, r13d
je 0x1800435b5
cmp byte [rbp - 0x50], 0
je 0x1800435b5
lea eax, [r13 + 1]
mov qword [rbp + 0x30], r11
cmp eax, ecx
mov dword [rbp + 0x20], 0x40000
xorps xmm0, xmm0
mov dword [rbp + 0x24], r9d
cmovle eax, ecx
mov qword [rbp + 0x38], r10
lea rcx, [rbp + 0x20]
mov dword [rbp + 0x44], eax
movdqu xmmword [rbp + 0x48], xmm0
mov dword [rbp + 0x40], r13d
mov qword [rbp + 0x28], r11
call r11
mov ecx, dword [rbp + 0x44]
mov r10, qword [rbp + 0x38]
mov rsi, qword [0x180059c00]
mov qword [rbp - 0x60], r10
lea r13d, [rcx - 1]
mov qword [rbp + 0x58], rsi
cmp dword [rbp + 0x40], r13d
cmovl r13d, dword [rbp + 0x40]
lea eax, [r13 + 1]
cmp eax, ecx
cmovl ecx, eax
movsxd rbx, ecx
cmp rbx, 1
jb 0x1800435ee
jbe 0x1800435e8
lea r8, [rbx - 1]
mov rdx, rdi
mov rcx, r10
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov rsi, qword [0x180059c00]
mov r10, qword [rbp - 0x60]
mov qword [rbp + 0x58], rsi
mov byte [rbx + r10 - 1], 0
mov byte [rsp + 0x7c], 1
mov rdi, qword [rsp + 0x68]
xor ebx, ebx
mov dword [r15 + 0xe78], ebx
mov qword [r15 + 0xe80], rbx
mov qword [r15 + 0xe88], rbx
jmp 0x180043613
xor ebx, ebx
cmp byte [rsp + 0x61], 0
mov r13, qword [rbp + 0x58]
je 0x18004367f
cmp dword [rdi + 0x1a60], r14d
jne 0x18004367f
mov ecx, dword [r13 + 0x1a60]
test ecx, ecx
setne al
mov byte [r13 + 0x1a6c], al
test ecx, ecx
je 0x18004364f
mov dword [r13 + 0x1a68], ebx
mov word [r13 + 0x1a6e], 0
mov dword [r13 + 0x1a60], ebx
mov byte [r13 + 0x1a6d], 0
mov qword [r13 + 0x1a90], rbx
mov byte [r13 + 0x1a70], 0
mov qword [r13 + 0x1a74], 0
mov qword [r13 + 0x1a80], rbx
mov r11d, dword [rsp + 0x70]
movaps xmmword [rsp + 0x1a0], xmm13
movaps xmmword [rsp + 0x190], xmm14
test r11b, r11b
jne 0x180043767
mov r8d, 1
lea rcx, [rbp - 0x28]
mov edx, r14d
call fcn.18001b470
mov rax, qword [0x180059c00]
lea rcx, [rbp + 0x68]
movups xmm0, xmmword [rax + 0x1678]
movups xmmword [rbp + 0x68], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x1558]
movss dword [rbp + 0x74], xmm0
call fcn.18001a680
movss xmm0, dword [rdi + 0x1598]
mov r8d, eax
mov rdx, qword [rbp - 0x20]
mov r9b, 1
movss dword [rsp + 0x20], xmm0
movaps xmm0, xmm6
unpcklps xmm0, xmm10
movq rcx, xmm0
call fcn.18001ad70
mov r13, qword [0x180059c00]
movaps xmm14, xmm6
mov r11d, dword [rsp + 0x70]
addss xmm14, xmm9
mov r8, qword [rbp - 0x80]
movaps xmm12, xmm10
addss xmm12, xmm7
mov qword [rbp + 0x58], r13
movaps xmm8, xmm10
movaps xmm13, xmm6
addss xmm8, dword [rdi + 0x1594]
addss xmm13, dword [rdi + 0x1590]
movss dword [rbp + 0x70], xmm14
movss dword [rbp + 0x74], xmm12
movss dword [rbp - 0x78], xmm14
movss dword [rsp + 0x64], xmm8
movss dword [rbp - 0x70], xmm12
jmp 0x1800437c8
mov r8, qword [rbp - 0x80]
movaps xmm5, xmm6
addss xmm5, xmm9
movaps xmm4, xmm7
addss xmm4, xmm10
movss xmm0, dword [r8 + 0xd4]
movss xmm1, dword [r8 + 0xd0]
unpcklps xmm1, xmm0
movaps xmm14, xmm5
movaps xmm2, xmm1
movsd qword [rbp - 0x48], xmm1
movss xmm13, dword [rbp - 0x48]
movaps xmm12, xmm4
shufps xmm2, xmm2, 0x55
movss dword [rsp + 0x64], xmm2
movaps xmm8, xmm2
movss dword [rbp - 0x78], xmm5
movss dword [rbp + 0x70], xmm5
movss dword [rbp - 0x70], xmm4
movss dword [rbp + 0x74], xmm4
cmp byte [rsp + 0x62], 0
xorps xmm5, xmm5
xorps xmm15, xmm15
movss dword [rbp - 0x74], xmm5
movss dword [rbp - 0x50], xmm15
movss dword [rbp + 0x6c], xmm10
movss dword [rbp + 0x68], xmm6
je 0x1800437f6
mov r12, qword [r15 + 0x28]
mov qword [rbp - 0x60], r12
jmp 0x1800437fa
mov r12, qword [rbp - 0x60]
movzx eax, byte [rsp + 0x50]
mov ecx, dword [rbp - 0x68]
test al, al
jne 0x1800439f2
test cl, cl
jne 0x1800439f2
test r11b, r11b
je 0x180043872
movzx edx, byte [r12]
lea r14, [r12 + 1]
mov ecx, ebx
test dl, dl
je 0x180043846
nop word [rax + rax]
cmp dl, 0xa
lea eax, [rcx + 1]
movzx edx, byte [r14]
cmovne eax, ecx
inc r14
mov ecx, eax
test dl, dl
jne 0x180043830
movzx eax, byte [r14 - 1]
dec r14
cmp al, 0xa
je 0x180043858
cmp al, 0xd
je 0x180043858
inc ecx
movd xmm15, ecx
cvtdq2ps xmm15, xmm15
movss dword [rbp - 0x74], xmm9
mulss xmm15, dword [rdi + 0x1910]
jmp 0x1800438af
cmp dword [rdi + 0x1a60], r14d
jne 0x180043881
movsxd r14, dword [r15 + 8]
jmp 0x18004389a
mov r14, 0xffffffffffffffff
nop dword [rax + rax]
inc r14
cmp byte [r12 + r14], 0
jne 0x180043890
add r14, r12
mov rax, r14
sub rax, r12
cmp rax, 0x200000
jge 0x1800442e1
movups xmm0, xmmword [r13 + 0x1608]
lea rcx, [rbp - 0x28]
movups xmmword [rbp - 0x28], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [r13 + 0x1558]
movss dword [rbp - 0x1c], xmm0
call fcn.18001a680
mov r10, qword [r8 + 0x2a8]
test r11b, r11b
movss xmm2, dword [rdi + 0x1910]
lea r8, [rbp + 0x68]
mov r11, qword [rdi + 0x1908]
cmovne r8, rbx
mov r9d, eax
mov rdx, r14
test eax, 0xff000000
je 0x18004428a
test r14, r14
jne 0x180043921
mov rdx, 0xffffffffffffffff
inc rdx
cmp byte [r12 + rdx], 0
jne 0x180043914
add rdx, r12
cmp r12, rdx
je 0x18004428a
test r11, r11
jne 0x180043937
mov rax, qword [r10 + 0x38]
mov r11, qword [rax + 8]
xorps xmm12, xmm12
ucomiss xmm2, xmm12
jp 0x18004394c
jne 0x18004394c
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 [rbp - 0x28], xmm0
test r8, r8
je 0x1800439a4
movss xmm0, dword [rbp - 0x28]
movss xmm1, dword [rbp - 0x24]
maxss xmm0, dword [r8]
maxss xmm1, dword [r8 + 4]
movss dword [rbp - 0x28], xmm0
movss xmm0, dword [rbp - 0x20]
minss xmm0, dword [r8 + 8]
movss dword [rbp - 0x24], xmm1
movss xmm1, dword [rbp - 0x1c]
minss xmm1, dword [r8 + 0xc]
movss dword [rbp - 0x20], xmm0
movss dword [rbp - 0x1c], xmm1
setne al
movaps xmm0, xmm13
mov byte [rsp + 0x48], al
mov rcx, r11
movss dword [rsp + 0x40], xmm12
lea rax, [rbp - 0x28]
mov qword [rsp + 0x38], rdx
mov rdx, r10
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rax
unpcklps xmm0, xmm8
mov dword [rsp + 0x20], r9d
movq r9, xmm0
call fcn.180038a50
mov r13, qword [0x180059c00]
mov qword [rbp + 0x58], r13
jmp 0x18004429c
movsxd r14, dword [r15 + 8]
xor r10d, r10d
mov rsi, qword [r15 + 0x18]
add r14, r12
mov r8d, 0xfffffc18
xorps xmm7, xmm7
xorps xmm6, xmm6
mov r9, rbx
mov edi, r8d
mov edx, r10d
test al, al
je 0x180043a2c
movsxd rax, dword [r15 + 0x4c]
mov edx, 1
mov r8d, 0xffffffff
lea r9, [rsi + rax*2]
test cl, cl
je 0x180043a4b
mov ecx, dword [r15 + 0x54]
mov edi, 0xffffffff
cmp dword [r15 + 0x50], ecx
cmovl ecx, dword [r15 + 0x50]
inc edx
movsxd rax, ecx
lea rbx, [rsi + rax*2]
movzx ecx, word [rsi]
movzx eax, r11b
mov r11d, r10d
add edx, eax
mov rax, rsi
test cx, cx
je 0x180043a9d
nop
cmp cx, 0xa
jne 0x180043a90
inc r11d
cmp r8d, 0xffffffff
jne 0x180043a7d
cmp rax, r9
jb 0x180043a7d
dec edx
mov r8d, r11d
test edx, edx
jle 0x180043a9d
cmp edi, 0xffffffff
jne 0x180043a90
cmp rax, rbx
jb 0x180043a90
dec edx
mov edi, r11d
test edx, edx
jle 0x180043a9d
movzx ecx, word [rax + 2]
add rax, 2
test cx, cx
jne 0x180043a60
inc r11d
mov rdx, r9
cmp r8d, 0xffffffff
mov r10d, r11d
cmovne r10d, r8d
cmp edi, 0xffffffff
cmove edi, r11d
cmp r9, rsi
jbe 0x180043ad3
nop word [rax + rax]
cmp word [rdx - 2], 0xa
lea rax, [rdx - 2]
je 0x180043ad3
mov rdx, rax
cmp rax, rsi
ja 0x180043ac0
mov r8, qword [r13 + 0x1908]
movaps xmm10, xmm5
movss xmm2, dword [r13 + 0x1910]
movaps xmm1, xmm5
movss dword [rsp + 0x78], xmm5
divss xmm2, dword [r8 + 0x14]
cmp rdx, r9
jae 0x180043b55
nop dword [rax + rax]
movzx ecx, word [rdx]
add rdx, 2
cmp ecx, 0xa
jne 0x180043b16
maxss xmm10, xmm1
movaps xmm1, xmm5
jmp 0x180043b39
cmp ecx, 0xd
je 0x180043b39
cmp ecx, dword [r8]
jge 0x180043b2b
mov rax, qword [r8 + 8]
movss xmm0, dword [rax + rcx*4]
jmp 0x180043b31
movss xmm0, dword [r8 + 0x10]
mulss xmm0, xmm2
addss xmm1, xmm0
cmp rdx, r9
jb 0x180043b00
comiss xmm1, xmm10
movss dword [rsp + 0x78], xmm10
jbe 0x180043b55
movss dword [rsp + 0x78], xmm1
movaps xmm10, xmm1
mov r12, qword [rsp + 0x68]
movd xmm11, r10d
cvtdq2ps xmm11, xmm11
movss xmm0, dword [r12 + 0x1910]
mulss xmm11, xmm0
movss dword [rbp - 0x48], xmm11
test edi, edi
js 0x180043c1a
mov rdx, rbx
cmp rbx, rsi
jbe 0x180043ba3
nop dword [rax + rax]
cmp word [rdx - 2], 0xa
lea rax, [rdx - 2]
je 0x180043ba3
mov rdx, rax
cmp rax, rsi
ja 0x180043b90
movss xmm2, dword [r13 + 0x1910]
movaps xmm6, xmm5
movaps xmm1, xmm5
divss xmm2, dword [r8 + 0x14]
cmp rdx, rbx
jae 0x180043c05
nop dword [rax]
movzx ecx, word [rdx]
add rdx, 2
cmp ecx, 0xa
jne 0x180043bd5
maxss xmm6, xmm1
movaps xmm1, xmm5
jmp 0x180043bf8
cmp ecx, 0xd
je 0x180043bf8
cmp ecx, dword [r8]
jge 0x180043bea
mov rax, qword [r8 + 8]
movss xmm0, dword [rax + rcx*4]
jmp 0x180043bf0
movss xmm0, dword [r8 + 0x10]
mulss xmm0, xmm2
addss xmm1, xmm0
cmp rdx, rbx
jb 0x180043bc0
comiss xmm1, xmm6
jbe 0x180043c05
movaps xmm6, xmm1
movss xmm0, dword [r12 + 0x1910]
movd xmm7, edi
cvtdq2ps xmm7, xmm7
mulss xmm7, xmm0
mov r9d, dword [rsp + 0x70]
test r9b, r9b
je 0x180043c3e
movd xmm15, r11d
cvtdq2ps xmm15, xmm15
movss dword [rbp - 0x74], xmm9
mulss xmm15, xmm0
movss dword [rbp - 0x50], xmm15
movzx r8d, byte [rsp + 0x50]
test r8b, r8b
je 0x180043d0a
cmp byte [r15 + 0xe74], 0
je 0x180043d0a
test dword [rbp + 0x178], 0x1000
jne 0x180043cb1
movss xmm2, dword [r15 + 0x48]
movaps xmm0, xmm9
comiss xmm2, xmm10
mulss xmm0, dword [0x180051b28]
movaps xmm1, xmm10
jbe 0x180043c90
subss xmm1, xmm0
movaps xmm0, xmm5
maxss xmm0, xmm1
jmp 0x180043c9e
subss xmm1, xmm9
comiss xmm1, xmm2
jb 0x180043cb7
addss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [r15 + 0x48], xmm0
jmp 0x180043cb7
xor eax, eax
mov dword [r15 + 0x48], eax
test r9b, r9b
je 0x180043d02
mov rax, qword [rbp - 0x80]
movaps xmm2, xmm11
subss xmm2, dword [r12 + 0x1910]
movss xmm1, dword [rax + 0x58]
comiss xmm1, xmm2
jbe 0x180043ce1
movaps xmm0, xmm5
maxss xmm0, xmm2
jmp 0x180043cee
movaps xmm0, xmm11
subss xmm0, dword [rbp - 0x30]
maxss xmm0, xmm1
subss xmm1, xmm0
movss dword [rax + 0x58], xmm0
addss xmm1, xmm8
movss dword [rsp + 0x64], xmm1
mov byte [r15 + 0xe74], 0
cmp byte [rbp - 0x68], 0
movss xmm9, dword [r15 + 0x48]
je 0x180043f96
mov edx, dword [r15 + 0x54]
mov eax, edx
mov ecx, dword [r15 + 0x50]
cmp ecx, edx
cmovl eax, ecx
cmovge edx, ecx
cdqe
lea rbx, [rsi + rax*2]
movsxd rax, edx
lea rdi, [rsi + rax*2]
test r8b, r8b
je 0x180043d48
movss xmm1, dword [0x180051b68]
jmp 0x180043d50
movss xmm1, dword [0x180051b40]
movups xmm0, xmmword [r13 + 0x18a8]
lea rcx, [rbp - 0x28]
mulss xmm1, dword [r13 + 0x1558]
movups xmmword [rbp - 0x28], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, xmm1
movss dword [rbp - 0x1c], xmm0
call fcn.18001a680
mov esi, eax
xorps xmm5, xmm5
test r9b, r9b
je 0x180043d90
movss dword [rbp - 0x38], xmm5
xorps xmm8, xmm8
jmp 0x180043d99
movss xmm8, dword [0x180051b8c]
movaps xmm4, xmm13
addss xmm4, xmm6
movss xmm6, dword [rsp + 0x64]
addss xmm6, xmm7
movss xmm7, dword [0x180051b3c]
subss xmm4, xmm9
subss xmm6, xmm5
cmp rbx, rdi
jae 0x180043f9e
movss xmm11, dword [rbp - 0x3c]
movss xmm15, dword [rbp - 0x38]
movss xmm10, dword [rbp - 0x58]
mov r15, qword [rbp - 0x80]
nop dword [rax + rax]
movaps xmm0, xmm12
addss xmm0, dword [r12 + 0x1910]
comiss xmm6, xmm0
ja 0x180043f73
comiss xmm10, xmm6
jbe 0x180043e2b
cmp rbx, rdi
jae 0x180043f57
nop word [rax + rax]
movzx eax, word [rbx]
add rbx, 2
cmp ax, 0xa
je 0x180043f57
cmp rbx, rdi
jb 0x180043e10
jmp 0x180043f57
mov rdx, qword [r13 + 0x1908]
movaps xmm3, xmm5
movss xmm2, dword [r13 + 0x1910]
movaps xmm1, xmm5
divss xmm2, dword [rdx + 0x14]
cmp rbx, rdi
jae 0x180043e8e
nop dword [rax + rax]
movzx ecx, word [rbx]
add rbx, 2
cmp ecx, 0xa
je 0x180043e84
cmp ecx, 0xd
je 0x180043e7d
cmp ecx, dword [rdx]
jge 0x180043e70
mov rax, qword [rdx + 8]
movss xmm0, dword [rax + rcx*4]
jmp 0x180043e75
movss xmm0, dword [rdx + 0x10]
mulss xmm0, xmm2
addss xmm1, xmm0
cmp rbx, rdi
jb 0x180043e50
jmp 0x180043e8e
movaps xmm3, xmm5
maxss xmm3, xmm1
movaps xmm1, xmm5
maxss xmm1, xmm3
comiss xmm5, xmm1
jb 0x180043ec6
mov rax, qword [r12 + 0x1908]
cmp dword [rax], 0x20
jle 0x180043eb2
mov rax, qword [rax + 8]
movss xmm0, dword [rax + 0x80]
jmp 0x180043eb7
movss xmm0, dword [rax + 0x10]
mulss xmm0, xmm7
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm1, xmm4
movaps xmm2, xmm15
subss xmm2, dword [r12 + 0x1910]
movaps xmm0, xmm8
addss xmm4, xmm5
addss xmm0, xmm6
minss xmm1, xmm14
addss xmm2, xmm6
maxss xmm4, xmm11
minss xmm0, xmm12
movss dword [rbp - 0x20], xmm1
maxss xmm2, xmm10
movss dword [rbp - 0x28], xmm4
comiss xmm0, xmm10
movss dword [rbp - 0x24], xmm2
movss dword [rbp - 0x1c], xmm0
jbe 0x180043f57
comiss xmm12, xmm2
jbe 0x180043f57
comiss xmm1, xmm11
jbe 0x180043f57
comiss xmm14, xmm4
jbe 0x180043f57
mov rcx, qword [r15 + 0x2a8]
lea r8, [rbp - 0x20]
mov dword [rsp + 0x28], 0xf
lea rdx, [rbp - 0x28]
mov r9d, esi
movss dword [rsp + 0x20], xmm5
call fcn.1800353b0
mov r13, qword [0x180059c00]
xorps xmm5, xmm5
movaps xmm4, xmm13
subss xmm4, xmm9
addss xmm6, dword [r12 + 0x1910]
cmp rbx, rdi
jb 0x180043de0
movss xmm10, dword [rsp + 0x78]
movss xmm11, dword [rbp - 0x48]
movss xmm15, dword [rbp - 0x50]
mov r15, qword [rsp + 0x58]
mov r9d, dword [rsp + 0x70]
mov qword [rbp + 0x58], r13
jmp 0x180043f9e
movss xmm7, dword [0x180051b3c]
mov r12, qword [rbp - 0x60]
test r9b, r9b
jne 0x180043fb9
mov rax, r14
sub rax, r12
cmp rax, 0x200000
jge 0x180044121
movups xmm0, xmmword [r13 + 0x1608]
lea rcx, [rbp - 0x28]
movups xmmword [rbp - 0x28], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [r13 + 0x1558]
movss dword [rbp - 0x1c], xmm0
call fcn.18001a680
cmp byte [rsp + 0x70], 0
lea r8, [rbp + 0x68]
mov rdi, qword [rsp + 0x68]
mov r9d, eax
mov rbx, qword [rbp - 0x80]
mov eax, 0
movss xmm6, dword [rsp + 0x64]
cmovne r8, rax
movaps xmm3, xmm13
movaps xmm4, xmm6
movss xmm2, dword [rdi + 0x1910]
xorps xmm12, xmm12
mov r10, qword [rbx + 0x2a8]
mov rdx, r14
mov r11, qword [rdi + 0x1908]
subss xmm3, xmm9
subss xmm4, xmm12
test r9d, 0xff000000
je 0x180044134
test r14, r14
jne 0x18004405c
mov rdx, 0xffffffffffffffff
nop dword [rax + rax]
inc rdx
cmp byte [r12 + rdx], al
jne 0x180044050
add rdx, r12
cmp r12, rdx
je 0x180044134
test r11, r11
jne 0x180044072
mov rax, qword [r10 + 0x38]
mov r11, qword [rax + 8]
ucomiss xmm2, xmm12
jp 0x180044083
jne 0x180044083
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 [rbp - 0x28], xmm0
test r8, r8
je 0x1800440db
movss xmm0, dword [rbp - 0x28]
movss xmm1, dword [rbp - 0x24]
maxss xmm0, dword [r8]
maxss xmm1, dword [r8 + 4]
movss dword [rbp - 0x28], xmm0
movss xmm0, dword [rbp - 0x20]
minss xmm0, dword [r8 + 8]
movss dword [rbp - 0x24], xmm1
movss xmm1, dword [rbp - 0x1c]
minss xmm1, dword [r8 + 0xc]
movss dword [rbp - 0x20], xmm0
movss dword [rbp - 0x1c], xmm1
setne al
unpcklps xmm3, xmm4
mov byte [rsp + 0x48], al
mov rcx, r11
movss dword [rsp + 0x40], xmm12
lea rax, [rbp - 0x28]
mov qword [rsp + 0x38], rdx
mov rdx, r10
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r9d
movq r9, xmm3
call fcn.180038a50
mov r13, qword [0x180059c00]
mov qword [rbp + 0x58], r13
jmp 0x180044134
movss xmm6, dword [rsp + 0x64]
xorps xmm12, xmm12
mov rdi, qword [rsp + 0x68]
mov rbx, qword [rbp - 0x80]
cmp byte [rsp + 0x50], 0
je 0x180044290
movss xmm0, dword [rdi + 0x18]
addss xmm0, dword [r15 + 0xe70]
movss dword [r15 + 0xe70], xmm0
cmp byte [rdi + 0xca], 0
je 0x180044183
comiss xmm12, xmm0
jae 0x180044183
movss xmm1, dword [0x180051b6c]
call sub.api_ms_win_crt_math_l1_1_0.dll_fmodf
movss xmm1, dword [0x180051b5c]
comiss xmm1, xmm0
jae 0x180044183
xor al, al
jmp 0x180044185
mov al, 1
addss xmm6, xmm11
addss xmm13, xmm10
movss xmm10, dword [rbp - 0x58]
subss xmm6, xmm12
subss xmm13, xmm9
movaps xmm0, xmm6
movaps xmm1, xmm6
movss dword [rbp + 0x68], xmm13
movaps xmm2, xmm13
subss xmm0, dword [rdi + 0x1910]
subss xmm1, dword [0x180051b78]
addss xmm0, xmm7
movss xmm7, dword [0x180051b68]
movss dword [rbp + 0x74], xmm1
addss xmm2, xmm7
movss dword [rbp + 0x6c], xmm0
movss dword [rbp + 0x70], xmm2
test al, al
je 0x18004425d
comiss xmm1, xmm10
jbe 0x18004425d
movss xmm3, dword [rbp - 0x70]
comiss xmm3, xmm0
jbe 0x18004425d
comiss xmm2, dword [rbp - 0x3c]
jbe 0x18004425d
movss xmm0, dword [rbp - 0x78]
comiss xmm0, xmm13
jbe 0x18004425d
movups xmm0, xmmword [r13 + 0x1608]
lea rcx, [rbp - 0x28]
movss dword [rbp - 0x80], xmm13
movups xmmword [rbp - 0x28], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [r13 + 0x1558]
movss dword [rbp - 0x7c], xmm1
movss dword [rbp - 0x1c], xmm0
call fcn.18001a680
mov rcx, qword [rbx + 0x2a8]
lea rdx, [rbp + 0x68]
mov r9d, eax
movss dword [rsp + 0x20], xmm7
lea r8, [rbp - 0x80]
call fcn.180035140
mov r13, qword [0x180059c00]
mov qword [rbp + 0x58], r13
cmp byte [rsp + 0x74], 0
movss xmm11, dword [rbp - 0x40]
jne 0x18004429c
subss xmm6, dword [rdi + 0x1910]
subss xmm13, xmm7
movss dword [rdi + 0x2ee8], xmm6
movss dword [rdi + 0x2ee4], xmm13
jmp 0x18004429c
xorps xmm12, xmm12
jmp 0x18004429c
movss xmm10, dword [rbp - 0x58]
movss xmm11, dword [rbp - 0x40]
cmp byte [rsp + 0x70], 0
je 0x1800442e5
movss xmm0, dword [rbp - 0x74]
lea rcx, [rbp - 0x80]
addss xmm15, dword [rdi + 0x1910]
addss xmm0, xmm12
movss dword [rbp - 0x7c], xmm15
movss dword [rbp - 0x80], xmm0
call fcn.18003dd70
call fcn.18001f350
call fcn.180024fe0
mov r13, qword [0x180059c00]
mov qword [rbp + 0x58], r13
jmp 0x1800442e5
xorps xmm12, xmm12
mov eax, dword [rbp - 0x54]
movaps xmm15, xmmword [rsp + 0x180]
movaps xmm14, xmmword [rsp + 0x190]
movaps xmm13, xmmword [rsp + 0x1a0]
test al, al
je 0x18004431a
call fcn.1800249b0
mov r13, qword [0x180059c00]
mov eax, dword [rbp - 0x54]
mov qword [rbp + 0x58], r13
cmp byte [rdi + 0x2f30], 0
je 0x180044471
test al, al
jne 0x180044471
mov rsi, qword [r13 + 0x1a18]
test r14, r14
jne 0x180044362
mov r14, r12
cmp r12, 0xffffffffffffffff
jae 0x180044362
movzx ecx, byte [r14]
test cl, cl
je 0x180044362
lea rax, [r14 + 1]
cmp cl, 0x23
jne 0x180044359
cmp byte [rax], cl
je 0x180044362
mov r14, rax
cmp rax, 0xffffffffffffffff
jb 0x180044344
movss xmm0, dword [r13 + 0x2f50]
movss xmm1, dword [rsp + 0x64]
addss xmm0, dword [0x180051b68]
movss dword [r13 + 0x2f50], xmm1
comiss xmm1, xmm0
jbe 0x180044393
mov r15b, 1
mov byte [r13 + 0x2f54], r15b
jmp 0x180044396
xor r15b, r15b
mov ecx, dword [r13 + 0x2f58]
mov rbx, r12
mov eax, dword [rsi + 0x108]
cmp ecx, eax
jle 0x1800443b3
mov dword [r13 + 0x2f58], eax
mov ecx, eax
mov esi, dword [rsi + 0x108]
sub esi, ecx
nop dword [rax + rax]
mov r8, r14
mov edx, 0xa
sub r8, rbx
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
test rax, rax
mov rdi, r14
cmovne rdi, rax
cmp rdi, r14
jne 0x1800443e7
cmp rbx, rdi
je 0x180044452
mov r9d, edi
sub r9d, ebx
test r15b, r15b
jne 0x18004441d
cmp rbx, r12
jne 0x18004441d
cmp byte [r13 + 0x2f54], r15b
je 0x180044409
lea rcx, str._s_.s
jmp 0x180044424
mov r8, rbx
lea rcx, str.__.s
mov edx, r9d
call fcn.180029af0
jmp 0x18004443c
lea rcx, str._r_n_s_.s
lea r8, [0x18004a6b0]
mov qword [rsp + 0x20], rbx
lea edx, [rsi*4]
call fcn.180029af0
mov byte [r13 + 0x2f54], 0
cmp rdi, r14
je 0x180044463
lea rbx, [rdi + 1]
jmp 0x1800443c0
test r15b, r15b
je 0x180044463
lea rcx, [0x1800513e8]
call fcn.180029af0
mov rax, qword [0x180059c00]
mov rdi, qword [rsp + 0x68]
jmp 0x180044475
mov rax, qword [rbp + 0x58]
comiss xmm11, xmm12
mov r13, qword [rsp + 0x250]
jbe 0x1800444bb
movss xmm0, dword [rbp - 0x34]
lea rdx, str.Results_Play_Speed
addss xmm0, dword [rdi + 0x15a8]
addss xmm10, dword [rdi + 0x1594]
mov r9b, 1
xor r8d, r8d
unpcklps xmm0, xmm10
movq rcx, xmm0
call fcn.18001a890
mov rax, qword [0x180059c00]
movzx ecx, byte [rsp + 0x7c]
test cl, cl
je 0x1800444e7
test dword [rbp + 0x178], 0x200000
jne 0x1800444e7
mov word [rax + 0x1a6f], 0x101
mov rax, qword [rax + 0x1a18]
or dword [rax + 0x114], 4
test byte [rbp + 0x178], 0x20
mov eax, ecx
movzx ecx, byte [rsp + 0x51]
cmovne eax, ecx
jmp 0x1800416fe