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

Disassembly:
mov rax, rsp
mov dword [rax + 0x20], r9d
mov qword [rax + 0x18], r8
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x168]
sub rsp, 0x228
mov rbx, qword [0x18005f340]
mov r14, rcx
movaps xmmword [rax - 0x58], xmm6
mov r15, rbx
movaps xmmword [rax - 0x68], xmm7
movaps xmmword [rax - 0x78], xmm8
movaps xmmword [rax - 0x88], xmm9
movaps xmmword [rax - 0x98], xmm10
movaps xmmword [rax - 0xa8], xmm11
movaps xmmword [rax - 0xb8], xmm12
movaps xmmword [rax - 0xc8], xmm13
movaps xmmword [rax - 0xd8], xmm14
movaps xmmword [rax - 0xe8], xmm15
mov rax, qword [rbx + 0x1a18]
mov qword [rbp - 0x78], rbx
mov byte [rax + 0x80], 1
mov r13, qword [rbx + 0x1a18]
cmp byte [r13 + 0x83], 0
jne 0x1800307a2
mov ecx, dword [rbp + 0x198]
mov eax, ecx
shr eax, 0xe
mov edi, ecx
and al, 1
shr edi, 0x14
mov dword [rsp + 0x54], eax
and dil, 1
mov eax, ecx
mov dword [rsp + 0x5c], edi
shr eax, 0xf
and al, 1
mov dword [rbp - 0x48], eax
mov eax, ecx
shr eax, 0x10
not al
and al, 1
mov dword [rbp - 0x38], eax
mov eax, ecx
shr eax, 0x12
and al, 1
mov dword [rbp - 0x54], eax
test dil, dil
je 0x180030465
call fcn.180015c50
mov rbx, qword [0x18005f340]
movsxd rax, dword [r13 + 0xc0]
xor edx, edx
mov r8, qword [r13 + 0xc8]
mov rcx, r14
mov r8d, dword [r8 + rax*4 - 4]
call fcn.18000ada0
mov esi, eax
mov dword [rbp - 0x58], eax
cmp dword [rbx + 0x1a60], eax
jne 0x180030495
mov dword [rbx + 0x1a64], eax
cmp dword [rbx + 0x1a9c], esi
jne 0x1800304a4
mov byte [rbx + 0x1aa0], 1
mov rcx, r14
cmp r14, 0xffffffffffffffff
jae 0x1800304cd
nop dword [rax]
movzx edx, byte [rcx]
test dl, dl
je 0x1800304cd
lea rax, [rcx + 1]
cmp dl, 0x23
jne 0x1800304c4
cmp byte [rax], dl
je 0x1800304cd
mov rcx, rax
cmp rax, 0xffffffffffffffff
jb 0x1800304b0
movss xmm1, dword [0x18004537c]
xorps xmm12, xmm12
movss xmm0, dword [rbx + 0x1910]
movss dword [rbp - 0x10], xmm1
cmp r14, rcx
jne 0x1800304f0
xorps xmm6, xmm6
jmp 0x180030541
movss xmm3, dword [0x180045370]
lea rdx, [rbp + 0x178]
mov qword [rsp + 0x30], rcx
movaps xmm2, xmm0
mov rcx, qword [rbx + 0x1908]
mov qword [rsp + 0x28], r14
movss dword [rsp + 0x20], xmm1
call fcn.18002a0c0
movss xmm0, dword [rbp + 0x178]
addss xmm0, dword [0x1800452e8]
cvttss2si eax, xmm0
movss xmm0, dword [rbp + 0x17c]
movd xmm6, eax
cvtdq2ps xmm6, xmm6
movss dword [rbp - 0xc], xmm6
test dil, dil
je 0x18003055c
movss xmm0, dword [r15 + 0x1910]
mulss xmm0, dword [0x180045328]
movss xmm9, dword [r15 + 0x1594]
movaps xmm3, xmm9
addss xmm3, xmm9
addss xmm3, xmm0
call fcn.180015760
mov rdx, qword [rbp + 0x190]
lea rcx, [rbp + 0x178]
movaps xmm2, xmm0
mov rdx, qword [rdx]
call fcn.1800157d0
comiss xmm6, xmm12
jbe 0x1800305a4
movaps xmm1, xmm6
addss xmm1, dword [r15 + 0x15a8]
jmp 0x1800305a7
xorps xmm1, xmm1
movss xmm14, dword [r13 + 0xd0]
movss xmm15, dword [r13 + 0xd4]
movaps xmm13, xmm14
movss xmm10, dword [rbp + 0x178]
movaps xmm2, xmm15
movss xmm11, dword [rbp + 0x17c]
addss xmm1, xmm10
movss dword [rbp - 0x30], xmm14
addss xmm13, xmm10
movss dword [rbp - 0x2c], xmm10
movaps xmm6, xmm15
movss dword [rbp - 0x4c], xmm15
addss xmm2, xmm11
movss dword [rbp + 8], xmm11
addss xmm6, xmm11
movss dword [rbp - 0x70], xmm14
addss xmm1, xmm14
movss dword [rbp - 0x28], xmm13
movaps xmm7, xmm15
movss dword [rbp - 0x6c], xmm15
movaps xmm8, xmm14
movss dword [rbp - 0x68], xmm13
movss dword [rbp - 0x64], xmm6
movss dword [rsp + 0x70], xmm14
movaps xmm0, xmm1
unpcklps xmm0, xmm2
movsd qword [rsp + 0x78], xmm0
movss dword [rsp + 0x74], xmm7
mov qword [rbp - 0x20], r13
test dil, dil
je 0x180030878
mov rdi, qword [rbx + 0x1a18]
test esi, esi
je 0x1800306ec
mov eax, dword [rdi + 0x13c]
or dword [rdi + 0x144], eax
cmp dword [rbx + 0x1b88], esi
je 0x18003067f
cmp byte [rbx + 0x1bf8], 0
je 0x1800306ec
mov rcx, qword [rbx + 0x1b80]
mov rax, qword [rdi + 0x370]
cmp qword [rcx + 0x370], rax
jne 0x1800306ec
cmp rdi, rcx
je 0x1800306a7
mov eax, dword [rdi + 0xc]
or eax, dword [rcx + 0xc]
bt eax, 0x17
jae 0x1800306ec
mov r8d, esi
lea rdx, [rbp - 0x70]
mov rcx, rdi
call fcn.1800175b0
movss xmm13, dword [rbp - 0x68]
movss xmm15, dword [rbp - 0x6c]
movss xmm14, dword [rbp - 0x70]
movss xmm6, dword [rbp - 0x64]
movss xmm7, dword [rsp + 0x74]
movss xmm8, dword [rsp + 0x70]
movss dword [rbp - 0x28], xmm13
movss dword [rbp - 0x4c], xmm15
movss dword [rbp - 0x30], xmm14
movups xmm2, xmmword [rsp + 0x70]
xor r12d, r12d
mov dword [rdi + 0x110], esi
mov dword [rdi + 0x114], r12d
movups xmmword [rdi + 0x118], xmm2
mov dword [rbx + 0x1b20], r12d
mov rax, qword [rbx + 0x1a18]
movaps xmm3, xmm2
shufps xmm3, xmm2, 0xaa
shufps xmm2, xmm2, 0xff
comiss xmm2, dword [rax + 0x234]
jbe 0x180030752
movss xmm0, dword [rax + 0x23c]
comiss xmm0, xmm7
jbe 0x180030752
comiss xmm3, dword [rax + 0x230]
jbe 0x180030752
movss xmm0, dword [rax + 0x238]
comiss xmm0, xmm8
ja 0x1800307f7
test esi, esi
je 0x180030762
cmp esi, dword [rbx + 0x1a60]
je 0x1800307f7
cmp byte [rbx + 0x2f30], r12b
jne 0x1800307f7
movss xmm1, dword [r15 + 0x1594]
subss xmm3, xmm8
subss xmm2, xmm7
lea rcx, [rbp + 0x178]
movss dword [rbp + 0x178], xmm3
movss dword [rbp + 0x17c], xmm2
call fcn.18000d370
call fcn.180015d70
xor al, al
lea r11, [rsp + 0x228]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
movaps xmm10, xmmword [r11 - 0x58]
movaps xmm11, xmmword [r11 - 0x68]
movaps xmm12, xmmword [r11 - 0x78]
movaps xmm13, xmmword [r11 - 0x88]
movaps xmm14, xmmword [r11 - 0x98]
movaps xmm15, xmmword [r11 - 0xa8]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov r8b, 1
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x70]
call fcn.180010060
test al, al
je 0x180030814
or dword [rdi + 0x114], 1
movaps xmm0, xmm13
subss xmm6, xmm15
subss xmm0, xmm14
mov ecx, esi
lea rdx, [rbp + 0x178]
movss dword [rbp + 0x17c], xmm6
movss dword [rbp + 0x178], xmm0
call fcn.1800107e0
test al, al
jne 0x18003084e
call fcn.180010570
jmp 0x18003079d
mov r14, qword [r15 + 0x1a18]
mov qword [rbp - 0x20], r14
subss xmm10, dword [r14 + 0x74]
mov eax, dword [r14 + 0x13c]
or dword [r14 + 0x144], eax
movss dword [rbp - 0x2c], xmm10
jmp 0x1800309d3
subss xmm1, xmm14
subss xmm2, xmm15
lea rcx, [rbp + 0x178]
movss dword [rbp + 0x178], xmm1
movaps xmm1, xmm9
movss dword [rbp + 0x17c], xmm2
call fcn.18000d370
mov rdi, qword [0x18005f340]
mov rbx, qword [rdi + 0x1a18]
test esi, esi
je 0x18003093b
mov eax, dword [rbx + 0x13c]
or dword [rbx + 0x144], eax
cmp dword [rdi + 0x1b88], esi
je 0x1800308d5
cmp byte [rdi + 0x1bf8], 0
je 0x18003093b
mov rcx, qword [rdi + 0x1b80]
mov rax, qword [rbx + 0x370]
cmp qword [rcx + 0x370], rax
jne 0x18003093b
cmp rbx, rcx
je 0x1800308fd
mov eax, dword [rbx + 0xc]
or eax, dword [rcx + 0xc]
bt eax, 0x17
jae 0x18003093b
mov r8d, esi
lea rdx, [rbp - 0x70]
mov rcx, rbx
call fcn.1800175b0
movss xmm0, dword [rbp - 0x68]
movss xmm15, dword [rbp - 0x6c]
movss xmm14, dword [rbp - 0x70]
movss xmm7, dword [rsp + 0x74]
movss xmm8, dword [rsp + 0x70]
movss dword [rbp - 0x28], xmm0
movss dword [rbp - 0x4c], xmm15
movss dword [rbp - 0x30], xmm14
movups xmm1, xmmword [rsp + 0x70]
xor r12d, r12d
mov dword [rbx + 0x110], esi
mov dword [rbx + 0x114], r12d
movups xmmword [rbx + 0x118], xmm1
mov dword [rdi + 0x1b20], r12d
mov rax, qword [rdi + 0x1a18]
movaps xmm0, xmm1
shufps xmm0, xmm1, 0xff
comiss xmm0, dword [rax + 0x234]
jbe 0x18003099d
movss xmm0, dword [rax + 0x23c]
comiss xmm0, xmm7
jbe 0x18003099d
shufps xmm1, xmm1, 0xaa
comiss xmm1, dword [rax + 0x230]
jbe 0x18003099d
movss xmm0, dword [rax + 0x238]
comiss xmm0, xmm8
ja 0x1800309b6
test esi, esi
je 0x1800309a9
cmp esi, dword [rdi + 0x1a60]
je 0x1800309b6
cmp byte [rdi + 0x2f30], r12b
je 0x1800307a2
mov r8b, 1
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x70]
call fcn.180010060
test al, al
je 0x1800309d3
or dword [rbx + 0x114], 1
mov edx, esi
lea rcx, [rbp - 0x70]
call fcn.18000d600
mov byte [rbp - 0x50], al
movzx r11d, al
test al, al
je 0x1800309f4
mov dword [r15 + 0x1e90], 1
lea r14, [r15 + 0x1f88]
mov edx, esi
cmp dword [r14], esi
mov rdi, r14
mov rcx, r13
cmovne rdi, r12
mov qword [rsp + 0x70], rdi
call fcn.18000d760
movzx esi, al
test al, al
je 0x180030a39
cmp qword [r15 + 0x1cb8], r13
jne 0x180030a39
mov ecx, dword [r13 + 0x178]
cmp dword [r15 + 0x1cc8], ecx
jne 0x180030a39
mov r12b, 1
jmp 0x180030a48
xor r12b, r12b
mov byte [rbp + 0x178], 1
test sil, sil
jne 0x180030a4f
mov byte [rbp + 0x178], 0
test r11b, r11b
je 0x180030a63
cmp byte [r15 + 0x420], 0
je 0x180030a63
mov r15b, 1
jmp 0x180030a66
xor r15b, r15b
mov rcx, qword [rbp - 0x78]
mov byte [rsp + 0x50], r15b
mov ebx, dword [rcx + 0x1a60]
cmp ebx, edx
je 0x180030a9b
cmp dword [rcx + 0x1b98], edx
je 0x180030a92
cmp dword [rcx + 0x1b8c], edx
jne 0x180030a9b
cmp dword [rcx + 0x1bac], 3
jne 0x180030a9b
mov byte [rbp + 0x1a0], 1
jmp 0x180030aa2
mov byte [rbp + 0x1a0], 0
mov eax, dword [rsp + 0x5c]
test al, al
je 0x180030aed
test rdi, rdi
je 0x180030aed
test ebx, ebx
jne 0x180030aed
mov rcx, qword [rbp - 0x20]
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.18000ada0
mov rcx, qword [rbp - 0x78]
cmp dword [rcx + 0x1a9c], eax
jne 0x180030ae9
mov dil, 1
jmp 0x180030afc
mov eax, dword [rsp + 0x5c]
xor dil, dil
test al, al
je 0x180030b29
cmp qword [rsp + 0x70], 0
je 0x180030b29
mov rcx, qword [rbp - 0x20]
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.18000ada0
cmp ebx, eax
jne 0x180030b29
mov al, 1
jmp 0x180030b2b
xor al, al
mov edx, dword [rbp - 0x58]
movzx ecx, byte [rbp + 0x1a0]
mov byte [rsp + 0x58], al
mov byte [rbp + 0x1a8], 0
cmp ebx, edx
je 0x180030b5c
test byte [rbp + 0x198], 0x10
jne 0x180030b51
test cl, cl
je 0x180030b5c
cmp byte [rsp + 0x5c], 0
mov byte [rbp - 0x80], 1
je 0x180030b60
mov byte [rbp - 0x80], 0
test sil, sil
jne 0x180030c42
test r15b, r15b
jne 0x180030c42
test dil, dil
jne 0x180030c42
test cl, cl
jne 0x180030c42
test al, al
jne 0x180030c45
mov rsi, qword [rsp + 0x70]
mov r14d, dword [rsp + 0x5c]
mov r12d, dword [rbp - 0x80]
mov rax, qword [rbp - 0x78]
mov ebx, dword [rbp - 0x58]
cmp dword [rax + 0x1a60], ebx
je 0x180030e65
test r15b, r15b
je 0x180030e65
mov rdx, r13
mov ecx, ebx
call fcn.18000d1d0
call fcn.18000d2a0
mov rcx, r13
call fcn.180015470
mov r13, qword [rbp - 0x78]
mov ecx, dword [rbp + 0x198]
mov eax, dword [r13 + 0x1a74]
or eax, 3
mov dword [r13 + 0x1a74], eax
test r14b, r14b
jne 0x180030bf0
test cl, cl
jns 0x180030bfa
or eax, 0xc
mov dword [r13 + 0x1a74], eax
mov rax, qword [r13 + 0x1a80]
or dword [r13 + 0x1a78], 2
or rax, 0x180
mov qword [r13 + 0x1a80], rax
test r14b, r14b
je 0x180030c26
or rax, 0x60
mov qword [r13 + 0x1a80], rax
test ecx, 0x440
je 0x180030e68
or rax, 1
mov qword [r13 + 0x1a80], rax
jmp 0x180030e68
mov r15b, 1
mov rsi, qword [rsp + 0x70]
mov dil, 1
mov qword [rsp + 0x70], rsi
cmp ebx, edx
je 0x180030b90
mov rsi, r14
mov qword [rsp + 0x70], r14
mov dword [r14 + 0xe70], 0xbe99999a
mov rax, 0xffffffffffffffff
mov r14, qword [rbp + 0x180]
nop dword [rax + rax]
cmp byte [r14 + rax + 1], 0
lea rax, [rax + 1]
jne 0x180030c80
mov ecx, dword [rsi + 0x34]
lea ebx, [rax + 1]
cmp ebx, ecx
jle 0x180030cba
test ecx, ecx
je 0x180030ca5
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x180030caa
mov eax, 8
cmp eax, ebx
lea rcx, [rsi + 0x30]
mov edx, ebx
cmovg edx, eax
call fcn.18001bec0
mov dword [rsi + 0x30], ebx
mov rdx, r14
mov rcx, qword [rsi + 0x38]
movsxd r8, ebx
call sub.VCRUNTIME140.dll_memcpy
mov ebx, dword [rbp + 0x188]
mov ecx, dword [rsi + 0x14]
inc ebx
cmp ebx, ecx
jle 0x180030cff
test ecx, ecx
je 0x180030cea
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x180030cef
mov eax, 8
cmp eax, ebx
lea rcx, [rsi + 0x10]
mov edx, ebx
cmovg edx, eax
call fcn.18001bf50
mov dword [rsi + 0x10], ebx
mov ecx, dword [rsi + 0x24]
test ecx, ecx
jns 0x180030d22
mov eax, ecx
cdq
sub eax, edx
xor edx, edx
sar eax, 1
add eax, ecx
lea rcx, [rsi + 0x20]
test eax, eax
cmovg edx, eax
call fcn.18001bec0
xor ecx, ecx
mov rdi, r14
mov dword [rsi + 0x20], ecx
mov r14, qword [rsi + 0x18]
mov byte [rsi + 0x40], cl
mov rbx, r14
movsxd rsi, dword [rbp + 0x188]
dec rsi
lea rsi, [r14 + rsi*2]
cmp r14, rsi
jae 0x180030d7d
cmp byte [rdi], 0
je 0x180030d7b
xor r8d, r8d
lea rcx, [rbp - 0x40]
mov rdx, rdi
call fcn.18000b160
movsxd rcx, eax
mov eax, dword [rbp - 0x40]
add rdi, rcx
test eax, eax
je 0x180030d7b
cmp eax, 0xffff
ja 0x180030d76
mov word [rbx], ax
add rbx, 2
cmp rbx, rsi
jb 0x180030d47
xor ecx, ecx
mov rsi, qword [rsp + 0x70]
sub edi, dword [rbp + 0x180]
mov eax, dword [rbp - 0x58]
mov word [rbx], cx
sub rbx, r14
mov r14d, dword [rsp + 0x5c]
sar rbx, 1
mov dword [rsi + 4], ebx
mov dword [rsi + 8], edi
cmp dword [rsi], eax
jne 0x180030dc7
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 0x180030e1f
mov dword [rsi], eax
movzx eax, r14b
xor al, 1
mov qword [rsi + 0x48], 0
mov dword [rsi + 0xe62], 0x630000
mov dword [rsi + 0xe68], ecx
mov dword [rsi + 0xe6c], 0x3e7
mov qword [rsi + 0x50], 0
mov dword [rsi + 0x58], 0x10000
mov dword [rsi + 0x60], ecx
mov byte [rsi + 0x5c], al
test r14b, r14b
jne 0x180030e1f
mov ecx, dword [rbp - 0x80]
test r12b, r12b
movzx ecx, cl
mov eax, 1
cmovne ecx, eax
mov dword [rbp - 0x80], ecx
test dword [rbp + 0x198], 0x2000
je 0x180030e2f
mov byte [rsi + 0x58], 1
test r14b, r14b
jne 0x180030e5d
cmp byte [rbp + 0x178], r14b
jne 0x180030e51
cmp byte [rsp + 0x50], r14b
je 0x180030e5d
mov rax, qword [rbp - 0x78]
cmp byte [rax + 0x148], r14b
je 0x180030e5d
mov r12b, 1
movzx edi, r12b
jmp 0x180030b99
mov dil, 1
jmp 0x180030b95
mov r13, rax
mov r10, qword [0x18005f340]
mov qword [rsp + 0x60], r10
cmp dword [r13 + 0x1a60], ebx
jne 0x180030f06
test rsi, rsi
jne 0x180030ede
mov ecx, dword [r10 + 0x1a60]
test ecx, ecx
setne al
mov byte [r10 + 0x1a6c], al
xor eax, eax
test ecx, ecx
je 0x180030eae
mov dword [r10 + 0x1a68], eax
mov word [r10 + 0x1a6e], ax
mov dword [r10 + 0x1a60], eax
mov byte [r10 + 0x1a6d], 0
mov qword [r10 + 0x1a90], rax
mov byte [r10 + 0x1a70], 0
mov qword [r10 + 0x1a74], 0
mov qword [r10 + 0x1a80], rax
cmp dword [r13 + 0x1a60], ebx
jne 0x180030f06
cmp byte [r13 + 0x420], 0
je 0x180030f12
test dil, dil
jne 0x180030f12
test r15b, r15b
jne 0x180030f12
mov byte [rbp + 0x1a8], 1
mov cl, 1
jmp 0x180030f18
test rsi, rsi
je 0x180030f16
cmp byte [rsp + 0x58], 0
je 0x180030f16
mov cl, 1
jmp 0x180030f18
xor cl, cl
mov byte [rbp + 0x178], cl
test rsi, rsi
je 0x180030f33
mov eax, dword [rsi + 0x54]
cmp dword [rsi + 0x50], eax
je 0x180030f33
test cl, cl
je 0x180030f33
mov dl, 1
jmp 0x180030f35
xor dl, dl
mov eax, dword [rsp + 0x54]
mov dword [rbp - 0x80], edx
movzx r15d, dl
mov byte [rbp - 0x5c], 0
mov byte [rsp + 0x50], 0
test al, al
je 0x180031061
test rsi, rsi
je 0x180031061
test cl, cl
jne 0x180030f66
test dl, dl
je 0x180031069
mov ecx, dword [rsi + 0x14]
lea rbx, [rsi + 0x10]
mov esi, dword [rbp + 0x188]
inc esi
cmp esi, ecx
jle 0x180030fa8
test ecx, ecx
je 0x180030f88
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x180030f8d
mov eax, 8
cmp eax, esi
mov edx, esi
mov rcx, rbx
cmovg edx, eax
call fcn.18001bf50
mov r14, qword [0x18005f340]
mov qword [rsp + 0x60], r14
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rbp + 0x180]
mov dword [rbx], esi
mov rdi, rcx
movsxd rsi, esi
mov r14, qword [rdx + 0x18]
dec rsi
mov rbx, r14
lea rsi, [r14 + rsi*2]
cmp r14, rsi
jae 0x18003100b
nop
cmp byte [rdi], 0
je 0x180031004
xor r8d, r8d
lea rcx, [rbp - 0x40]
mov rdx, rdi
call fcn.18000b160
movsxd rcx, eax
mov eax, dword [rbp - 0x40]
add rdi, rcx
test eax, eax
je 0x180031004
cmp eax, 0xffff
ja 0x180030fff
mov word [rbx], ax
add rbx, 2
cmp rbx, rsi
jb 0x180030fd0
mov rcx, qword [rbp + 0x180]
mov rsi, qword [rsp + 0x70]
sub edi, ecx
mov r10, qword [rsp + 0x60]
xor edx, edx
mov eax, dword [rsp + 0x54]
mov word [rbx], dx
sub rbx, r14
sar rbx, 1
cmp dword [rsi + 0x4c], ebx
mov ecx, ebx
mov dword [rsi + 4], 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]
cmp ecx, ebx
mov dword [rsi + 0x54], ebx
mov ebx, dword [rbp - 0x58]
movzx ecx, byte [rbp + 0x178]
cmovne edx, r15d
mov dword [rbp - 0x80], edx
mov dword [rsi + 8], edi
test cl, cl
jne 0x180031072
test dl, dl
jne 0x180031072
cmp dword [r13 + 0x1a60], ebx
jne 0x180031085
test al, al
jne 0x180031085
test rsi, rsi
je 0x180031085
mov byte [rsp + 0x58], 1
cmp byte [rsi + 0x40], al
jne 0x18003108a
mov byte [rsp + 0x58], 0
mov edi, dword [rbp - 0x48]
test dil, dil
je 0x180031174
mov rdx, qword [r13 + 0x1908]
cmp dword [rdx + 0x18], 0x2a
jg 0x1800310a9
mov r8, qword [rdx + 0x38]
jmp 0x1800310cd
mov rax, qword [rdx + 0x20]
movzx ecx, word [rax + 0x54]
mov eax, 0xffff
cmp cx, ax
jne 0x1800310c1
mov r8, qword [rdx + 0x38]
jmp 0x1800310cd
mov rax, qword [rdx + 0x30]
lea rcx, [rcx + rcx*4]
lea r8, [rax + rcx*8]
mov eax, dword [rdx + 0x14]
lea rbx, [r13 + 0x2e18]
mov dword [rbx + 0x14], eax
mov rax, qword [r13 + 0x1908]
mov qword [rbp - 0x40], rbx
mov ecx, dword [rax + 0x60]
mov dword [rbx + 0x60], ecx
mov rax, qword [r13 + 0x1908]
movsd xmm0, qword [rax + 0x40]
movsd qword [rbx + 0x40], xmm0
mov rax, qword [r13 + 0x1908]
mov ecx, dword [rax + 0x64]
mov dword [rbx + 0x64], ecx
mov rax, qword [r13 + 0x1908]
mov ecx, dword [rax + 0x68]
mov dword [rbx + 0x68], ecx
mov rax, qword [r13 + 0x1908]
mov rcx, qword [rax + 0x48]
mov qword [rbx + 0x48], rcx
mov rcx, rbx
mov qword [rbx + 0x38], r8
mov eax, dword [r8 + 4]
mov dword [rbx + 0x10], eax
call fcn.1800158e0
lea rdx, [rbp - 0x40]
lea rcx, [r10 + 0x1b50]
call fcn.18001bc20
mov rdx, qword [rbx + 0x48]
mov r14, qword [rsp + 0x60]
mov rdx, qword [rdx + 8]
mov rcx, qword [r14 + 0x1a18]
mov rcx, qword [rcx + 0x2a8]
call fcn.180024a90
mov r10, qword [0x18005f340]
mov qword [rsp + 0x60], r10
mov r15d, dword [rbp - 0x58]
xor r14d, r14d
mov ecx, 0x20000c
movss xmm0, dword [0x1800452c0]
mov dword [rbp - 0x40], r14d
cmp dword [r13 + 0x1a60], r15d
jne 0x180031587
mov eax, dword [rsi + 8]
mov r8d, dword [rbp + 0x198]
mov dword [rsi + 0xe78], r8d
mov qword [rsi + 0xe80], r14
mov qword [rsi + 0xe88], r14
mov dword [rbp - 0x40], eax
mov eax, dword [rbp + 0x188]
mov dword [rsi + 0x44], eax
cmp byte [r13 + 0x138], r14b
mov dword [r13 + 0x315c], 1
sete al
mov byte [r13 + 0x1a6d], al
movss xmm1, dword [r13 + 0x130]
subss xmm1, xmm14
subss xmm1, dword [r13 + 0x1590]
addss xmm1, dword [rsi + 0x48]
cmp byte [rsp + 0x5c], r14b
je 0x180031223
mov rax, qword [rbp - 0x20]
movss xmm2, dword [r13 + 0x134]
subss xmm2, dword [rax + 0xd4]
subss xmm2, dword [r13 + 0x1594]
jmp 0x180031230
movss xmm2, dword [r13 + 0x1910]
mulss xmm2, xmm0
movzx edi, byte [r13 + 0xc9]
test r12b, r12b
jne 0x18003139c
movzx eax, byte [rbp - 0x50]
test al, al
je 0x18003125b
test dil, dil
jne 0x1800312b7
cmp byte [r13 + 0x425], r14b
jne 0x18003139c
cmp byte [r13 + 0x420], r14b
je 0x18003131b
cmp byte [rsi + 0xe75], r14b
jne 0x18003131b
test al, al
je 0x1800313b4
cmp byte [rsi + 0x5c], r14b
je 0x180031287
movaps xmm2, xmm12
mov rcx, rsi
call fcn.18002ea40
mov r10, qword [rsp + 0x60]
mov r8d, dword [rbp + 0x198]
mov dword [rsi + 0x4c], eax
mov dword [rsi + 0x50], eax
mov dword [rsi + 0x54], eax
mov byte [rsi + 0x5b], r14b
mov dword [rsi + 0xe70], 0xbe99999a
jmp 0x1800313b4
cmp byte [r13 + 0x425], r14b
je 0x18003125b
mov r8d, ecx
lea rdx, [rsi + 0x4c]
mov rcx, rsi
call fcn.18002ef30
mov r8d, 0x60000d
mov byte [rsi + 0xe74], 1
lea rdx, [rsi + 0x4c]
mov dword [rsi + 0xe70], 0xbe99999a
mov rcx, rsi
call fcn.18002ef30
mov r10, qword [0x18005f340]
mov r8d, dword [rbp + 0x198]
mov qword [rsp + 0x60], r10
mov byte [rsi + 0xe74], 1
mov dword [rsi + 0xe70], 0xbe99999a
jmp 0x1800313b4
cmp byte [r13 + 0x138], r14b
je 0x1800313b4
cmp byte [rsi + 0xe75], r14b
jne 0x1800313bd
movss xmm0, dword [r13 + 0x3c0]
ucomiss xmm0, xmm12
jp 0x180031357
jne 0x180031357
movss xmm0, dword [r13 + 0x3c4]
ucomiss xmm0, xmm12
jp 0x180031357
je 0x1800313b4
cmp byte [rsi + 0x5c], r14b
je 0x180031361
movaps xmm2, xmm12
mov eax, dword [rsi + 0x54]
cmp dword [rsi + 0x50], eax
jne 0x18003136f
mov eax, dword [rsi + 0x4c]
mov dword [rsi + 0x50], eax
mov rcx, rsi
call fcn.18002ea40
mov r10, qword [rsp + 0x60]
mov r8d, dword [rbp + 0x198]
mov dword [rsi + 0x54], eax
mov dword [rsi + 0x4c], eax
mov dword [rsi + 0xe70], 0xbe99999a
mov byte [rsi + 0xe74], 1
jmp 0x1800313b4
mov eax, dword [rsi + 4]
mov dword [rsi + 0x54], eax
mov dword [rsi + 0x4c], eax
mov dword [rsi + 0x50], r14d
mov byte [rsi + 0x5b], r14b
mov byte [rsi + 0xe75], 1
cmp byte [rsi + 0xe75], r14b
je 0x1800313cd
cmp byte [r13 + 0x138], r14b
jne 0x1800313cd
mov byte [rsi + 0xe75], r14b
cmp byte [r13 + 0x148], r14b
je 0x1800313df
cmp byte [r13 + 0x14a], r14b
je 0x1800313ed
test dil, dil
je 0x1800313f1
cmp byte [r13 + 0x14b], r14b
je 0x1800313f1
mov bl, 1
jmp 0x1800313f3
xor bl, bl
bt r8d, 0xa
jae 0x180031499
mov ecx, dword [r10 + 0x3c]
test ecx, ecx
js 0x180031499
call fcn.180010130
test al, al
mov eax, dword [rsp + 0x54]
je 0x18003149d
test bl, bl
jne 0x18003149d
cmp byte [r13 + 0x149], r14b
jne 0x18003149d
test al, al
jne 0x18003149d
mov rcx, qword [r13 + 0x1550]
movsxd rax, dword [r13 + 0x1548]
lea rdx, [rcx + rax*2]
cmp rcx, rdx
jae 0x180031455
movzx eax, word [rcx]
add rcx, 2
cmp ax, 9
je 0x180031499
cmp rcx, rdx
jb 0x180031443
mov edx, r8d
mov dword [rbp - 0x60], 9
lea rcx, [rbp - 0x60]
call fcn.180030210
test al, al
je 0x18003148d
mov r8d, dword [rbp - 0x60]
lea rdx, [rsi + 0x4c]
mov rcx, rsi
call fcn.18002ef30
mov byte [rsi + 0xe74], 1
mov dword [rsi + 0xe70], 0xbe99999a
mov r10, qword [0x18005f340]
mov qword [rsp + 0x60], r10
mov eax, dword [rsp + 0x54]
cmp dword [r13 + 0x1548], r14d
jle 0x180031584
test bl, bl
jne 0x180031549
test al, al
jne 0x180031549
cmp byte [rbp + 0x1a0], r14b
jne 0x180031549
mov r15d, dword [rbp + 0x198]
mov edi, r14d
mov rbx, r14
mov rax, qword [r13 + 0x1550]
movzx ecx, word [rbx + rax]
mov dword [rbp + 0x1a0], ecx
cmp ecx, 9
jne 0x1800314f3
cmp byte [r13 + 0x149], r14b
jne 0x18003152a
mov edx, r15d
lea rcx, [rbp + 0x1a0]
call fcn.180030210
test al, al
je 0x18003152a
mov r8d, dword [rbp + 0x1a0]
lea rdx, [rsi + 0x4c]
mov rcx, rsi
call fcn.18002ef30
mov byte [rsi + 0xe74], 1
mov dword [rsi + 0xe70], 0xbe99999a
inc edi
add rbx, 2
cmp edi, dword [r13 + 0x1548]
jl 0x1800314d4
mov r10, qword [0x18005f340]
mov r15d, dword [rbp - 0x58]
mov qword [rsp + 0x60], r10
mov ecx, dword [r13 + 0x154c]
test ecx, ecx
jns 0x18003157d
mov eax, ecx
cdq
sub eax, edx
mov edx, r14d
sar eax, 1
add eax, ecx
lea rcx, [r13 + 0x1548]
test eax, eax
cmovg edx, eax
call fcn.18001bf50
mov r10, qword [0x18005f340]
mov qword [rsp + 0x60], r10
mov dword [r13 + 0x1548], r14d
mov edi, dword [rbp - 0x48]
xor cl, cl
mov dword [rbp - 0x60], 0x2400
mov r12d, 0x3ff
cmp dword [r13 + 0x1a60], r15d
jne 0x180032178
cmp byte [r13 + 0x1a6c], cl
jne 0x180032178
cmp byte [rbp + 0x1a8], cl
jne 0x180032178
movzx ecx, byte [r13 + 0x149]
movzx r12d, byte [r13 + 0xc9]
movzx eax, cl
neg al
sbb r14d, r14d
and r14d, 0x400000
test r12b, r12b
je 0x18003162f
cmp byte [r13 + 0x14b], 0
je 0x1800315fb
cmp byte [r13 + 0x148], 0
jne 0x1800315fb
mov eax, 1
jmp 0x1800315fd
xor eax, eax
test eax, eax
jne 0x180031643
xor r15b, r15b
test r12b, r12b
je 0x180031656
cmp byte [r13 + 0x14b], 0
je 0x180031656
test cl, cl
je 0x180031656
cmp byte [r13 + 0x148], 0
jne 0x180031656
cmp byte [r13 + 0x14a], 0
jne 0x180031656
mov bl, 1
jmp 0x18003165d
cmp byte [r13 + 0x148], 0
je 0x180031601
cmp byte [r13 + 0x14b], 0
jne 0x180031601
cmp byte [r13 + 0x14a], 0
jne 0x180031601
test cl, cl
jne 0x180031601
mov r15b, 1
jmp 0x180031604
xor bl, bl
test r12b, r12b
je 0x1800316b0
cmp byte [r13 + 0x14b], 0
movzx esi, byte [r13 + 0x14a]
je 0x1800316b8
cmp byte [r13 + 0x148], 0
jne 0x1800316b8
test sil, sil
jne 0x1800316b8
movzx ecx, byte [r13 + 0x148]
mov r11b, 1
xor r8b, r8b
cmp byte [r13 + 0x149], r8b
je 0x1800316e5
test cl, cl
jne 0x1800316e5
cmp byte [r13 + 0x14a], r8b
jne 0x1800316e5
cmp byte [r13 + 0x14b], r8b
jne 0x1800316e5
mov r9b, 1
jmp 0x1800316e8
movzx esi, byte [r13 + 0x148]
movzx ecx, byte [r13 + 0x148]
xor r11b, r11b
test cl, cl
je 0x180031689
cmp byte [r13 + 0x149], r11b
jne 0x180031689
cmp byte [r13 + 0x14a], r11b
jne 0x180031689
cmp byte [r13 + 0x14b], r11b
jne 0x180031689
mov r8b, 1
xor r9b, r9b
test r15b, r15b
je 0x180031701
mov ecx, dword [r10 + 0x88]
test ecx, ecx
js 0x180031701
call fcn.180010130
test al, al
jne 0x180031717
test r9b, r9b
je 0x18003173c
mov ecx, dword [r10 + 0x64]
test ecx, ecx
js 0x18003173c
call fcn.180010130
test al, al
je 0x18003173c
cmp byte [rsp + 0x54], 0
jne 0x18003173c
test dil, dil
mov rdi, qword [rsp + 0x70]
jne 0x180031741
cmp byte [rsp + 0x5c], 0
je 0x180031737
mov eax, dword [rdi + 0x54]
cmp dword [rdi + 0x50], eax
je 0x180031741
mov r13b, 1
jmp 0x180031744
mov rdi, qword [rsp + 0x70]
xor r13b, r13b
test r15b, r15b
je 0x18003175d
mov ecx, dword [r10 + 0x80]
test ecx, ecx
js 0x18003175d
call fcn.180010130
test al, al
jne 0x180031773
test r8b, r8b
je 0x18003178d
mov ecx, dword [r10 + 0x60]
test ecx, ecx
js 0x18003178d
call fcn.180010130
test al, al
je 0x18003178d
cmp byte [rbp - 0x48], 0
jne 0x18003178d
cmp byte [rsp + 0x5c], 0
je 0x180031788
mov eax, dword [rdi + 0x54]
cmp dword [rdi + 0x50], eax
je 0x18003178d
mov dil, 1
jmp 0x180031790
xor dil, dil
test r15b, r15b
je 0x1800317a9
mov ecx, dword [r10 + 0x84]
test ecx, ecx
js 0x1800317a9
call fcn.180010130
test al, al
jne 0x1800317bf
test r9b, r9b
je 0x1800317ce
mov ecx, dword [r10 + 0x60]
test ecx, ecx
js 0x1800317ce
call fcn.180010130
test al, al
je 0x1800317ce
mov r9d, dword [rsp + 0x54]
test r9b, r9b
jne 0x1800317d3
mov r10b, 1
jmp 0x1800317d6
mov r9d, dword [rsp + 0x54]
xor r10b, r10b
mov r8, qword [rsp + 0x60]
test r15b, r15b
je 0x180031804
mov ecx, dword [r8 + 0x90]
test ecx, ecx
js 0x180031804
call fcn.180010130
test al, al
je 0x180031804
test r9b, r9b
jne 0x180031804
cmp byte [rbp - 0x38], r9b
je 0x180031804
mov r9b, 1
jmp 0x18003180c
xor r9b, r9b
test r15b, r15b
je 0x180031820
mov ecx, dword [r8 + 0x8c]
test ecx, ecx
js 0x180031820
call fcn.180010130
test al, al
jne 0x180031838
test bl, bl
je 0x18003184a
mov ecx, dword [r8 + 0x90]
test ecx, ecx
js 0x18003184a
call fcn.180010130
test al, al
je 0x18003184a
cmp byte [rsp + 0x54], 0
jne 0x18003184a
cmp byte [rbp - 0x38], 0
je 0x18003184a
mov r8b, 1
jmp 0x18003184d
xor r8b, r8b
mov rbx, qword [rsp + 0x60]
mov ecx, dword [rbx + 0x40]
test ecx, ecx
js 0x1800318be
call fcn.180010130
test al, al
je 0x1800318be
test r11b, r11b
je 0x18003186e
mov ecx, 0x200004
jmp 0x18003187e
mov ecx, 0x200000
mov eax, 0x20000c
test sil, sil
cmovne ecx, eax
or ecx, r14d
mov r8d, ecx
mov rsi, qword [rsp + 0x70]
mov rcx, rsi
lea rdx, [rsi + 0x4c]
call fcn.18002ef30
mov byte [rsi + 0xe74], 1
mov dword [rsi + 0xe70], 0xbe99999a
mov rcx, qword [0x18005f340]
mov r13, qword [rbp - 0x78]
mov r14, rcx
mov qword [rsp + 0x60], rcx
jmp 0x18003214b
mov ecx, dword [rbx + 0x44]
test ecx, ecx
js 0x1800318e4
call fcn.180010130
test al, al
je 0x1800318e4
test r11b, r11b
je 0x1800318da
mov ecx, 0x200005
jmp 0x18003187e
mov ecx, 0x200001
lea eax, [rcx + 0xc]
jmp 0x180031878
mov ecx, dword [rbx + 0x48]
test ecx, ecx
js 0x180031981
call fcn.180010130
test al, al
je 0x180031981
cmp byte [rsp + 0x5c], 0
je 0x180031981
mov r13, qword [rbp - 0x78]
mov rsi, qword [rsp + 0x70]
cmp byte [r13 + 0x148], 0
je 0x180031941
mov rdx, qword [rbp - 0x20]
mov r14, rbx
movss xmm0, dword [rdx + 0x58]
subss xmm0, dword [r13 + 0x1910]
mov dword [rdx + 0x70], 0
maxss xmm0, xmm12
movss dword [rdx + 0x68], xmm0
jmp 0x18003214b
movzx eax, r11b
lea r8d, [rax*4 + 0x200002]
or r8d, r14d
lea rdx, [rsi + 0x4c]
mov rcx, rsi
call fcn.18002ef30
mov rcx, qword [0x18005f340]
mov qword [rsp + 0x60], rcx
mov r14, rcx
mov byte [rsi + 0xe74], 1
mov dword [rsi + 0xe70], 0xbe99999a
jmp 0x18003214b
mov ecx, dword [rbx + 0x4c]
test ecx, ecx
js 0x1800319ee
call fcn.180010130
test al, al
je 0x1800319ee
cmp byte [rsp + 0x5c], 0
je 0x1800319ee
mov r13, qword [rbp - 0x78]
mov rsi, qword [rsp + 0x70]
cmp byte [r13 + 0x148], 0
je 0x1800319dd
mov rcx, qword [rbp - 0x20]
mov r14, rbx
movss xmm0, dword [r13 + 0x1910]
mov rax, qword [rbx + 0x1a18]
addss xmm0, dword [rcx + 0x58]
minss xmm0, dword [rax + 0x60]
mov dword [rcx + 0x70], 0
movss dword [rcx + 0x68], xmm0
jmp 0x18003214b
movzx eax, r11b
lea r8d, [rax*4 + 0x200003]
jmp 0x18003194d
mov ecx, dword [rbx + 0x58]
mov r11, rbx
test ecx, ecx
js 0x180031a2c
call fcn.180010130
test al, al
je 0x180031a2c
mov eax, r14d
mov r8d, 0x200004
or eax, 0x200006
mov r13, qword [rbp - 0x78]
or r8d, r14d
mov rsi, qword [rsp + 0x70]
cmp byte [r13 + 0x148], 0
cmovne r8d, eax
jmp 0x180031950
mov ecx, dword [rbx + 0x5c]
test ecx, ecx
js 0x180031a4c
call fcn.180010130
test al, al
je 0x180031a4c
mov eax, r14d
mov r8d, 0x200005
or eax, 0x200007
jmp 0x180031a0f
mov ecx, dword [rbx + 0x64]
test ecx, ecx
js 0x180031a73
call fcn.180010130
mov ebx, dword [rsp + 0x54]
test al, al
je 0x180031a77
test bl, bl
jne 0x180031a77
or r14d, 0x200008
mov r8d, r14d
jmp 0x180031884
mov ebx, dword [rsp + 0x54]
mov ecx, dword [r11 + 0x68]
test ecx, ecx
js 0x180031b56
call fcn.180010130
test al, al
je 0x180031b56
test bl, bl
jne 0x180031b56
mov rdx, qword [rsp + 0x70]
mov eax, dword [rdx + 0x54]
cmp dword [rdx + 0x50], eax
jne 0x180031b40
test sil, sil
mov rsi, rdx
je 0x180031ae7
add rdx, 0x4c
mov r8d, 0x60000c
mov rcx, rsi
call fcn.18002ef30
mov r13, qword [rbp - 0x78]
or r14d, 0x200009
mov r8d, r14d
mov byte [rsi + 0xe74], 1
mov dword [rsi + 0xe70], 0xbe99999a
jmp 0x180031950
test r12b, r12b
je 0x180031b43
mov r13, qword [rbp - 0x78]
cmp byte [r13 + 0x14b], 0
je 0x180031b47
cmp byte [r13 + 0x14a], 0
jne 0x180031b47
cmp byte [r13 + 0x148], 0
jne 0x180031b47
add rdx, 0x4c
mov r8d, 0x600004
mov rcx, rsi
call fcn.18002ef30
or r14d, 0x200009
mov byte [rsi + 0xe74], 1
mov r8d, r14d
mov dword [rsi + 0xe70], 0xbe99999a
jmp 0x180031950
mov rsi, rdx
mov r13, qword [rbp - 0x78]
or r14d, 0x200009
mov r8d, r14d
jmp 0x180031950
mov ecx, dword [r11 + 0x70]
test ecx, ecx
js 0x180031b67
call fcn.180010130
test al, al
jne 0x180031b78
mov ecx, dword [r11 + 0x78]
test ecx, ecx
js 0x180031bec
call fcn.180010130
test al, al
je 0x180031bec
mov edx, dword [rbp + 0x198]
mov eax, edx
mov r13, qword [rbp - 0x78]
shr eax, 0xb
and al, 1
cmp byte [rsp + 0x5c], 0
je 0x180031ba0
movzx ecx, byte [r13 + 0x148]
test al, al
je 0x180031bb1
test cl, cl
jne 0x180031bb5
mov byte [rbp + 0x1a8], 1
mov byte [rsp + 0x50], 1
jmp 0x180032143
test cl, cl
jne 0x180031ba0
test bl, bl
jne 0x180032143
lea rcx, [rbp + 0x1a0]
mov dword [rbp + 0x1a0], 0xa
call fcn.180030210
test al, al
je 0x180031cac
mov rsi, qword [rsp + 0x70]
mov r8d, dword [rbp + 0x1a0]
jmp 0x180031950
mov ecx, dword [r11 + 0x74]
test ecx, ecx
js 0x180031c16
call fcn.180010130
test al, al
je 0x180031c16
mov rsi, qword [rsp + 0x70]
mov cl, 1
mov r13, qword [rbp - 0x78]
mov r14, r11
mov byte [rbp + 0x1a8], cl
jmp 0x18003214d
test r9b, r9b
jne 0x1800320e8
test r8b, r8b
jne 0x1800320e8
test r15b, r15b
je 0x180031c67
mov ecx, dword [r11 + 0x7c]
test ecx, ecx
js 0x180031c67
call fcn.180010130
test al, al
je 0x180031c67
mov rsi, qword [rsp + 0x70]
mov r13, qword [rbp - 0x78]
mov eax, dword [rsi + 4]
mov dword [rsi + 0x54], eax
mov dword [rsi + 0x4c], eax
mov dword [rsi + 0x50], 0
mov byte [rsi + 0x5b], r8b
mov byte [rsi + 0xe74], 1
jmp 0x180032148
test r13b, r13b
jne 0x180031ec7
test dil, dil
jne 0x180031ec7
test r10b, r10b
je 0x18003213f
mov rax, qword [r11 + 0x100]
test rax, rax
je 0x180031cc5
mov rcx, qword [r11 + 0x110]
call rax
mov rbx, rax
test rax, rax
je 0x180031ca8
mov r11, qword [0x18005f340]
jmp 0x180031ccc
mov r13, qword [rbp - 0x78]
mov rcx, qword [0x18005f340]
mov rsi, qword [rsp + 0x70]
mov r14, rcx
mov qword [rsp + 0x60], rcx
jmp 0x18003214b
lea rbx, [0x180040709]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rbx + rax], 0
jne 0x180031cd3
test r11, r11
je 0x180031ce8
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 r15d, r15d
mov qword [rsp + 0x60], rax
mov r14, rax
mov esi, r15d
cmp byte [rbx], r15b
je 0x180031d61
mov r14d, dword [rbp + 0x198]
mov rdi, rax
xor r8d, r8d
lea rcx, [rbp + 0x1a0]
mov rdx, rbx
call fcn.18000b160
movsxd rcx, eax
add rbx, rcx
cmp dword [rbp + 0x1a0], r15d
je 0x180031d5c
mov edx, r14d
lea rcx, [rbp + 0x1a0]
call fcn.180030210
test al, al
je 0x180031d57
movzx eax, word [rbp + 0x1a0]
inc esi
mov word [rdi], ax
add rdi, 2
cmp byte [rbx], r15b
jne 0x180031d13
mov r14, qword [rsp + 0x60]
movsxd rax, esi
mov word [r14 + rax*2], r15w
test esi, esi
jle 0x180031e9d
mov rdi, qword [rsp + 0x70]
mov r8d, dword [rdi + 0x54]
lea rbx, [rdi + 0x4c]
mov eax, dword [rbx + 4]
mov ecx, dword [rdi + 4]
cmp eax, r8d
je 0x180031db1
mov r9d, eax
cmp eax, ecx
jle 0x180031d96
mov dword [rbx + 4], ecx
mov r9d, ecx
mov edx, r8d
cmp r8d, ecx
jle 0x180031da3
mov dword [rbx + 8], ecx
mov edx, ecx
mov r8d, edx
mov eax, r9d
cmp r9d, edx
jne 0x180031db1
mov dword [rbx], r9d
mov r10d, dword [rbx]
cmp r10d, ecx
jle 0x180031dbe
mov dword [rbx], ecx
mov r10d, ecx
mov ecx, dword [rdi + 4]
cmp eax, r8d
je 0x180031dee
mov edx, eax
cmp eax, ecx
jle 0x180031dd1
mov dword [rbx + 4], ecx
mov edx, ecx
mov r9d, r8d
cmp r8d, ecx
jle 0x180031ddf
mov dword [rbx + 8], ecx
mov r9d, ecx
mov r8d, r9d
mov eax, edx
cmp edx, r9d
jne 0x180031dee
mov dword [rbx], edx
mov r10d, edx
cmp r10d, ecx
jle 0x180031df5
mov dword [rbx], ecx
cmp eax, r8d
je 0x180031e2f
mov rdx, rbx
mov rcx, rdi
jge 0x180031e18
sub r8d, eax
mov r9d, r8d
mov r8d, eax
call fcn.18002edb0
mov eax, dword [rbx + 4]
mov dword [rbx + 8], eax
jmp 0x180031e29
sub eax, r8d
mov r9d, eax
call fcn.18002edb0
mov eax, dword [rbx + 8]
mov dword [rbx + 4], eax
mov dword [rbx], eax
mov byte [rbx + 0xf], r15b
mov edx, dword [rbx]
mov r9d, esi
mov r8, r14
mov rcx, rdi
call fcn.18002e890
test al, al
je 0x180031e79
mov edi, dword [rbx]
lea rcx, [rbx + 0x18]
xor edx, edx
call fcn.18002fe40
test rax, rax
je 0x180031e65
mov dword [rax], edi
mov dword [rax + 4], r15d
mov dword [rax + 8], esi
mov dword [rax + 0xc], 0xffffffff
add dword [rbx], esi
mov rsi, qword [rsp + 0x70]
mov byte [rbx + 0xf], r15b
mov byte [rsi + 0xe74], 1
jmp 0x180031ea2
movzx eax, word [rbx + 0xe16]
test ax, ax
je 0x180031e8f
dec ax
mov word [rbx + 0xe16], ax
mov rsi, qword [rsp + 0x70]
mov byte [rsi + 0xe74], 1
jmp 0x180031ea2
mov rsi, qword [rsp + 0x70]
test r14, r14
je 0x180031eb9
mov rax, qword [0x18005f340]
test rax, rax
je 0x180031eb9
dec dword [rax + 0x3bc]
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x1800318a6
mov rax, qword [rbp - 0x78]
cmp qword [rax + 0x108], 0
je 0x180032009
mov r15, qword [rsp + 0x70]
mov esi, dword [r15 + 0x54]
mov eax, dword [r15 + 0x50]
cmp eax, esi
je 0x180031ef9
mov r14d, esi
cmovge esi, eax
cmovl r14d, eax
xor r12d, r12d
jmp 0x180031f03
mov esi, dword [r15 + 4]
xor r12d, r12d
mov r14d, r12d
mov rcx, qword [r15 + 0x18]
mov edx, r12d
movsxd rax, esi
mov edi, 0x3ff
mov ebx, 0x800
mov r10d, 0x80
mov r11d, 0x2800
lea r9, [rcx + rax*2]
movsxd rax, r14d
lea r8, [rcx + rax*2]
nop
test r9, r9
je 0x180031f3a
cmp r8, r9
jae 0x180031f7f
movzx ecx, word [r8]
test cx, cx
je 0x180031f7f
add r8, 2
cmp cx, r10w
jae 0x180031f51
inc edx
jmp 0x180031f30
cmp cx, bx
jae 0x180031f5f
mov eax, 2
add edx, eax
jmp 0x180031f30
movzx eax, cx
add ax, word [rbp - 0x60]
cmp ax, di
mov eax, r12d
jbe 0x180031f7b
add cx, r11w
cmp cx, di
setbe al
add eax, 3
add edx, eax
jmp 0x180031f30
mov r11, qword [rsp + 0x60]
lea edi, [rdx + 1]
test r11, r11
je 0x180031f93
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.18000b300
mov r9, qword [0x18005f340]
mov rax, qword [r9 + 0x108]
test rax, rax
je 0x180031fe1
mov rcx, qword [r9 + 0x110]
mov rdx, rbx
call rax
mov r9, qword [0x18005f340]
test rbx, rbx
je 0x180031ff2
test r9, r9
je 0x180031ff2
dec dword [r9 + 0x3bc]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rdx, qword [0x18005f340]
mov qword [rsp + 0x60], rdx
jmp 0x18003200c
xor r12d, r12d
mov rsi, qword [rsp + 0x70]
test r13b, r13b
je 0x180032134
mov eax, dword [rsi + 0x54]
cmp dword [rsi + 0x50], eax
jne 0x180032033
mov eax, dword [rsi + 4]
mov dword [rsi + 0x54], eax
mov dword [rsi + 0x4c], eax
mov dword [rsi + 0x50], r12d
mov byte [rsi + 0x5b], 0
mov byte [rsi + 0xe74], 1
mov r8d, dword [rsi + 0x54]
mov eax, dword [rsi + 0x50]
cmp eax, r8d
je 0x180032134
mov ecx, dword [rsi + 4]
cmp eax, ecx
jle 0x180032056
mov dword [rsi + 0x50], ecx
mov eax, ecx
cmp r8d, ecx
jle 0x180032061
mov dword [rsi + 0x54], ecx
mov r8d, ecx
cmp eax, r8d
jne 0x180032069
mov dword [rsi + 0x4c], eax
cmp dword [rsi + 0x4c], ecx
jle 0x180032071
mov dword [rsi + 0x4c], ecx
cmp eax, r8d
je 0x1800320d9
lea rdx, [rsi + 0x4c]
mov rcx, rsi
jge 0x1800320af
sub r8d, eax
mov r9d, r8d
mov r8d, eax
call fcn.18002edb0
mov eax, dword [rsi + 0x50]
mov r13, qword [rbp - 0x78]
mov dword [rsi + 0x54], eax
mov dword [rsi + 0x4c], eax
mov r14, qword [0x18005f340]
mov qword [rsp + 0x60], r14
mov byte [rsi + 0x5b], 0
jmp 0x18003214b
sub eax, r8d
mov r9d, eax
call fcn.18002edb0
mov eax, dword [rsi + 0x54]
mov r13, qword [rbp - 0x78]
mov dword [rsi + 0x50], eax
mov dword [rsi + 0x4c], eax
mov r14, qword [0x18005f340]
mov qword [rsp + 0x60], r14
mov byte [rsi + 0x5b], 0
jmp 0x18003214b
mov r14, qword [rsp + 0x60]
mov r13, qword [rbp - 0x78]
mov byte [rsi + 0x5b], 0
jmp 0x18003214b
mov rsi, qword [rsp + 0x70]
movzx r8d, r9b
mov rcx, rsi
xor r8d, 1
add r8d, 0x20000a
lea rdx, [rsi + 0x4c]
call fcn.18002ef30
mov eax, dword [rsi + 0x4c]
mov r14, qword [0x18005f340]
mov r13, qword [rbp - 0x78]
mov dword [rsi + 0x54], eax
mov dword [rsi + 0x50], eax
mov qword [rsp + 0x60], r14
mov byte [rsi + 0xe74], 1
mov dword [rsi + 0xe70], 0xbe99999a
jmp 0x18003214b
mov r14, qword [rsp + 0x60]
mov r13, qword [rbp - 0x78]
jmp 0x18003214b
mov r13, qword [rbp - 0x78]
mov rsi, qword [rsp + 0x70]
mov r14, r11
xor cl, cl
mov eax, dword [rsi + 0x54]
cmp dword [rsi + 0x50], eax
je 0x180032162
cmp byte [rbp + 0x178], 0
je 0x180032162
mov al, 1
jmp 0x180032164
xor al, al
mov edx, dword [rbp - 0x80]
mov r12d, 0x3ff
mov r15d, dword [rbp - 0x58]
or dl, al
mov dword [rbp - 0x80], edx
jmp 0x18003217d
mov r14, qword [rsp + 0x60]
cmp dword [r13 + 0x1a60], r15d
jne 0x180032802
xor r10d, r10d
mov qword [rbp - 0x38], r10
mov r13d, r10d
mov dword [rbp - 0x60], r10d
test cl, cl
je 0x1800321fe
cmp byte [rsp + 0x54], r10b
jne 0x1800321da
mov r9, qword [rsi + 0x38]
mov rax, qword [rbp + 0x180]
mov r8, r9
sub r8, rax
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x1800321c7
inc rax
test ecx, ecx
jne 0x1800321b4
test edx, edx
je 0x1800321da
mov r13d, dword [rsi + 0x30]
dec r13d
mov qword [rbp - 0x38], r9
mov dword [rbp - 0x60], r13d
mov r9d, dword [rbp + 0x198]
cmp byte [rsp + 0x50], r10b
je 0x1800321ee
test r9b, 0x20
jne 0x180032205
mov r12d, dword [rbp - 0x54]
mov r11, qword [rbp + 0x180]
jmp 0x180032720
mov r9d, dword [rbp + 0x198]
cmp byte [rsp + 0x54], r10b
jne 0x180032270
mov eax, dword [rsi + 0x10]
mov byte [rsi + 0x40], 1
mov ecx, dword [rsi + 0x24]
lea ebx, [rax*4 + 1]
cmp ebx, ecx
jle 0x180032251
test ecx, ecx
je 0x180032230
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x180032235
mov eax, 8
cmp eax, ebx
lea rcx, [rsi + 0x20]
mov edx, ebx
cmovg edx, eax
call fcn.18001bec0
mov r14, qword [0x18005f340]
mov qword [rsp + 0x60], r14
mov dword [rsi + 0x20], ebx
xor r9d, r9d
mov r8, qword [rsi + 0x18]
mov edx, ebx
mov rcx, qword [rsi + 0x28]
call fcn.18000b300
mov r9d, dword [rbp + 0x198]
xor r10d, r10d
test r9d, 0x1c0
je 0x1800326d3
mov r8d, 0x16
test r9b, 0x40
je 0x1800322a3
mov ecx, dword [r14 + 0x3c]
test ecx, ecx
js 0x1800322a3
call fcn.180010130
test al, al
je 0x1800322a3
lea eax, [r8 + 0x2a]
mov r8d, r10d
jmp 0x1800322f6
test r9b, r9b
jns 0x1800322e8
mov ecx, dword [r14 + 0x48]
test ecx, ecx
js 0x1800322c8
call fcn.180010130
test al, al
je 0x1800322c8
mov r11d, 0x80
mov eax, r11d
lea r8d, [r11 - 0x7d]
jmp 0x1800322fc
mov ecx, dword [r14 + 0x4c]
test ecx, ecx
js 0x1800322e8
call fcn.180010130
test al, al
je 0x1800322e8
mov r11d, 0x80
mov eax, r11d
lea r8d, [r11 - 0x7c]
jmp 0x1800322fc
mov ecx, 0x100
mov eax, r10d
test ecx, r9d
cmovne eax, ecx
mov r11d, 0x80
test eax, eax
je 0x1800326d3
mov dword [rbp + 0x10], eax
mov ebx, r10d
mov rax, qword [rsi + 0x28]
mov r14d, 0x800
mov qword [rbp + 0x28], rax
mov r13d, 0x2400
mov eax, dword [rsi + 8]
mov dword [rbp + 0x30], eax
mov eax, dword [rsi + 0x44]
mov dword [rbp + 0x34], eax
movsxd rax, dword [rsi + 0x4c]
mov dword [rbp + 0x14], r9d
mov r9, qword [rsi + 0x18]
mov esi, 0x2800
mov dword [rbp + 0x24], r8d
mov rdx, r9
mov dword [rbp + 0x20], r10d
mov qword [rbp + 0x39], r10
lea r8, [r9 + rax*2]
mov dword [rbp + 0x41], r10d
mov word [rbp + 0x45], r10w
mov byte [rbp + 0x47], 0
mov qword [rbp + 0x18], r10
mov byte [rbp + 0x38], 0
test r8, r8
je 0x18003236d
cmp rdx, r8
jae 0x1800323b0
movzx ecx, word [rdx]
test cx, cx
je 0x1800323b0
add rdx, 2
cmp cx, r11w
jae 0x180032383
inc ebx
jmp 0x180032363
cmp cx, r14w
jae 0x180032392
mov eax, 2
add ebx, eax
jmp 0x180032363
lea eax, [rcx + r13]
cmp ax, r12w
mov eax, r10d
jbe 0x1800323ac
add cx, si
cmp cx, r12w
setbe al
add eax, 3
add ebx, eax
jmp 0x180032363
mov rsi, qword [rsp + 0x70]
mov rdx, r9
mov dword [rbp + 0x1a0], ebx
mov r12d, r10d
mov dword [rbp + 0x3c], ebx
mov edi, 0x3ff
movsxd rax, dword [rsi + 0x50]
lea r8, [r9 + rax*2]
mov r9d, 0x2800
test r8, r8
je 0x1800323e1
cmp rdx, r8
jae 0x180032426
movzx ecx, word [rdx]
test cx, cx
je 0x180032426
add rdx, 2
cmp cx, r11w
jae 0x1800323f8
inc r12d
jmp 0x1800323d7
cmp cx, r14w
jae 0x180032408
mov eax, 2
add r12d, eax
jmp 0x1800323d7
lea eax, [rcx + r13]
cmp ax, di
mov eax, r10d
jbe 0x180032421
add cx, r9w
cmp cx, di
setbe al
add eax, 3
add r12d, eax
jmp 0x1800323d7
mov rsi, qword [rsp + 0x70]
mov r15d, r10d
mov dword [rbp + 0x40], r12d
mov ebx, 0x2800
movsxd rax, dword [rsi + 0x54]
mov r9, qword [rsi + 0x18]
lea rdx, [r9 + rax*2]
test rdx, rdx
je 0x18003244d
cmp r9, rdx
jae 0x180032492
movzx ecx, word [r9]
test cx, cx
je 0x180032492
add r9, 2
cmp cx, r11w
jae 0x180032465
inc r15d
jmp 0x180032443
cmp cx, r14w
jae 0x180032475
mov eax, 2
add r15d, eax
jmp 0x180032443
lea eax, [rcx + r13]
cmp ax, di
mov eax, r10d
jbe 0x18003248d
add cx, bx
cmp cx, di
setbe al
add eax, 3
add r15d, eax
jmp 0x180032443
lea rcx, [rbp + 0x10]
mov dword [rbp + 0x44], r15d
call r10
movsxd rax, dword [rbp + 0x3c]
mov r14, qword [rbp + 0x28]
mov r13d, dword [rbp - 0x60]
cmp eax, dword [rbp + 0x1a0]
je 0x18003250f
lea rdi, [r14 + rax]
mov rbx, r14
xor esi, esi
nop word [rax + rax]
test rdi, rdi
je 0x1800324ca
cmp rbx, rdi
jae 0x1800324fe
cmp byte [rbx], 0
je 0x1800324fe
mov r8, rdi
lea rcx, [rbp + 0x1a0]
mov rdx, rbx
call fcn.18000b160
movsxd rcx, eax
mov eax, dword [rbp + 0x1a0]
add rbx, rcx
test eax, eax
je 0x1800324fe
mov ecx, 0xffff
cmp eax, ecx
ja 0x1800324c0
inc esi
jmp 0x1800324c0
mov rdx, qword [rsp + 0x70]
mov dword [rdx + 0x4c], esi
mov byte [rdx + 0xe74], 1
jmp 0x180032512
mov rdx, rsi
movsxd rax, dword [rbp + 0x40]
cmp eax, r12d
je 0x18003256a
lea rdi, [r14 + rax]
mov rbx, r14
xor esi, esi
test rdi, rdi
je 0x18003252e
cmp rbx, rdi
jae 0x180032562
cmp byte [rbx], 0
je 0x180032562
mov r8, rdi
lea rcx, [rbp + 0x1a0]
mov rdx, rbx
call fcn.18000b160
movsxd rcx, eax
mov eax, dword [rbp + 0x1a0]
add rbx, rcx
test eax, eax
je 0x180032562
mov ecx, 0xffff
cmp eax, ecx
ja 0x180032524
inc esi
jmp 0x180032524
mov rdx, qword [rsp + 0x70]
mov dword [rdx + 0x50], esi
movsxd rax, dword [rbp + 0x44]
cmp eax, r15d
je 0x1800325c6
lea rdi, [r14 + rax]
mov rbx, r14
xor esi, esi
nop dword [rax]
test rdi, rdi
je 0x18003258a
cmp rbx, rdi
jae 0x1800325be
cmp byte [rbx], 0
je 0x1800325be
mov r8, rdi
lea rcx, [rbp + 0x1a0]
mov rdx, rbx
call fcn.18000b160
movsxd rcx, eax
mov eax, dword [rbp + 0x1a0]
add rbx, rcx
test eax, eax
je 0x1800325be
mov ecx, 0xffff
cmp eax, ecx
ja 0x180032580
inc esi
jmp 0x180032580
mov rdx, qword [rsp + 0x70]
mov dword [rdx + 0x54], esi
cmp byte [rbp + 0x38], 0
mov r12d, dword [rbp - 0x54]
je 0x1800326b2
mov ebx, dword [rbp + 0x30]
mov eax, dword [rbp - 0x40]
cmp ebx, eax
jle 0x180032620
test r12b, r12b
je 0x180032620
mov ecx, dword [rdx + 0x14]
lea rdi, [rdx + 0x10]
sub ebx, eax
add ebx, dword [rdi]
cmp ebx, ecx
jle 0x18003261e
test ecx, ecx
je 0x180032601
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x180032606
mov eax, 8
cmp eax, ebx
mov edx, ebx
mov rcx, rdi
cmovg edx, eax
call fcn.18001bf50
mov rdx, qword [rsp + 0x70]
mov r14, qword [rbp + 0x28]
mov dword [rdi], ebx
mov rsi, qword [rdx + 0x18]
movsxd rdi, dword [rdx + 0x10]
mov rbx, rsi
dec rdi
lea rdi, [rsi + rdi*2]
cmp rsi, rdi
jae 0x180032674
cmp byte [r14], 0
je 0x180032674
xor r8d, r8d
lea rcx, [rbp + 0x1a0]
mov rdx, r14
call fcn.18000b160
movsxd rcx, eax
mov eax, dword [rbp + 0x1a0]
add r14, rcx
test eax, eax
je 0x180032674
mov ecx, 0xffff
cmp eax, ecx
ja 0x18003266f
mov word [rbx], ax
add rbx, 2
cmp rbx, rdi
jb 0x180032637
mov r14, qword [0x18005f340]
xor r10d, r10d
mov r15d, dword [rbp - 0x58]
mov r9d, dword [rbp + 0x198]
mov word [rbx], r10w
sub rbx, rsi
mov rsi, qword [rsp + 0x70]
mov eax, dword [rbp + 0x30]
sar rbx, 1
mov qword [rsp + 0x60], r14
mov dword [rsi + 4], ebx
mov dword [rsi + 8], eax
mov dword [rsi + 0xe70], 0xbe99999a
jmp 0x1800326d7
mov r14, qword [0x18005f340]
xor r10d, r10d
mov rsi, qword [rsp + 0x70]
mov r15d, dword [rbp - 0x58]
mov r9d, dword [rbp + 0x198]
mov qword [rsp + 0x60], r14
jmp 0x1800326d7
mov r12d, dword [rbp - 0x54]
cmp byte [rsp + 0x54], 0
mov r11, qword [rbp + 0x180]
jne 0x180032720
mov r9, qword [rsi + 0x28]
mov r8, r11
mov rax, r9
sub r8, r9
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x180032705
inc rax
test ecx, ecx
jne 0x1800326f2
test edx, edx
je 0x180032719
mov r13d, dword [rsi + 8]
mov rdi, r9
mov r9d, dword [rbp + 0x198]
jmp 0x180032724
mov r9d, dword [rbp + 0x198]
mov rdi, qword [rbp - 0x38]
test rdi, rdi
je 0x1800327e6
cmp dword [rbp - 0x40], r13d
je 0x18003279f
test r12b, r12b
je 0x18003279f
lea eax, [r13 + 1]
mov qword [rbp + 0x58], r10
cmp dword [rbp + 0x188], eax
lea rcx, [rbp + 0x48]
xorps xmm0, xmm0
mov dword [rbp + 0x48], 0x40000
cmovge eax, dword [rbp + 0x188]
mov dword [rbp + 0x6c], eax
movdqu xmmword [rbp + 0x70], xmm0
mov dword [rbp + 0x4c], r9d
mov qword [rbp + 0x60], r11
mov dword [rbp + 0x68], r13d
mov qword [rbp + 0x50], r10
call r10
mov ecx, dword [rbp + 0x6c]
mov r11, qword [rbp + 0x60]
mov r14, qword [0x18005f340]
mov qword [rbp + 0x180], r11
lea r13d, [rcx - 1]
mov qword [rsp + 0x60], r14
cmp dword [rbp + 0x68], r13d
cmovl r13d, dword [rbp + 0x68]
jmp 0x1800327a5
mov ecx, dword [rbp + 0x188]
lea eax, [r13 + 1]
cmp eax, ecx
cmovl ecx, eax
movsxd rbx, ecx
cmp rbx, 1
jb 0x1800327e2
jbe 0x1800327dc
lea r8, [rbx - 1]
mov rdx, rdi
mov rcx, r11
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov r14, qword [0x18005f340]
mov r11, qword [rbp + 0x180]
mov qword [rsp + 0x60], r14
mov byte [rbx + r11 - 1], 0
mov byte [rbp - 0x5c], 1
mov r13, qword [rbp - 0x78]
xor ebx, ebx
mov dword [rsi + 0xe78], ebx
mov qword [rsi + 0xe80], rbx
mov qword [rsi + 0xe88], rbx
jmp 0x180032804
xor ebx, ebx
cmp byte [rbp + 0x1a8], 0
je 0x180032875
cmp dword [r13 + 0x1a60], r15d
mov r13, qword [rsp + 0x60]
jne 0x18003287a
mov ecx, dword [r13 + 0x1a60]
test ecx, ecx
setne al
mov byte [r13 + 0x1a6c], al
test ecx, ecx
je 0x180032843
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
jmp 0x18003287a
mov r13, qword [rsp + 0x60]
mov r11d, dword [rsp + 0x5c]
test r11b, r11b
jne 0x18003296d
mov r8d, 1
lea rcx, [rbp - 0x70]
mov edx, r15d
call fcn.18000c600
mov rax, qword [0x18005f340]
lea rcx, [rsp + 0x60]
movups xmm0, xmmword [rax + 0x1678]
movups xmmword [rsp + 0x60], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x1558]
movss dword [rsp + 0x6c], xmm0
call fcn.18000b440
mov r12, qword [rbp - 0x78]
mov r8d, eax
mov rdx, qword [rbp - 0x68]
mov r9b, 1
movss xmm0, dword [r12 + 0x1598]
movss dword [rsp + 0x20], xmm0
movaps xmm0, xmm14
unpcklps xmm0, xmm15
movq rcx, xmm0
call fcn.18000c290
mov r13, qword [0x18005f340]
movaps xmm1, xmm15
addss xmm1, dword [r12 + 0x1594]
mov r11d, dword [rsp + 0x5c]
movaps xmm12, xmm15
mov r8, qword [rbp - 0x20]
addss xmm12, xmm11
movaps xmm0, xmm14
movss dword [rbp - 4], xmm15
addss xmm0, dword [r12 + 0x1590]
movaps xmm13, xmm10
movss dword [rbp + 0x1a4], xmm1
addss xmm13, xmm14
mov qword [rsp + 0x60], r13
movss dword [rbp + 4], xmm12
movaps xmm15, xmm12
movss dword [rbp + 0x1a0], xmm0
movss dword [rbp], xmm13
movss dword [rbp + 0x1a8], xmm13
jmp 0x1800329ba
mov r8, qword [rbp - 0x20]
movaps xmm1, xmm14
mov r12, qword [rbp - 0x78]
addss xmm1, xmm10
movss dword [rbp - 4], xmm15
movaps xmm15, xmm11
addss xmm15, dword [rbp - 0x4c]
movsd xmm0, qword [r8 + 0xd0]
movsd qword [rbp + 0x1a0], xmm0
movss dword [rbp + 0x1a8], xmm1
movaps xmm13, xmm1
movss dword [rbp], xmm1
movss dword [rbp + 4], xmm15
movaps xmm12, xmm15
cmp byte [rsp + 0x58], 0
lea rax, [rbp + 0x1a0]
movss xmm8, dword [rax + 4]
xorps xmm5, xmm5
movss dword [rbp - 8], xmm14
movss xmm14, dword [rax]
movss dword [rbp + 0x1a0], xmm8
movss dword [rbp - 0x40], xmm5
movss dword [rbp - 0x60], xmm5
je 0x1800329fc
mov rdi, qword [rsi + 0x28]
mov qword [rbp + 0x180], rdi
jmp 0x180032a03
mov rdi, qword [rbp + 0x180]
movzx eax, byte [rbp + 0x178]
mov ecx, dword [rbp - 0x80]
test al, al
jne 0x180032c0f
test cl, cl
jne 0x180032c0f
test r11b, r11b
je 0x180032a82
movzx edx, byte [rdi]
lea r14, [rdi + 1]
mov ecx, ebx
test dl, dl
je 0x180032a46
nop
cmp dl, 0xa
lea eax, [rcx + 1]
movzx edx, byte [r14]
cmovne eax, ecx
inc r14
mov ecx, eax
test dl, dl
jne 0x180032a30
movzx eax, byte [r14 - 1]
dec r14
cmp al, 0xa
je 0x180032a58
cmp al, 0xd
je 0x180032a58
inc ecx
movd xmm8, ecx
cvtdq2ps xmm8, xmm8
movss dword [rbp - 0x40], xmm10
mulss xmm8, dword [r12 + 0x1910]
movss dword [rbp - 0x60], xmm8
movss xmm8, dword [rbp + 0x1a0]
jmp 0x180032abf
cmp dword [r12 + 0x1a60], r15d
jne 0x180032a92
movsxd r14, dword [rsi + 8]
jmp 0x180032aaa
mov r14, 0xffffffffffffffff
nop dword [rax]
inc r14
cmp byte [rdi + r14], 0
jne 0x180032aa0
add r14, rdi
mov rax, r14
sub rax, rdi
cmp rax, 0x200000
jge 0x180033513
movups xmm0, xmmword [r13 + 0x1608]
lea rcx, [rbp - 0x70]
movups xmmword [rbp - 0x70], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [r13 + 0x1558]
movss dword [rbp - 0x64], xmm0
call fcn.18000b440
mov r10, qword [r8 + 0x2a8]
test r11b, r11b
movss xmm2, dword [r12 + 0x1910]
lea r8, [rbp - 8]
mov r11, qword [r12 + 0x1908]
cmovne r8, rbx
mov r9d, eax
mov rdx, r14
test eax, 0xff000000
je 0x1800334bb
test r14, r14
jne 0x180032b33
mov rdx, 0xffffffffffffffff
inc rdx
cmp byte [rdi + rdx], 0
jne 0x180032b27
add rdx, rdi
cmp rdi, rdx
je 0x1800334bb
test r11, r11
jne 0x180032b49
mov rax, qword [r10 + 0x38]
mov r11, qword [rax + 8]
xorps xmm12, xmm12
ucomiss xmm2, xmm12
jp 0x180032b5e
jne 0x180032b5e
mov rax, qword [r10 + 0x38]
movss xmm2, dword [rax + 0x10]
movsxd rcx, dword [r10 + 0x60]
mov rax, qword [r10 + 0x68]
add rcx, rcx
movups xmm1, xmmword [rax + rcx*8 - 0x10]
movups xmmword [rbp - 0x70], xmm1
test r8, r8
je 0x180032bc0
movss xmm0, dword [r8]
comiss xmm1, xmm0
jae 0x180032b86
movss dword [rbp - 0x70], xmm0
movss xmm1, dword [r8 + 4]
movss xmm0, dword [rbp - 0x6c]
comiss xmm0, xmm1
jae 0x180032b9b
movss dword [rbp - 0x6c], xmm1
movss xmm0, dword [r8 + 8]
comiss xmm0, dword [rbp - 0x68]
ja 0x180032bac
movss dword [rbp - 0x68], xmm0
movss xmm0, dword [r8 + 0xc]
comiss xmm0, dword [rbp - 0x64]
ja 0x180032bbd
movss dword [rbp - 0x64], xmm0
test r8, r8
setne al
movaps xmm0, xmm14
mov byte [rsp + 0x48], al
mov rcx, r11
movss dword [rsp + 0x40], xmm12
lea rax, [rbp - 0x70]
mov qword [rsp + 0x38], rdx
mov rdx, r10
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rax
unpcklps xmm0, xmm8
mov dword [rsp + 0x20], r9d
movq r9, xmm0
call fcn.18002a2e0
mov r13, qword [0x18005f340]
mov qword [rsp + 0x60], r13
jmp 0x1800334bf
movsxd r14, dword [rsi + 8]
xor r10d, r10d
mov rsi, qword [rsi + 0x18]
add r14, rdi
mov r15, qword [rsp + 0x70]
mov r8d, 0xfffffc18
xorps xmm7, xmm7
xorps xmm6, xmm6
mov r9, rbx
mov edi, r8d
mov edx, r10d
test al, al
je 0x180032c4b
movsxd rax, dword [r15 + 0x4c]
lea edx, [r10 + 1]
lea r8d, [r10 - 1]
lea r9, [rsi + rax*2]
test cl, cl
je 0x180032c6a
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 0x180032cbd
nop
cmp cx, 0xa
jne 0x180032cb0
inc r11d
cmp r8d, 0xffffffff
jne 0x180032c9d
cmp rax, r9
jb 0x180032c9d
dec edx
mov r8d, r11d
test edx, edx
jle 0x180032cbd
cmp edi, 0xffffffff
jne 0x180032cb0
cmp rax, rbx
jb 0x180032cb0
dec edx
mov edi, r11d
test edx, edx
jle 0x180032cbd
movzx ecx, word [rax + 2]
add rax, 2
test cx, cx
jne 0x180032c80
inc r11d
mov rdx, r9
cmp r8d, 0xffffffff
mov r10d, r11d
cmovne r10d, r8d
cmp edi, 0xffffffff
cmove edi, r11d
cmp r9, rsi
jbe 0x180032cf3
nop word [rax + rax]
cmp word [rdx - 2], 0xa
lea rax, [rdx - 2]
je 0x180032cf3
mov rdx, rax
cmp rax, rsi
ja 0x180032ce0
mov r8, qword [r13 + 0x1908]
movaps xmm1, xmm5
movss xmm2, dword [r13 + 0x1910]
movaps xmm10, xmm5
divss xmm2, dword [r8 + 0x14]
cmp rdx, r9
jae 0x180032d60
nop word [rax + rax]
movzx ecx, word [rdx]
add rdx, 2
cmp ecx, 0xa
jne 0x180032d37
maxss xmm1, xmm10
movaps xmm10, xmm5
jmp 0x180032d5b
cmp ecx, 0xd
je 0x180032d5b
cmp ecx, dword [r8]
jge 0x180032d4c
mov rax, qword [r8 + 8]
movss xmm0, dword [rax + rcx*4]
jmp 0x180032d52
movss xmm0, dword [r8 + 0x10]
mulss xmm0, xmm2
addss xmm10, xmm0
cmp rdx, r9
jb 0x180032d20
movss xmm0, dword [r12 + 0x1910]
maxss xmm10, xmm1
movd xmm11, r10d
cvtdq2ps xmm11, xmm11
movss dword [rbp - 0x38], xmm10
mulss xmm11, xmm0
movss dword [rbp - 0x54], xmm11
test edi, edi
js 0x180032e26
mov rdx, rbx
cmp rbx, rsi
jbe 0x180032db3
nop dword [rax]
cmp word [rdx - 2], 0xa
lea rax, [rdx - 2]
je 0x180032db3
mov rdx, rax
cmp rax, rsi
ja 0x180032da0
movss xmm2, dword [r13 + 0x1910]
movaps xmm1, xmm5
movaps xmm6, xmm5
divss xmm2, dword [r8 + 0x14]
cmp rdx, rbx
jae 0x180032e0d
nop dword [rax]
movzx ecx, word [rdx]
add rdx, 2
cmp ecx, 0xa
jne 0x180032de5
maxss xmm1, xmm6
movaps xmm6, xmm5
jmp 0x180032e08
cmp ecx, 0xd
je 0x180032e08
cmp ecx, dword [r8]
jge 0x180032dfa
mov rax, qword [r8 + 8]
movss xmm0, dword [rax + rcx*4]
jmp 0x180032e00
movss xmm0, dword [r8 + 0x10]
mulss xmm0, xmm2
addss xmm6, xmm0
cmp rdx, rbx
jb 0x180032dd0
movss xmm0, dword [r12 + 0x1910]
maxss xmm6, xmm1
movd xmm7, edi
cvtdq2ps xmm7, xmm7
mulss xmm7, xmm0
mov r9d, dword [rsp + 0x5c]
movss xmm4, dword [rbp - 0x2c]
test r9b, r9b
je 0x180032e4b
movd xmm3, r11d
cvtdq2ps xmm3, xmm3
movss dword [rbp - 0x40], xmm4
mulss xmm3, xmm0
movss dword [rbp - 0x60], xmm3
movzx r8d, byte [rbp + 0x178]
test r8b, r8b
je 0x180032f1c
cmp byte [r15 + 0xe74], 0
je 0x180032f1c
test dword [rbp + 0x198], 0x1000
jne 0x180032ebe
movss xmm2, dword [r15 + 0x48]
movaps xmm0, xmm4
comiss xmm2, xmm10
mulss xmm0, dword [0x1800452ac]
movaps xmm1, xmm10
jbe 0x180032e9e
subss xmm1, xmm0
movaps xmm0, xmm5
maxss xmm0, xmm1
jmp 0x180032eab
subss xmm1, xmm4
comiss xmm1, xmm2
jb 0x180032ec6
addss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [r15 + 0x48], xmm0
jmp 0x180032ec6
mov dword [r15 + 0x48], 0
test r9b, r9b
je 0x180032f14
mov rax, qword [rbp - 0x20]
movaps xmm2, xmm11
subss xmm2, dword [r12 + 0x1910]
movss xmm1, dword [rax + 0x58]
comiss xmm1, xmm2
jbe 0x180032ef0
movaps xmm0, xmm5
maxss xmm0, xmm2
jmp 0x180032efd
movaps xmm0, xmm11
subss xmm0, dword [rbp + 8]
maxss xmm0, xmm1
subss xmm1, xmm0
movss dword [rax + 0x58], xmm0
addss xmm8, xmm1
movss dword [rbp + 0x1a0], xmm8
mov byte [r15 + 0xe74], 0
cmp byte [rbp - 0x80], 0
movss xmm9, dword [r15 + 0x48]
je 0x1800331be
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 0x180032f5a
movss xmm1, dword [0x1800452ec]
jmp 0x180032f62
movss xmm1, dword [0x1800452c4]
movups xmm0, xmmword [r13 + 0x18a8]
lea rcx, [rbp - 0x70]
mulss xmm1, dword [r13 + 0x1558]
movups xmmword [rbp - 0x70], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, xmm1
movss dword [rbp - 0x64], xmm0
call fcn.18000b440
mov esi, eax
xorps xmm5, xmm5
test r9b, r9b
je 0x180032fa2
movss dword [rbp - 0x10], xmm5
xorps xmm8, xmm8
jmp 0x180032fab
movss xmm8, dword [0x180045304]
movaps xmm4, xmm14
addss xmm4, xmm6
movss xmm6, dword [rbp + 0x1a0]
addss xmm6, xmm7
movss xmm7, dword [0x1800452c0]
subss xmm4, xmm9
subss xmm6, xmm5
cmp rbx, rdi
jae 0x1800331b3
movss xmm10, dword [rbp + 0x1a8]
movss xmm11, dword [rbp - 0x30]
mov r15, qword [rbp - 0x20]
nop dword [rax]
movaps xmm0, xmm12
addss xmm0, dword [r12 + 0x1910]
comiss xmm6, xmm0
ja 0x180033184
movss xmm0, dword [rbp - 0x4c]
comiss xmm0, xmm6
jbe 0x18003303b
cmp rbx, rdi
jae 0x180033168
nop word [rax + rax]
movzx eax, word [rbx]
add rbx, 2
cmp ax, 0xa
je 0x180033168
cmp rbx, rdi
jb 0x180033020
jmp 0x180033168
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 0x18003309e
nop dword [rax + rax]
movzx ecx, word [rbx]
add rbx, 2
cmp ecx, 0xa
je 0x180033094
cmp ecx, 0xd
je 0x18003308d
cmp ecx, dword [rdx]
jge 0x180033080
mov rax, qword [rdx + 8]
movss xmm0, dword [rax + rcx*4]
jmp 0x180033085
movss xmm0, dword [rdx + 0x10]
mulss xmm0, xmm2
addss xmm1, xmm0
cmp rbx, rdi
jb 0x180033060
jmp 0x18003309e
movaps xmm3, xmm5
maxss xmm3, xmm1
movaps xmm1, xmm5
maxss xmm1, xmm3
comiss xmm5, xmm1
jb 0x1800330d6
mov rax, qword [r12 + 0x1908]
cmp dword [rax], 0x20
jle 0x1800330c2
mov rax, qword [rax + 8]
movss xmm0, dword [rax + 0x80]
jmp 0x1800330c7
movss xmm0, dword [rax + 0x10]
mulss xmm0, xmm7
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss xmm2, dword [rbp - 0x10]
addss xmm1, xmm4
subss xmm2, dword [r12 + 0x1910]
movaps xmm0, xmm8
addss xmm4, xmm5
addss xmm0, xmm6
minss xmm1, xmm13
addss xmm2, xmm6
maxss xmm4, xmm11
minss xmm0, xmm12
movss dword [rbp - 0x68], xmm1
maxss xmm2, dword [rbp - 0x4c]
movss dword [rbp - 0x70], xmm4
comiss xmm0, dword [rbp - 0x4c]
movss dword [rbp - 0x6c], xmm2
movss dword [rbp - 0x64], xmm0
jbe 0x180033168
comiss xmm12, xmm2
jbe 0x180033168
comiss xmm1, xmm11
jbe 0x180033168
comiss xmm13, xmm4
jbe 0x180033168
mov rcx, qword [r15 + 0x2a8]
lea r8, [rbp - 0x68]
mov dword [rsp + 0x28], 0xf
lea rdx, [rbp - 0x70]
mov r9d, esi
movss dword [rsp + 0x20], xmm5
call fcn.180026b60
mov r13, qword [0x18005f340]
xorps xmm5, xmm5
movaps xmm4, xmm14
subss xmm4, xmm9
addss xmm6, dword [r12 + 0x1910]
cmp rbx, rdi
jb 0x180032ff0
movss xmm11, dword [rbp - 0x54]
movss xmm8, dword [rbp + 0x1a0]
mov r15, qword [rsp + 0x70]
mov r9d, dword [rsp + 0x5c]
movss dword [rbp + 0x1a8], xmm10
movss xmm10, dword [rbp - 0x38]
mov qword [rsp + 0x60], r13
jmp 0x1800331c6
movss xmm8, dword [rbp + 0x1a0]
jmp 0x1800331c6
movss xmm7, dword [0x1800452c0]
mov rdi, qword [rbp + 0x180]
test r9b, r9b
jne 0x1800331e4
mov rax, r14
sub rax, rdi
cmp rax, 0x200000
jge 0x18003334b
movups xmm0, xmmword [r13 + 0x1608]
lea rcx, [rbp - 0x70]
movups xmmword [rbp - 0x70], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [r13 + 0x1558]
movss dword [rbp - 0x64], xmm0
call fcn.18000b440
cmp byte [rsp + 0x5c], 0
lea r8, [rbp - 8]
mov rbx, qword [rbp - 0x20]
mov r9d, eax
movss xmm2, dword [r12 + 0x1910]
mov eax, 0
mov r11, qword [r12 + 0x1908]
cmovne r8, rax
movaps xmm3, xmm14
movaps xmm4, xmm8
mov r10, qword [rbx + 0x2a8]
xorps xmm12, xmm12
subss xmm3, xmm9
mov rdx, r14
subss xmm4, xmm12
test r9d, 0xff000000
je 0x180033353
test r14, r14
jne 0x18003327b
mov rdx, 0xffffffffffffffff
nop
inc rdx
cmp byte [rdi + rdx], al
jne 0x180033270
add rdx, rdi
cmp rdi, rdx
je 0x180033353
test r11, r11
jne 0x180033291
mov rax, qword [r10 + 0x38]
mov r11, qword [rax + 8]
ucomiss xmm2, xmm12
jp 0x1800332a2
jne 0x1800332a2
mov rax, qword [r10 + 0x38]
movss xmm2, dword [rax + 0x10]
movsxd rcx, dword [r10 + 0x60]
mov rax, qword [r10 + 0x68]
add rcx, rcx
movups xmm1, xmmword [rax + rcx*8 - 0x10]
movups xmmword [rbp - 0x70], xmm1
test r8, r8
je 0x180033304
movss xmm0, dword [r8]
comiss xmm1, xmm0
jae 0x1800332ca
movss dword [rbp - 0x70], xmm0
movss xmm1, dword [r8 + 4]
movss xmm0, dword [rbp - 0x6c]
comiss xmm0, xmm1
jae 0x1800332df
movss dword [rbp - 0x6c], xmm1
movss xmm0, dword [r8 + 8]
comiss xmm0, dword [rbp - 0x68]
ja 0x1800332f0
movss dword [rbp - 0x68], xmm0
movss xmm0, dword [r8 + 0xc]
comiss xmm0, dword [rbp - 0x64]
ja 0x180033301
movss dword [rbp - 0x64], xmm0
test r8, r8
setne al
unpcklps xmm3, xmm4
mov byte [rsp + 0x48], al
mov rcx, r11
movss dword [rsp + 0x40], xmm12
lea rax, [rbp - 0x70]
mov qword [rsp + 0x38], rdx
mov rdx, r10
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r9d
movq r9, xmm3
call fcn.18002a2e0
mov r13, qword [0x18005f340]
mov qword [rsp + 0x60], r13
jmp 0x180033353
mov rbx, qword [rbp - 0x20]
xorps xmm12, xmm12
cmp byte [rbp + 0x178], 0
je 0x1800334bf
movss xmm0, dword [r12 + 0x18]
addss xmm0, dword [r15 + 0xe70]
movss dword [r15 + 0xe70], xmm0
cmp byte [r12 + 0xca], 0
je 0x1800333a8
comiss xmm12, xmm0
jae 0x1800333a8
movss xmm1, dword [0x1800452f0]
call sub.api_ms_win_crt_math_l1_1_0.dll_fmodf
movss xmm1, dword [0x1800452e0]
comiss xmm1, xmm0
jae 0x1800333a8
xor al, al
jmp 0x1800333aa
mov al, 1
addss xmm14, xmm10
movaps xmm6, xmm8
addss xmm6, xmm11
subss xmm14, xmm9
subss xmm6, xmm12
movss dword [rbp - 0x70], xmm14
movaps xmm2, xmm14
movaps xmm0, xmm6
movaps xmm1, xmm6
subss xmm0, dword [r12 + 0x1910]
subss xmm1, dword [0x1800452fc]
addss xmm0, xmm7
movss xmm7, dword [0x1800452ec]
movss dword [rbp - 0x64], xmm1
addss xmm2, xmm7
movss dword [rbp - 0x6c], xmm0
movss dword [rbp - 0x68], xmm2
test al, al
je 0x18003348f
comiss xmm1, dword [rbp - 0x4c]
jbe 0x18003348f
comiss xmm15, xmm0
jbe 0x18003348f
comiss xmm2, dword [rbp - 0x30]
jbe 0x18003348f
movss xmm0, dword [rbp + 0x1a8]
comiss xmm0, xmm14
jbe 0x18003348f
movups xmm0, xmmword [r13 + 0x1608]
lea rcx, [rbp - 0x20]
movss dword [rbp + 0x178], xmm14
movups xmmword [rbp - 0x20], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [r13 + 0x1558]
movss dword [rbp + 0x17c], xmm1
movss dword [rbp - 0x14], xmm0
call fcn.18000b440
mov rcx, qword [rbx + 0x2a8]
lea rdx, [rbp - 0x70]
mov r9d, eax
movss dword [rsp + 0x20], xmm7
lea r8, [rbp + 0x178]
call fcn.1800268f0
mov r13, qword [0x18005f340]
mov qword [rsp + 0x60], r13
cmp byte [rsp + 0x54], 0
jne 0x1800334bf
subss xmm6, dword [r12 + 0x1910]
subss xmm14, xmm7
movss dword [r12 + 0x2ee8], xmm6
movss dword [r12 + 0x2ee4], xmm14
jmp 0x1800334bf
xorps xmm12, xmm12
cmp byte [rsp + 0x5c], 0
je 0x180033517
movss xmm0, dword [rbp - 0x40]
lea rcx, [rbp + 0x178]
addss xmm0, xmm12
movss dword [rbp + 0x178], xmm0
movss xmm0, dword [rbp - 0x60]
addss xmm0, dword [r12 + 0x1910]
movss dword [rbp + 0x17c], xmm0
call fcn.18002e3f0
call fcn.180010570
call fcn.180015d70
mov r13, qword [0x18005f340]
mov qword [rsp + 0x60], r13
jmp 0x180033517
xorps xmm12, xmm12
mov eax, dword [rbp - 0x48]
test al, al
je 0x180033532
call fcn.180015970
mov r13, qword [0x18005f340]
mov eax, dword [rbp - 0x48]
mov qword [rsp + 0x60], r13
cmp byte [r12 + 0x2f30], 0
je 0x180033682
test al, al
jne 0x180033682
mov rsi, qword [r13 + 0x1a18]
test r14, r14
jne 0x18003357e
mov r14, rdi
cmp rdi, 0xffffffffffffffff
jae 0x18003357e
nop
movzx ecx, byte [r14]
test cl, cl
je 0x18003357e
lea rax, [r14 + 1]
cmp cl, 0x23
jne 0x180033575
cmp byte [rax], cl
je 0x18003357e
mov r14, rax
cmp rax, 0xffffffffffffffff
jb 0x180033560
movss xmm0, dword [r13 + 0x2f50]
addss xmm0, dword [0x1800452ec]
movss dword [r13 + 0x2f50], xmm8
comiss xmm8, xmm0
jbe 0x1800335aa
mov r15b, 1
mov byte [r13 + 0x2f54], r15b
jmp 0x1800335ad
xor r15b, r15b
mov ecx, dword [r13 + 0x2f58]
mov rbx, rdi
mov eax, dword [rsi + 0x108]
cmp ecx, eax
jle 0x1800335ca
mov dword [r13 + 0x2f58], eax
mov ecx, eax
mov esi, dword [rsi + 0x108]
sub esi, ecx
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 0x1800335f9
cmp rbx, rdi
je 0x180033668
mov r9d, edi
sub r9d, ebx
test r15b, r15b
jne 0x180033633
cmp rbx, qword [rbp + 0x180]
jne 0x180033633
cmp byte [r13 + 0x2f54], r15b
je 0x18003361f
lea rcx, str._s_.s
jmp 0x18003363a
mov r8, rbx
lea rcx, str.__.s
mov edx, r9d
call fcn.18001a310
jmp 0x180033652
lea rcx, str._r_n_s_.s
lea r8, [0x180040709]
mov qword [rsp + 0x20], rbx
lea edx, [rsi*4]
call fcn.18001a310
mov byte [r13 + 0x2f54], 0
cmp rdi, r14
je 0x180033679
lea rbx, [rdi + 1]
jmp 0x1800335d2
test r15b, r15b
je 0x180033679
lea rcx, [0x180040e38]
call fcn.18001a310
mov rax, qword [0x18005f340]
jmp 0x180033687
mov rax, qword [rsp + 0x60]
movss xmm0, dword [rbp - 0xc]
comiss xmm0, xmm12
jbe 0x1800336d1
movss xmm0, dword [rbp - 0x28]
mov r9b, 1
movss xmm1, dword [rbp - 0x4c]
xor r8d, r8d
addss xmm0, dword [r12 + 0x15a8]
addss xmm1, dword [r12 + 0x1594]
mov rdx, qword [rbp + 0x170]
unpcklps xmm0, xmm1
movq rcx, xmm0
call fcn.18000b6f0
mov rax, qword [0x18005f340]
movzx ecx, byte [rbp - 0x5c]
test cl, cl
je 0x1800336fc
test dword [rbp + 0x198], 0x200000
jne 0x1800336fc
mov word [rax + 0x1a6f], 0x101
mov rax, qword [rax + 0x1a18]
or dword [rax + 0x114], 4
test byte [rbp + 0x198], 0x20
mov eax, ecx
movzx ecx, byte [rsp + 0x50]
cmovne eax, ecx
jmp 0x1800307a4