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

Disassembly:
mov rax, rsp
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x1b8]
sub rsp, 0x278
movaps xmmword [rax - 0x58], xmm6
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
mov rax, qword [0x1800b6040]
xor rax, rsp
mov qword [rbp + 0xc8], rax
mov rbx, qword [0x1800bb2c8]
mov r12, rcx
mov rax, qword [rbp + 0x1f0]
mov rdi, rbx
mov qword [rbp - 0x20], rax
mov rax, qword [rbp + 0x1f8]
mov qword [rbp - 0x40], rax
mov rax, qword [rbx + 0x1a18]
mov dword [rbp - 0x70], r9d
mov qword [rbp - 0x50], r8
mov qword [rbp - 0x60], rdx
mov byte [rax + 0x80], 1
mov r15, qword [rbx + 0x1a18]
mov qword [rbp - 8], rcx
mov qword [rbp - 0x80], rbx
cmp byte [r15 + 0x83], 0
jne 0x1800586b5
mov ecx, dword [rbp + 0x1e8]
mov eax, ecx
shr eax, 0xe
mov r14d, ecx
and al, 1
shr r14d, 0x14
mov dword [rsp + 0x6c], eax
and r14b, 1
mov eax, ecx
mov dword [rsp + 0x78], r14d
shr eax, 0xf
and al, 1
mov dword [rbp - 0x44], 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 - 0x28], eax
test r14b, r14b
je 0x180058487
call fcn.180010c20
mov rbx, qword [0x1800bb2c8]
movsxd rax, dword [r15 + 0xc0]
xor edx, edx
mov r8, qword [r15 + 0xc8]
mov rcx, r12
mov r8d, dword [r8 + rax*4 - 4]
call fcn.180004050
mov esi, eax
mov dword [rbp - 0x68], eax
cmp dword [rbx + 0x1a60], eax
jne 0x1800584b7
mov dword [rbx + 0x1a64], eax
cmp dword [rbx + 0x1a9c], esi
jne 0x1800584c6
mov byte [rbx + 0x1aa0], 1
mov rcx, r12
cmp r12, 0xffffffffffffffff
jae 0x1800584ed
nop
movzx edx, byte [rcx]
test dl, dl
je 0x1800584ed
lea rax, [rcx + 1]
cmp dl, 0x23
jne 0x1800584e4
cmp byte [rax], dl
je 0x1800584ed
mov rcx, rax
cmp rax, 0xffffffffffffffff
jb 0x1800584d0
movss xmm1, dword [0x1800ab2e0]
xor r13d, r13d
movss xmm0, dword [rbx + 0x1910]
movss dword [rbp - 0x10], xmm1
cmp r12, rcx
jne 0x180058510
xorps xmm11, xmm11
jmp 0x180058568
movss xmm3, dword [0x1800ab2bc]
lea rdx, [rbp + 0xa8]
mov qword [rsp + 0x38], r13
movaps xmm2, xmm0
mov qword [rsp + 0x30], rcx
mov rcx, qword [rbx + 0x1908]
mov qword [rsp + 0x28], r12
movss dword [rsp + 0x20], xmm1
call fcn.180048fb0
movss xmm0, dword [rbp + 0xa8]
addss xmm0, dword [0x1800ab138]
cvttss2si eax, xmm0
movss xmm0, dword [rbp + 0xac]
movd xmm11, eax
cvtdq2ps xmm11, xmm11
movss dword [rbp - 0x24], xmm11
xorps xmm12, xmm12
test r14b, r14b
je 0x180058587
movss xmm0, dword [rdi + 0x1910]
mulss xmm0, dword [0x1800ab204]
movss xmm6, dword [rdi + 0x1594]
movaps xmm3, xmm6
addss xmm3, xmm6
addss xmm3, xmm0
call fcn.18000fd40
mov rdx, qword [rbp + 0x1e0]
lea rcx, [rbp + 0xa8]
movaps xmm2, xmm0
mov rdx, qword [rdx]
call fcn.18000fdb0
comiss xmm11, xmm12
jbe 0x1800585cc
movaps xmm2, xmm11
addss xmm2, dword [rdi + 0x15a8]
jmp 0x1800585cf
xorps xmm2, xmm2
movss xmm4, dword [r15 + 0xd4]
movss xmm3, dword [r15 + 0xd0]
movaps xmm0, xmm4
movss xmm7, dword [rbp + 0xac]
movaps xmm1, xmm3
movss xmm9, dword [rbp + 0xa8]
addss xmm0, xmm7
movss dword [rbp + 0x18], xmm3
addss xmm2, xmm9
movss dword [rbp + 0x1c], xmm4
addss xmm1, xmm9
movss dword [rbp + 0x98], xmm3
movss dword [rbp + 0x9c], xmm4
movss dword [rbp + 0x24], xmm0
movaps xmm0, xmm4
mov qword [rbp - 0x30], r15
addss xmm0, xmm7
movss dword [rbp + 0x20], xmm1
addss xmm2, xmm3
movss dword [rbp + 0xa4], xmm0
movss dword [rbp + 0xa0], xmm2
test r14b, r14b
je 0x180058766
lea r8, [rbp + 0x18]
mov edx, esi
lea rcx, [rbp + 0x98]
call fcn.180007410
test al, al
jne 0x180058701
movss xmm1, dword [rbp + 0xa4]
lea rcx, [rbp + 0xa8]
subss xmm1, dword [rbp + 0x9c]
movss xmm0, dword [rbp + 0xa0]
subss xmm0, dword [rbp + 0x98]
movss dword [rbp + 0xac], xmm1
movss xmm1, dword [rdi + 0x1594]
movss dword [rbp + 0xa8], xmm0
call fcn.1800072c0
call fcn.180010d40
xor al, al
mov rcx, qword [rbp + 0xc8]
xor rcx, rsp
call fcn.180076c50
lea r11, [rsp + 0x278]
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]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
movss xmm0, dword [rbp + 0x20]
lea rdx, [rbp - 0x38]
movss xmm1, dword [rbp + 0x24]
xor r8d, r8d
movss xmm8, dword [rbp + 0x18]
mov ecx, esi
movss xmm10, dword [rbp + 0x1c]
subss xmm0, xmm8
subss xmm1, xmm10
movss dword [rbp - 0x38], xmm0
movss dword [rbp - 0x34], xmm1
call fcn.18000aae0
test al, al
jne 0x180058747
call fcn.18000a850
jmp 0x1800586b0
mov rbx, qword [rdi + 0x1a18]
mov qword [rbp - 0x30], rbx
mov eax, dword [rbx + 0x13c]
or dword [rbx + 0x144], eax
subss xmm9, dword [rbx + 0x74]
jmp 0x1800587aa
subss xmm2, xmm3
movaps xmm1, xmm6
subss xmm0, xmm4
lea rcx, [rbp - 0x38]
movss dword [rbp - 0x38], xmm2
movss dword [rbp - 0x34], xmm0
call fcn.1800072c0
lea r8, [rbp + 0x18]
mov edx, esi
lea rcx, [rbp + 0x98]
call fcn.180007410
test al, al
je 0x1800586b5
movss xmm10, dword [rbp + 0x1c]
movss xmm8, dword [rbp + 0x18]
mov edx, esi
movaps xmmword [rsp + 0x1e0], xmm14
lea rcx, [rbp + 0x18]
call fcn.180007640
mov byte [rbp - 0x6b], al
movzx r11d, al
test al, al
je 0x1800587d3
mov dword [rdi + 0x1e90], 1
lea r14, [rdi + 0x1f88]
mov edx, esi
cmp dword [r14], esi
mov rbx, r14
mov rcx, r15
cmovne rbx, r13
mov qword [rbp + 0x98], rbx
call fcn.1800077a0
movzx esi, al
test al, al
je 0x180058819
cmp qword [rdi + 0x1cb8], r15
jne 0x180058819
mov ecx, dword [r15 + 0x178]
cmp dword [rdi + 0x1cc8], ecx
jne 0x180058819
mov r13b, 1
jmp 0x180058823
mov byte [rsp + 0x68], 1
test sil, sil
jne 0x180058828
mov byte [rsp + 0x68], 0
test r11b, r11b
je 0x18005883b
cmp byte [rdi + 0x420], 0
je 0x18005883b
mov r12b, 1
jmp 0x18005883e
xor r12b, r12b
mov edi, dword [rdi + 0x1a60]
mov byte [rsp + 0x60], r12b
cmp edi, edx
je 0x180058871
mov rax, qword [rbp - 0x80]
cmp dword [rax + 0x1b98], edx
je 0x18005886a
cmp dword [rax + 0x1b8c], edx
jne 0x180058871
cmp dword [rax + 0x1bac], 3
jne 0x180058871
mov byte [rsp + 0x70], 1
jmp 0x180058876
mov byte [rsp + 0x70], 0
mov eax, dword [rsp + 0x78]
test al, al
je 0x1800588c0
test rbx, rbx
je 0x1800588c0
test edi, edi
jne 0x1800588c0
mov rcx, qword [rbp - 0x30]
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.180004050
mov rcx, qword [rbp - 0x80]
cmp dword [rcx + 0x1a9c], eax
jne 0x1800588bc
mov bl, 1
jmp 0x1800588d0
mov eax, dword [rsp + 0x78]
xor bl, bl
test al, al
je 0x1800588fd
cmp qword [rbp + 0x98], 0
je 0x1800588fd
mov rcx, qword [rbp - 0x30]
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.180004050
cmp edi, eax
jne 0x1800588fd
mov al, 1
jmp 0x1800588ff
xor al, al
mov edx, dword [rbp - 0x68]
movzx ecx, byte [rsp + 0x70]
mov byte [rsp + 0x50], al
mov byte [rsp + 0x71], 0
cmp edi, edx
je 0x18005892d
test byte [rbp + 0x1e8], 0x10
jne 0x180058921
test cl, cl
je 0x18005892d
cmp byte [rsp + 0x78], 0
mov byte [rsp + 0x74], 1
je 0x180058932
mov byte [rsp + 0x74], 0
test sil, sil
jne 0x180058aaf
test r12b, r12b
jne 0x180058aaf
test bl, bl
jne 0x180058aaf
test cl, cl
jne 0x180058aaf
test al, al
jne 0x180058ab2
mov rsi, qword [rbp + 0x98]
mov r14d, edx
mov r13d, dword [rsp + 0x74]
mov rdi, qword [rbp - 0x80]
cmp dword [rdi + 0x1a60], r14d
je 0x180058a00
test r12b, r12b
je 0x180058a00
mov rdx, r15
mov ecx, r14d
call fcn.180007120
call fcn.1800071f0
mov rcx, r15
call fcn.18000f830
mov eax, dword [rdi + 0x1a74]
mov ecx, dword [rsp + 0x78]
or eax, 3
mov edx, dword [rbp + 0x1e8]
mov dword [rdi + 0x1a74], eax
test cl, cl
jne 0x1800589ba
test dl, dl
jns 0x1800589c3
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 0x1800589ed
or rax, 0x60
mov qword [rdi + 0x1a80], rax
test edx, 0x440
je 0x180058a00
or rax, 1
mov qword [rdi + 0x1a80], rax
mov r10, qword [0x1800bb2c8]
mov qword [rsp + 0x58], r10
cmp dword [rdi + 0x1a60], r14d
jne 0x180058cd3
test rsi, rsi
jne 0x180058a77
mov ecx, dword [r10 + 0x1a60]
test ecx, ecx
setne al
xor r8d, r8d
mov byte [r10 + 0x1a6c], al
test ecx, ecx
je 0x180058a47
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 0x180058cd3
cmp byte [rdi + 0x420], 0
je 0x180058cdf
test bl, bl
jne 0x180058cdf
test r12b, r12b
jne 0x180058cdf
mov byte [rsp + 0x71], 1
mov r12b, 1
jmp 0x180058ce7
mov r12b, 1
mov rsi, qword [rbp + 0x98]
mov bl, 1
mov qword [rbp + 0x98], rsi
cmp edi, edx
je 0x180058963
mov rsi, r14
mov qword [rbp + 0x98], r14
mov dword [r14 + 0xe70], 0xbe99999a
mov rax, 0xffffffffffffffff
mov r14, qword [rbp - 0x50]
nop word [rax + rax]
cmp byte [r14 + rax + 1], 0
lea rax, [rax + 1]
jne 0x180058af0
mov ecx, dword [rsi + 0x34]
lea ebx, [rax + 1]
cmp ebx, ecx
jle 0x180058b2a
test ecx, ecx
je 0x180058b15
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x180058b1a
mov eax, 8
cmp eax, ebx
lea rcx, [rsi + 0x30]
mov edx, ebx
cmovg edx, eax
call fcn.18001a6b0
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 - 0x70]
mov ecx, dword [rsi + 0x14]
inc ebx
cmp ebx, ecx
jle 0x180058b6c
test ecx, ecx
je 0x180058b57
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x180058b5c
mov eax, 8
cmp eax, ebx
lea rcx, [rsi + 0x10]
mov edx, ebx
cmovg edx, eax
call fcn.18001a810
mov dword [rsi + 0x10], ebx
mov ecx, dword [rsi + 0x24]
test ecx, ecx
jns 0x180058b93
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.18001a6b0
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 - 0x70]
dec rsi
lea rsi, [r14 + rsi*2]
cmp r14, rsi
jae 0x180058bed
cmp byte [rdi], 0
je 0x180058beb
xor r8d, r8d
lea rcx, [rsp + 0x64]
mov rdx, rdi
call fcn.180004410
movsxd rcx, eax
mov eax, dword [rsp + 0x64]
add rdi, rcx
test eax, eax
je 0x180058beb
cmp eax, 0xffff
ja 0x180058be6
mov word [rbx], ax
add rbx, 2
cmp rbx, rsi
jb 0x180058bb5
xor ecx, ecx
mov rsi, qword [rbp + 0x98]
sub edi, dword [rbp - 0x50]
mov word [rbx], cx
sub rbx, r14
mov r14d, dword [rbp - 0x68]
sar rbx, 1
mov dword [rsi + 4], ebx
mov dword [rsi + 8], edi
cmp dword [rsi], r14d
jne 0x180058c33
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 0x180058c90
mov dword [rsi + 0xe68], ecx
mov dword [rsi + 0x60], ecx
mov ecx, dword [rsp + 0x78]
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 0x180058c94
mov ecx, dword [rsp + 0x74]
test r13b, r13b
movzx ecx, cl
mov eax, 1
cmovne ecx, eax
mov dword [rsp + 0x74], ecx
mov ecx, dword [rsp + 0x78]
mov edx, dword [rbp + 0x1e8]
bt edx, 0xd
jae 0x180058ca4
mov byte [rsi + 0x58], 1
test cl, cl
jne 0x180058ccc
cmp byte [rsp + 0x68], cl
jne 0x180058cc0
cmp byte [rsp + 0x60], cl
je 0x180058ccc
mov rax, qword [rbp - 0x80]
cmp byte [rax + 0x148], cl
je 0x180058ccc
mov r13b, 1
movzx ebx, r13b
jmp 0x18005896b
mov bl, 1
jmp 0x180058966
test rsi, rsi
je 0x180058ce4
cmp byte [rsp + 0x50], 0
je 0x180058ce4
mov r12b, 1
jmp 0x180058ce7
xor r12b, r12b
mov byte [rsp + 0x50], r12b
test rsi, rsi
je 0x180058d02
mov eax, dword [rsi + 0x54]
cmp dword [rsi + 0x50], eax
je 0x180058d02
test r12b, r12b
je 0x180058d02
mov dl, 1
jmp 0x180058d04
xor dl, dl
mov eax, dword [rsp + 0x6c]
mov dword [rbp - 0x48], edx
movzx r15d, dl
mov byte [rbp - 0x78], 0
mov byte [rsp + 0x68], 0
test al, al
je 0x180058e2c
test rsi, rsi
je 0x180058e2c
test r12b, r12b
jne 0x180058d36
test dl, dl
je 0x180058e35
mov ecx, dword [rsi + 0x14]
lea rbx, [rsi + 0x10]
mov esi, dword [rbp - 0x70]
inc esi
cmp esi, ecx
jle 0x180058d75
test ecx, ecx
je 0x180058d55
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x180058d5a
mov eax, 8
cmp eax, esi
mov edx, esi
mov rcx, rbx
cmovg edx, eax
call fcn.18001a810
mov r14, qword [0x1800bb2c8]
mov qword [rsp + 0x58], r14
mov rdx, qword [rbp + 0x98]
mov rcx, qword [rbp - 0x50]
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 0x180058dda
nop dword [rax + rax]
cmp byte [rdi], 0
je 0x180058dd6
xor r8d, r8d
lea rcx, [rsp + 0x64]
mov rdx, rdi
call fcn.180004410
movsxd rcx, eax
mov eax, dword [rsp + 0x64]
add rdi, rcx
test eax, eax
je 0x180058dd6
cmp eax, 0xffff
ja 0x180058dd1
mov word [rbx], ax
add rbx, 2
cmp rbx, rsi
jb 0x180058da0
mov rcx, qword [rbp - 0x50]
mov rsi, qword [rbp + 0x98]
sub edi, ecx
mov r10, qword [rsp + 0x58]
xor edx, edx
mov eax, dword [rsp + 0x6c]
mov word [rbx], dx
sub rbx, r14
mov r14d, dword [rbp - 0x68]
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 + 8], edi
cmovl ebx, dword [rsi + 0x54]
cmp ecx, ebx
mov dword [rsi + 0x50], ecx
mov dword [rsi + 0x54], ebx
cmovne edx, r15d
mov dword [rbp - 0x48], edx
test r12b, r12b
jne 0x180058e59
test dl, dl
jne 0x180058e59
mov r12, qword [rbp - 0x80]
cmp dword [r12 + 0x1a60], r14d
je 0x180058e5d
xor al, al
cmp qword [rbp - 0x60], 0
mov byte [rbp - 0x6c], al
je 0x180058e7c
test al, al
je 0x180058e6f
mov rax, qword [rsi + 0x28]
jmp 0x180058e73
mov r12, qword [rbp - 0x80]
test al, al
jne 0x180058e43
test rsi, rsi
je 0x180058e43
cmp byte [rsi + 0x40], al
je 0x180058e43
mov al, 1
jmp 0x180058e45
mov rax, qword [rbp - 0x50]
cmp byte [rax], 0
jne 0x180058e7c
mov al, 1
jmp 0x180058e7e
xor al, al
mov edi, dword [rbp - 0x44]
mov byte [rsp + 0x60], al
test dil, dil
je 0x180058f4d
test al, al
jne 0x180058f4d
mov rdx, qword [r12 + 0x1908]
cmp dword [rdx + 0x18], 0x2a
jg 0x180058eaa
mov r9, qword [rdx + 0x38]
jmp 0x180058ece
mov rax, qword [rdx + 0x20]
movzx ecx, word [rax + 0x54]
mov eax, 0xffff
cmp cx, ax
jne 0x180058ec2
mov r9, qword [rdx + 0x38]
jmp 0x180058ece
mov rax, qword [rdx + 0x30]
lea rcx, [rcx + rcx*4]
lea r9, [rax + rcx*8]
mov eax, dword [rdx + 0x14]
lea r8, [r12 + 0x2e18]
mov dword [r8 + 0x14], eax
mov rax, qword [r12 + 0x1908]
mov ecx, dword [rax + 0x60]
mov dword [r8 + 0x60], ecx
mov rcx, r8
mov rax, qword [r12 + 0x1908]
movsd xmm0, qword [rax + 0x40]
movsd qword [r8 + 0x40], xmm0
mov rax, qword [r12 + 0x1908]
mov edx, dword [rax + 0x64]
mov dword [r8 + 0x64], edx
mov rax, qword [r12 + 0x1908]
mov edx, dword [rax + 0x68]
mov dword [r8 + 0x68], edx
mov rax, qword [r12 + 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.18000ff50
mov r10, qword [0x1800bb2c8]
mov qword [rsp + 0x58], r10
xor r8d, r8d
mov ecx, 0x20000c
mov dword [rsp + 0x74], r8d
cmp dword [r12 + 0x1a60], r14d
jne 0x1800593d5
mov eax, dword [rsi + 8]
mov r15, qword [rbp - 0x20]
mov r9, qword [rbp - 0x40]
mov r11d, dword [rbp + 0x1e8]
mov dword [rsi + 0xe78], r11d
mov qword [rsi + 0xe80], r15
mov qword [rsi + 0xe88], r9
mov dword [rsp + 0x74], eax
mov eax, dword [rbp - 0x70]
mov dword [rsi + 0x44], eax
cmp byte [r12 + 0x138], r8b
mov dword [r12 + 0x315c], 1
sete al
mov byte [r12 + 0x1a6d], al
movss xmm6, dword [r12 + 0x130]
subss xmm6, xmm8
subss xmm6, dword [r12 + 0x1590]
addss xmm6, dword [rsi + 0x48]
cmp byte [rsp + 0x78], r8b
je 0x180058fff
mov rax, qword [rbp - 0x30]
movss xmm2, dword [r12 + 0x134]
subss xmm2, dword [rax + 0xd4]
subss xmm2, dword [r12 + 0x1594]
jmp 0x180059011
movss xmm2, dword [r12 + 0x1910]
mulss xmm2, dword [0x1800ab100]
movzx edi, byte [r12 + 0xc9]
test r13b, r13b
jne 0x1800591a4
movzx eax, byte [rbp - 0x6b]
test al, al
je 0x18005903e
test dil, dil
jne 0x1800590ab
cmp byte [r12 + 0x425], r8b
jne 0x1800591a4
cmp byte [r12 + 0x420], r8b
je 0x180059110
cmp byte [rsi + 0xe75], r8b
jne 0x180059110
test al, al
je 0x1800591bc
cmp byte [rsi + 0x5c], r8b
je 0x180059078
mov rdx, rsi
lea rcx, [rbp]
call fcn.180056470
movss xmm2, dword [rbp + 0xc]
movaps xmm1, xmm6
mov rcx, rsi
call fcn.180056980
mov r10, qword [rsp + 0x58]
mov r11d, dword [rbp + 0x1e8]
mov dword [rsi + 0x4c], eax
mov dword [rsi + 0x50], eax
mov dword [rsi + 0x54], eax
mov byte [rsi + 0x5b], 0
mov dword [rsi + 0xe70], 0xbe99999a
jmp 0x1800591bc
cmp byte [r12 + 0x425], r8b
je 0x18005903e
mov r8d, ecx
lea rdx, [rsi + 0x4c]
mov rcx, rsi
call fcn.180056e70
mov r8d, 0x60000d
mov byte [rsi + 0xe74], 1
lea rdx, [rsi + 0x4c]
mov dword [rsi + 0xe70], 0xbe99999a
mov rcx, rsi
call fcn.180056e70
mov r10, qword [0x1800bb2c8]
mov r11d, dword [rbp + 0x1e8]
mov qword [rsp + 0x58], r10
mov byte [rsi + 0xe74], 1
mov dword [rsi + 0xe70], 0xbe99999a
jmp 0x1800591bc
cmp byte [r12 + 0x138], r8b
je 0x1800591bc
cmp byte [rsi + 0xe75], r8b
jne 0x1800591bc
movss xmm0, dword [r12 + 0x3c0]
ucomiss xmm0, xmm12
jp 0x18005914f
jne 0x18005914f
movss xmm0, dword [r12 + 0x3c4]
ucomiss xmm0, xmm12
jp 0x18005914f
je 0x1800591bc
cmp byte [rsi + 0x5c], r8b
je 0x180059166
mov rdx, rsi
lea rcx, [rbp]
call fcn.180056470
movss xmm2, dword [rbp + 0xc]
mov eax, dword [rsi + 0x54]
cmp dword [rsi + 0x50], eax
jne 0x180059174
mov eax, dword [rsi + 0x4c]
mov dword [rsi + 0x50], eax
movaps xmm1, xmm6
mov rcx, rsi
call fcn.180056980
mov r10, qword [rsp + 0x58]
mov r11d, dword [rbp + 0x1e8]
mov dword [rsi + 0x54], eax
mov dword [rsi + 0x4c], eax
mov dword [rsi + 0xe70], 0xbe99999a
mov byte [rsi + 0xe74], 1
jmp 0x1800591bc
mov eax, dword [rsi + 4]
mov dword [rsi + 0x54], eax
mov dword [rsi + 0x4c], eax
mov dword [rsi + 0x50], r8d
mov byte [rsi + 0x5b], r8b
mov byte [rsi + 0xe75], 1
cmp byte [rsi + 0xe75], 0
je 0x1800591d7
cmp byte [r12 + 0x138], 0
jne 0x1800591d7
mov byte [rsi + 0xe75], 0
cmp byte [r12 + 0x148], 0
je 0x1800591ed
cmp byte [r12 + 0x14a], 0
je 0x1800591fd
test dil, dil
je 0x180059201
cmp byte [r12 + 0x14b], 0
je 0x180059201
mov bl, 1
jmp 0x180059203
xor bl, bl
bt r11d, 0xa
jae 0x1800592cd
mov ecx, dword [r10 + 0x3c]
test ecx, ecx
js 0x1800592cd
call fcn.18000a2d0
test al, al
mov eax, dword [rsp + 0x6c]
je 0x1800592c7
test bl, bl
jne 0x1800592c7
cmp byte [r12 + 0x149], bl
jne 0x1800592c7
test al, al
jne 0x1800592c7
mov rcx, qword [r12 + 0x1550]
movsxd rax, dword [r12 + 0x1548]
lea rdx, [rcx + rax*2]
cmp rcx, rdx
jae 0x180059274
movzx eax, word [rcx]
add rcx, 2
cmp ax, 9
je 0x1800592cd
cmp rcx, rdx
jb 0x180059262
mov r13, qword [rbp - 0x40]
lea rcx, [rsp + 0x64]
mov r9, r13
mov dword [rsp + 0x64], 9
mov r8, r15
mov edx, r11d
call fcn.1800581e0
test al, al
je 0x1800592b9
mov r8d, dword [rsp + 0x64]
lea rdx, [rsi + 0x4c]
mov rcx, rsi
call fcn.180056e70
mov byte [rsi + 0xe74], 1
mov dword [rsi + 0xe70], 0xbe99999a
mov r10, qword [0x1800bb2c8]
mov qword [rsp + 0x58], r10
jmp 0x1800592d1
mov r13, qword [rbp - 0x40]
jmp 0x1800592d5
mov r13, qword [rbp - 0x40]
mov eax, dword [rsp + 0x6c]
cmp dword [r12 + 0x1548], 0
jle 0x1800593cf
test bl, bl
jne 0x180059389
test al, al
jne 0x180059389
cmp byte [rsp + 0x70], al
jne 0x180059389
mov r14d, dword [rbp + 0x1e8]
xor eax, eax
mov edi, eax
mov ebx, eax
nop dword [rax + rax]
mov rax, qword [r12 + 0x1550]
movzx ecx, word [rax + rbx]
mov dword [rsp + 0x64], ecx
cmp ecx, 9
jne 0x180059330
cmp byte [r12 + 0x149], 0
jne 0x180059369
mov r9, r13
lea rcx, [rsp + 0x64]
mov r8, r15
mov edx, r14d
call fcn.1800581e0
test al, al
je 0x180059369
mov r8d, dword [rsp + 0x64]
lea rdx, [rsi + 0x4c]
mov rcx, rsi
call fcn.180056e70
mov byte [rsi + 0xe74], 1
mov dword [rsi + 0xe70], 0xbe99999a
inc edi
add rbx, 2
cmp edi, dword [r12 + 0x1548]
jl 0x180059310
mov r10, qword [0x1800bb2c8]
mov r14d, dword [rbp - 0x68]
mov qword [rsp + 0x58], r10
mov ecx, dword [r12 + 0x154c]
test ecx, ecx
jns 0x1800593c2
mov eax, ecx
xor r8d, r8d
cdq
sub eax, edx
mov edx, r8d
sar eax, 1
add eax, ecx
lea rcx, [r12 + 0x1548]
test eax, eax
cmovg edx, eax
call fcn.18001a810
mov r10, qword [0x1800bb2c8]
mov qword [rsp + 0x58], r10
xor r8d, r8d
mov dword [r12 + 0x1548], r8d
jmp 0x1800593d2
xor r8d, r8d
mov edi, dword [rbp - 0x44]
xor cl, cl
mov dword [rsp + 0x64], 0x2400
mov r15d, 0x3ff
cmp dword [r12 + 0x1a60], r14d
jne 0x180059f2c
cmp byte [r12 + 0x1a6c], cl
jne 0x180059f2c
cmp byte [rsp + 0x71], cl
jne 0x180059f2c
movzx ecx, byte [r12 + 0x149]
movzx r12d, byte [r12 + 0xc9]
movzx eax, cl
mov rdx, qword [rbp - 0x80]
neg al
sbb r14d, r14d
and r14d, 0x400000
test r12b, r12b
je 0x18005947e
cmp byte [rdx + 0x14b], 0
je 0x18005944c
cmp byte [rdx + 0x148], 0
mov eax, 1
je 0x18005944f
mov eax, r8d
test eax, eax
jne 0x180059490
xor r15b, r15b
test r12b, r12b
je 0x1800594a2
cmp byte [rdx + 0x14b], 0
je 0x1800594a2
test cl, cl
je 0x1800594a2
cmp byte [rdx + 0x148], 0
jne 0x1800594a2
cmp byte [rdx + 0x14a], 0
jne 0x1800594a2
mov bl, 1
jmp 0x1800594a9
cmp byte [rdx + 0x148], 0
je 0x180059453
cmp byte [rdx + 0x14b], 0
jne 0x180059453
cmp byte [rdx + 0x14a], 0
jne 0x180059453
test cl, cl
jne 0x180059453
mov r15b, 1
jmp 0x180059456
xor bl, bl
test r12b, r12b
je 0x1800594f8
cmp byte [rdx + 0x14b], 0
movzx esi, byte [rdx + 0x14a]
je 0x1800594ff
cmp byte [rdx + 0x148], 0
jne 0x1800594ff
test sil, sil
jne 0x1800594ff
movzx ecx, byte [rdx + 0x148]
mov r11b, 1
xor r8b, r8b
cmp byte [rdx + 0x149], r8b
je 0x18005952b
test cl, cl
jne 0x18005952b
cmp byte [rdx + 0x14a], r8b
jne 0x18005952b
cmp byte [rdx + 0x14b], r8b
jne 0x18005952b
mov r9b, 1
jmp 0x18005952e
movzx esi, byte [rdx + 0x148]
movzx ecx, byte [rdx + 0x148]
xor r11b, r11b
test cl, cl
je 0x1800594d1
cmp byte [rdx + 0x149], r11b
jne 0x1800594d1
cmp byte [rdx + 0x14a], r11b
jne 0x1800594d1
cmp byte [rdx + 0x14b], r11b
jne 0x1800594d1
mov r8b, 1
xor r9b, r9b
test r15b, r15b
je 0x180059547
mov ecx, dword [r10 + 0x88]
test ecx, ecx
js 0x180059547
call fcn.18000a2d0
test al, al
jne 0x18005955d
test r9b, r9b
je 0x180059584
mov ecx, dword [r10 + 0x64]
test ecx, ecx
js 0x180059584
call fcn.18000a2d0
test al, al
je 0x180059584
cmp byte [rsp + 0x6c], 0
jne 0x180059584
test dil, dil
mov rdi, qword [rbp + 0x98]
jne 0x18005958b
cmp byte [rsp + 0x78], 0
je 0x18005957f
mov eax, dword [rdi + 0x54]
cmp dword [rdi + 0x50], eax
je 0x18005958b
mov r13b, 1
jmp 0x18005958e
mov rdi, qword [rbp + 0x98]
xor r13b, r13b
test r15b, r15b
je 0x1800595a7
mov ecx, dword [r10 + 0x80]
test ecx, ecx
js 0x1800595a7
call fcn.18000a2d0
test al, al
jne 0x1800595bd
test r8b, r8b
je 0x1800595d7
mov ecx, dword [r10 + 0x60]
test ecx, ecx
js 0x1800595d7
call fcn.18000a2d0
test al, al
je 0x1800595d7
cmp byte [rbp - 0x44], 0
jne 0x1800595d7
cmp byte [rsp + 0x78], 0
je 0x1800595d2
mov eax, dword [rdi + 0x54]
cmp dword [rdi + 0x50], eax
je 0x1800595d7
mov dil, 1
jmp 0x1800595da
xor dil, dil
test r15b, r15b
je 0x1800595f3
mov ecx, dword [r10 + 0x84]
test ecx, ecx
js 0x1800595f3
call fcn.18000a2d0
test al, al
jne 0x180059609
test r9b, r9b
je 0x180059618
mov ecx, dword [r10 + 0x60]
test ecx, ecx
js 0x180059618
call fcn.18000a2d0
test al, al
je 0x180059618
mov r9d, dword [rsp + 0x6c]
test r9b, r9b
jne 0x18005961d
mov r10b, 1
jmp 0x180059620
mov r9d, dword [rsp + 0x6c]
xor r10b, r10b
mov r8, qword [rsp + 0x58]
test r15b, r15b
je 0x18005964e
mov ecx, dword [r8 + 0x90]
test ecx, ecx
js 0x18005964e
call fcn.18000a2d0
test al, al
je 0x18005964e
test r9b, r9b
jne 0x18005964e
cmp byte [rbp - 0x74], r9b
je 0x18005964e
mov r9b, 1
jmp 0x180059656
xor r9b, r9b
test r15b, r15b
je 0x18005966a
mov ecx, dword [r8 + 0x8c]
test ecx, ecx
js 0x18005966a
call fcn.18000a2d0
test al, al
jne 0x180059682
test bl, bl
je 0x180059694
mov ecx, dword [r8 + 0x90]
test ecx, ecx
js 0x180059694
call fcn.18000a2d0
test al, al
je 0x180059694
cmp byte [rsp + 0x6c], 0
jne 0x180059694
cmp byte [rbp - 0x74], 0
je 0x180059694
mov r8b, 1
jmp 0x180059697
xor r8b, r8b
mov rbx, qword [rsp + 0x58]
mov ecx, dword [rbx + 0x40]
test ecx, ecx
js 0x18005970a
call fcn.18000a2d0
test al, al
je 0x18005970a
test r11b, r11b
je 0x1800596b8
mov ecx, 0x200004
jmp 0x1800596c8
mov ecx, 0x200000
mov eax, 0x20000c
test sil, sil
cmovne ecx, eax
or ecx, r14d
mov r8d, ecx
mov rsi, qword [rbp + 0x98]
mov rcx, rsi
lea rdx, [rsi + 0x4c]
call fcn.180056e70
mov byte [rsi + 0xe74], 1
mov dword [rsi + 0xe70], 0xbe99999a
mov rcx, qword [0x1800bb2c8]
mov r12, qword [rbp - 0x80]
mov r14, rcx
mov qword [rsp + 0x58], rcx
jmp 0x180059a3b
mov ecx, dword [rbx + 0x44]
test ecx, ecx
js 0x180059730
call fcn.18000a2d0
test al, al
je 0x180059730
test r11b, r11b
je 0x180059726
mov ecx, 0x200005
jmp 0x1800596c8
mov ecx, 0x200001
lea eax, [rcx + 0xc]
jmp 0x1800596c2
mov ecx, dword [rbx + 0x48]
test ecx, ecx
js 0x1800597d5
call fcn.18000a2d0
test al, al
je 0x1800597d5
cmp byte [rsp + 0x78], 0
je 0x1800597d5
mov r12, qword [rbp - 0x80]
mov rsi, qword [rbp + 0x98]
cmp byte [r12 + 0x148], 0
je 0x180059795
mov rdx, qword [rbp - 0x30]
xor r8d, r8d
mov r14, rbx
movss xmm0, dword [rdx + 0x58]
subss xmm0, dword [r12 + 0x1910]
mov dword [rdx + 0x70], r8d
maxss xmm0, xmm12
movss dword [rdx + 0x68], xmm0
jmp 0x180059a3b
movzx eax, r11b
lea r8d, [rax*4 + 0x200002]
or r8d, r14d
lea rdx, [rsi + 0x4c]
mov rcx, rsi
call fcn.180056e70
mov rcx, qword [0x1800bb2c8]
mov qword [rsp + 0x58], rcx
mov r14, rcx
mov byte [rsi + 0xe74], 1
mov dword [rsi + 0xe70], 0xbe99999a
jmp 0x180059a3b
mov ecx, dword [rbx + 0x4c]
test ecx, ecx
js 0x180059846
call fcn.18000a2d0
test al, al
je 0x180059846
cmp byte [rsp + 0x78], 0
je 0x180059846
mov r12, qword [rbp - 0x80]
mov rsi, qword [rbp + 0x98]
cmp byte [r12 + 0x148], 0
je 0x180059835
mov rcx, qword [rbp - 0x30]
xor r8d, r8d
movss xmm0, dword [r12 + 0x1910]
mov r14, 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 0x180059a3b
movzx eax, r11b
lea r8d, [rax*4 + 0x200003]
jmp 0x1800597a1
mov ecx, dword [rbx + 0x58]
mov r11, rbx
test ecx, ecx
js 0x180059887
call fcn.18000a2d0
test al, al
je 0x180059887
mov r12, qword [rbp - 0x80]
mov eax, r14d
mov rsi, qword [rbp + 0x98]
or eax, 0x200006
mov r8d, 0x200004
or r8d, r14d
cmp byte [r12 + 0x148], 0
cmovne r8d, eax
jmp 0x1800597a4
mov ecx, dword [rbx + 0x5c]
test ecx, ecx
js 0x1800598c5
call fcn.18000a2d0
test al, al
je 0x1800598c5
mov r12, qword [rbp - 0x80]
mov eax, r14d
mov rsi, qword [rbp + 0x98]
or eax, 0x200007
mov r8d, 0x200005
or r8d, r14d
cmp byte [r12 + 0x148], 0
cmovne r8d, eax
jmp 0x1800597a4
mov ecx, dword [rbx + 0x64]
test ecx, ecx
js 0x1800598ec
call fcn.18000a2d0
mov ebx, dword [rsp + 0x6c]
test al, al
je 0x1800598f0
test bl, bl
jne 0x1800598f0
or r14d, 0x200008
mov r8d, r14d
jmp 0x1800596ce
mov ebx, dword [rsp + 0x6c]
mov ecx, dword [r11 + 0x68]
test ecx, ecx
js 0x1800599d4
call fcn.18000a2d0
test al, al
je 0x1800599d4
test bl, bl
jne 0x1800599d4
mov rdx, qword [rbp + 0x98]
mov eax, dword [rdx + 0x54]
cmp dword [rdx + 0x50], eax
jne 0x1800599be
test sil, sil
mov rsi, rdx
je 0x180059962
add rdx, 0x4c
mov r8d, 0x60000c
mov rcx, rsi
call fcn.180056e70
mov r12, qword [rbp - 0x80]
or r14d, 0x200009
mov r8d, r14d
mov byte [rsi + 0xe74], 1
mov dword [rsi + 0xe70], 0xbe99999a
jmp 0x1800597a4
test r12b, r12b
je 0x1800599c1
mov r12, qword [rbp - 0x80]
cmp byte [r12 + 0x14b], 0
je 0x1800599c5
cmp byte [r12 + 0x14a], 0
jne 0x1800599c5
cmp byte [r12 + 0x148], 0
jne 0x1800599c5
add rdx, 0x4c
mov r8d, 0x600004
mov rcx, rsi
call fcn.180056e70
or r14d, 0x200009
mov byte [rsi + 0xe74], 1
mov r8d, r14d
mov dword [rsi + 0xe70], 0xbe99999a
jmp 0x1800597a4
mov rsi, rdx
mov r12, qword [rbp - 0x80]
or r14d, 0x200009
mov r8d, r14d
jmp 0x1800597a4
mov ecx, dword [r11 + 0x70]
test ecx, ecx
js 0x1800599e5
call fcn.18000a2d0
test al, al
jne 0x1800599fe
mov ecx, dword [r11 + 0x78]
test ecx, ecx
js 0x180059aa4
call fcn.18000a2d0
test al, al
je 0x180059aa4
mov edx, dword [rbp + 0x1e8]
mov eax, edx
mov r12, qword [rbp - 0x80]
shr eax, 0xb
and al, 1
cmp byte [rsp + 0x78], 0
je 0x180059a27
movzx ecx, byte [r12 + 0x148]
test al, al
je 0x180059a69
test cl, cl
jne 0x180059a6d
mov byte [rsp + 0x71], 1
mov byte [rsp + 0x68], 1
mov r14, r11
mov rsi, qword [rbp + 0x98]
xor cl, cl
mov eax, dword [rsi + 0x54]
cmp dword [rsi + 0x50], eax
je 0x180059f1a
cmp byte [rsp + 0x50], 0
je 0x180059f1a
mov edx, dword [rbp - 0x48]
mov al, 1
or dl, al
mov r15d, 0x3ff
mov dword [rbp - 0x48], edx
jmp 0x180059f31
test cl, cl
jne 0x180059a27
test bl, bl
jne 0x180059a31
mov r9, qword [rbp - 0x40]
lea rcx, [rsp + 0x64]
mov r8, qword [rbp - 0x20]
mov dword [rsp + 0x64], 0xa
call fcn.1800581e0
test al, al
je 0x180059b69
mov rsi, qword [rbp + 0x98]
mov r8d, dword [rsp + 0x64]
jmp 0x1800597a4
mov ecx, dword [r11 + 0x74]
test ecx, ecx
js 0x180059ace
call fcn.18000a2d0
test al, al
je 0x180059ace
mov rsi, qword [rbp + 0x98]
mov cl, 1
mov r12, qword [rbp - 0x80]
mov r14, r11
mov byte [rsp + 0x71], cl
jmp 0x180059a3d
test r9b, r9b
jne 0x180059eb6
test r8b, r8b
jne 0x180059eb6
test r15b, r15b
je 0x180059b24
mov ecx, dword [r11 + 0x7c]
test ecx, ecx
js 0x180059b24
call fcn.18000a2d0
test al, al
je 0x180059b24
mov rsi, qword [rbp + 0x98]
xor r8d, r8d
mov r12, qword [rbp - 0x80]
mov r14, r11
mov eax, dword [rsi + 4]
mov dword [rsi + 0x54], eax
mov dword [rsi + 0x4c], eax
mov dword [rsi + 0x50], r8d
mov byte [rsi + 0x5b], r8b
mov byte [rsi + 0xe74], 1
jmp 0x180059a3b
test r13b, r13b
jne 0x180059d09
test dil, dil
jne 0x180059d09
test r10b, r10b
je 0x180059f07
mov rax, qword [r11 + 0x100]
test rax, rax
je 0x180059b7d
mov rcx, qword [r11 + 0x110]
call rax
mov rbx, rax
test rax, rax
je 0x180059b65
mov r11, qword [0x1800bb2c8]
jmp 0x180059b84
mov r12, qword [rbp - 0x80]
mov rcx, qword [0x1800bb2c8]
mov qword [rsp + 0x58], rcx
mov r14, rcx
jmp 0x180059a34
lea rbx, [0x1800a042e]
mov rax, 0xffffffffffffffff
nop dword [rax + rax]
inc rax
cmp byte [rbx + rax], 0
jne 0x180059b90
test r11, r11
je 0x180059ba5
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 - 0x38], rax
mov r14, rax
mov esi, r12d
cmp byte [rbx], r12b
je 0x180059c1a
mov r15, qword [rbp - 0x20]
mov rdi, rax
mov r14, qword [rbp - 0x40]
xor r8d, r8d
lea rcx, [rbp - 0x74]
mov rdx, rbx
call fcn.180004410
movsxd rcx, eax
add rbx, rcx
cmp dword [rbp - 0x74], r12d
je 0x180059c16
mov edx, dword [rbp + 0x1e8]
lea rcx, [rbp - 0x74]
mov r9, r14
mov r8, r15
call fcn.1800581e0
test al, al
je 0x180059c11
movzx eax, word [rbp - 0x74]
inc esi
mov word [rdi], ax
add rdi, 2
cmp byte [rbx], r12b
jne 0x180059bd0
mov r14, qword [rbp - 0x38]
movsxd rax, esi
mov word [r14 + rax*2], r12w
test esi, esi
jle 0x180059cdd
mov rdi, qword [rbp + 0x98]
mov edx, dword [rdi + 0x54]
lea rbx, [rdi + 0x4c]
mov ecx, dword [rbx + 4]
mov eax, dword [rdi + 4]
cmp ecx, edx
je 0x180059c5a
cmp ecx, eax
jle 0x180059c4b
mov dword [rbx + 4], eax
mov ecx, eax
cmp edx, eax
jle 0x180059c54
mov dword [rbx + 8], eax
mov edx, eax
cmp ecx, edx
jne 0x180059c5a
mov dword [rbx], ecx
cmp dword [rbx], eax
jle 0x180059c60
mov dword [rbx], eax
mov rdx, rbx
mov rcx, rdi
call fcn.180056dd0
mov edx, dword [rbx]
mov r9d, esi
mov r8, r14
mov rcx, rdi
call fcn.1800567d0
test al, al
je 0x180059cb7
mov edi, dword [rbx]
lea rcx, [rbx + 0x18]
xor edx, edx
call fcn.180057c50
test rax, rax
je 0x180059ca1
mov dword [rax], edi
mov dword [rax + 4], r12d
mov dword [rax + 8], esi
mov dword [rax + 0xc], 0xffffffff
add dword [rbx], esi
mov rsi, qword [rbp + 0x98]
mov byte [rbx + 0xf], r12b
mov byte [rsi + 0xe74], 1
jmp 0x180059ce4
movzx eax, word [rbx + 0xe16]
test ax, ax
je 0x180059ccd
dec ax
mov word [rbx + 0xe16], ax
mov rsi, qword [rbp + 0x98]
mov byte [rsi + 0xe74], 1
jmp 0x180059ce4
mov rsi, qword [rbp + 0x98]
test r14, r14
je 0x180059cfb
mov rax, qword [0x1800bb2c8]
test rax, rax
je 0x180059cfb
dec dword [rax + 0x3bc]
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x1800596f2
mov r12, qword [rbp - 0x80]
cmp qword [r12 + 0x108], 0
je 0x180059e52
mov r15, qword [rbp + 0x98]
mov esi, dword [r15 + 0x54]
mov eax, dword [r15 + 0x50]
cmp eax, esi
je 0x180059d3e
mov r14d, esi
cmovge esi, eax
cmovl r14d, eax
xor r11d, r11d
jmp 0x180059d48
mov esi, dword [r15 + 4]
xor r11d, r11d
mov r14d, r11d
mov rcx, qword [r15 + 0x18]
mov edi, r11d
movsxd rax, esi
mov ebx, 0x800
mov r10d, 0x3ff
mov r9d, 0x80
mov r12d, 0x2800
lea r8, [rcx + rax*2]
movsxd rax, r14d
lea rdx, [rcx + rax*2]
test r8, r8
je 0x180059d7e
cmp rdx, r8
jae 0x180059dc5
movzx ecx, word [rdx]
test cx, cx
je 0x180059dc5
add rdx, 2
cmp cx, r9w
jae 0x180059d94
inc edi
jmp 0x180059d74
cmp cx, bx
jae 0x180059da2
mov eax, 2
add edi, eax
jmp 0x180059d74
movzx eax, cx
add ax, word [rsp + 0x64]
cmp ax, r10w
mov eax, r11d
jbe 0x180059dc1
add cx, r12w
cmp cx, r10w
setbe al
add eax, 3
add edi, eax
jmp 0x180059d74
mov r11, qword [rsp + 0x58]
inc edi
mov r12, qword [rbp - 0x80]
test r11, r11
je 0x180059ddc
inc dword [r11 + 0x3bc]
movsxd rcx, edi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rdx, qword [r15 + 0x18]
mov rbx, rax
movsxd rcx, esi
lea r9, [rdx + rcx*2]
movsxd rcx, r14d
lea r8, [rdx + rcx*2]
mov edx, edi
mov rcx, rax
call fcn.1800045b0
mov r9, qword [0x1800bb2c8]
mov rax, qword [r9 + 0x108]
test rax, rax
je 0x180059e2a
mov rcx, qword [r9 + 0x110]
mov rdx, rbx
call rax
mov r9, qword [0x1800bb2c8]
test rbx, rbx
je 0x180059e3b
test r9, r9
je 0x180059e3b
dec dword [r9 + 0x3bc]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov r14, qword [0x1800bb2c8]
mov qword [rsp + 0x58], r14
jmp 0x180059e55
mov r14, r11
mov rsi, qword [rbp + 0x98]
test r13b, r13b
je 0x180059a3b
mov eax, dword [rsi + 0x54]
cmp dword [rsi + 0x50], eax
jne 0x180059e7f
xor eax, eax
mov byte [rsi + 0x5b], 0
mov dword [rsi + 0x50], eax
mov eax, dword [rsi + 4]
mov dword [rsi + 0x54], eax
mov dword [rsi + 0x4c], eax
mov byte [rsi + 0xe74], 1
mov eax, dword [rsi + 0x54]
cmp dword [rsi + 0x50], eax
je 0x180059a3b
lea rdx, [rsi + 0x4c]
mov rcx, rsi
call fcn.180056dd0
mov rcx, qword [0x1800bb2c8]
mov qword [rsp + 0x58], rcx
mov r14, rcx
mov byte [rsi + 0x5b], 0
jmp 0x180059a3b
mov rsi, qword [rbp + 0x98]
movzx r8d, r9b
mov rcx, rsi
xor r8d, 1
add r8d, 0x20000a
lea rdx, [rsi + 0x4c]
call fcn.180056e70
mov eax, dword [rsi + 0x4c]
mov r14, qword [0x1800bb2c8]
mov r12, qword [rbp - 0x80]
mov dword [rsi + 0x54], eax
mov dword [rsi + 0x50], eax
mov qword [rsp + 0x58], r14
mov byte [rsi + 0xe74], 1
mov dword [rsi + 0xe70], 0xbe99999a
jmp 0x180059a3b
mov rsi, qword [rbp + 0x98]
mov r14, r11
mov r12, qword [rbp - 0x80]
jmp 0x180059a3b
mov edx, dword [rbp - 0x48]
xor al, al
or dl, al
mov r15d, 0x3ff
mov dword [rbp - 0x48], edx
jmp 0x180059f31
mov r14, qword [rsp + 0x58]
mov ebx, dword [rbp - 0x68]
cmp dword [r12 + 0x1a60], ebx
jne 0x18005a5e8
xor r11d, r11d
mov qword [rbp - 0x38], r11
mov r13d, r11d
mov dword [rsp + 0x64], r11d
test cl, cl
je 0x180059fb9
cmp byte [rsp + 0x6c], r11b
jne 0x180059f97
mov r9, qword [rsi + 0x38]
mov rax, qword [rbp - 0x50]
mov r8, r9
sub r8, rax
nop word [rax + rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x180059f83
inc rax
test ecx, ecx
jne 0x180059f70
test edx, edx
je 0x180059f97
mov r13d, dword [rsi + 0x30]
dec r13d
mov qword [rbp - 0x38], r9
mov dword [rsp + 0x64], r13d
mov r9d, dword [rbp + 0x1e8]
cmp byte [rsp + 0x68], r11b
je 0x180059fab
test r9b, 0x20
jne 0x180059fc0
mov r15d, dword [rsp + 0x74]
mov r10, qword [rbp - 0x50]
jmp 0x18005a4fe
mov r9d, dword [rbp + 0x1e8]
cmp byte [rsp + 0x6c], r11b
jne 0x18005a02b
mov eax, dword [rsi + 0x10]
mov byte [rsi + 0x40], 1
mov ecx, dword [rsi + 0x24]
lea ebx, [rax*4 + 1]
cmp ebx, ecx
jle 0x18005a00c
test ecx, ecx
je 0x180059feb
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x180059ff0
mov eax, 8
cmp eax, ebx
lea rcx, [rsi + 0x20]
mov edx, ebx
cmovg edx, eax
call fcn.18001a6b0
mov r14, qword [0x1800bb2c8]
mov qword [rsp + 0x58], r14
mov dword [rsi + 0x20], ebx
xor r9d, r9d
mov r8, qword [rsi + 0x18]
mov edx, ebx
mov rcx, qword [rsi + 0x28]
call fcn.1800045b0
mov r9d, dword [rbp + 0x1e8]
xor r11d, r11d
test r9d, 0x1c0
je 0x18005a4a9
mov r8d, 0x16
test r9b, 0x40
je 0x18005a061
mov ecx, dword [r14 + 0x3c]
test ecx, ecx
js 0x18005a061
call fcn.18000a2d0
test al, al
je 0x18005a061
xor r14d, r14d
lea eax, [r8 + 0x2a]
mov r8d, r14d
jmp 0x18005a0c0
test r9b, r9b
jns 0x18005a0ac
mov ecx, dword [r14 + 0x48]
test ecx, ecx
js 0x18005a089
call fcn.18000a2d0
test al, al
je 0x18005a089
mov r11d, 0x80
xor r14d, r14d
mov eax, r11d
lea r8d, [r11 - 0x7d]
jmp 0x18005a0c6
mov ecx, dword [r14 + 0x4c]
test ecx, ecx
js 0x18005a0ac
call fcn.18000a2d0
test al, al
je 0x18005a0ac
mov r11d, 0x80
xor r14d, r14d
mov eax, r11d
lea r8d, [r11 - 0x7c]
jmp 0x18005a0c6
mov ecx, pe_nt_image_headers64
mov r14d, 0
test ecx, r9d
mov eax, r14d
cmovne eax, ecx
mov r11d, 0x80
test eax, eax
je 0x18005a4b0
mov dword [rbp + 0x28], eax
mov ebx, r14d
mov rax, qword [rbp - 0x40]
mov edi, 0x800
mov qword [rbp + 0x30], rax
mov r13d, 0x2400
mov rax, qword [rsi + 0x28]
mov qword [rbp + 0x40], rax
mov eax, dword [rsi + 8]
mov dword [rbp + 0x48], eax
mov eax, dword [rsi + 0x44]
mov dword [rbp + 0x4c], eax
movsxd rax, dword [rsi + 0x4c]
mov dword [rbp + 0x2c], r9d
mov r9, qword [rsi + 0x18]
mov esi, 0x2800
mov dword [rbp + 0x3c], r8d
mov rdx, r9
mov dword [rbp + 0x38], r14d
mov qword [rbp + 0x51], r14
lea r8, [r9 + rax*2]
mov dword [rbp + 0x59], r14d
mov word [rbp + 0x5d], r14w
mov byte [rbp + 0x5f], 0
mov byte [rbp + 0x50], 0
test r8, r8
je 0x18005a13a
cmp rdx, r8
jae 0x18005a17c
movzx ecx, word [rdx]
test cx, cx
je 0x18005a17c
add rdx, 2
cmp cx, r11w
jae 0x18005a150
inc ebx
jmp 0x18005a130
cmp cx, di
jae 0x18005a15e
mov eax, 2
add ebx, eax
jmp 0x18005a130
lea eax, [rcx + r13]
cmp ax, r15w
mov eax, r14d
jbe 0x18005a178
add cx, si
cmp cx, r15w
setbe al
add eax, 3
add ebx, eax
jmp 0x18005a130
mov rsi, qword [rbp + 0x98]
mov rdx, r9
mov dword [rbp - 0x74], ebx
mov r12d, r14d
mov dword [rbp + 0x54], ebx
movsxd rax, dword [rsi + 0x50]
lea r8, [r9 + rax*2]
mov r9d, 0x2800
nop dword [rax]
test r8, r8
je 0x18005a1aa
cmp rdx, r8
jae 0x18005a1f0
movzx ecx, word [rdx]
test cx, cx
je 0x18005a1f0
add rdx, 2
cmp cx, r11w
jae 0x18005a1c1
inc r12d
jmp 0x18005a1a0
cmp cx, di
jae 0x18005a1d0
mov eax, 2
add r12d, eax
jmp 0x18005a1a0
lea eax, [rcx + r13]
cmp ax, r15w
mov eax, r14d
jbe 0x18005a1eb
add cx, r9w
cmp cx, r15w
setbe al
add eax, 3
add r12d, eax
jmp 0x18005a1a0
mov rsi, qword [rbp + 0x98]
mov r15d, r14d
mov dword [rbp + 0x58], r12d
mov ebx, 0x2800
mov r10d, 0x3ff
movsxd rax, dword [rsi + 0x54]
mov r9, qword [rsi + 0x18]
lea rdx, [r9 + rax*2]
test rdx, rdx
je 0x18005a21f
cmp r9, rdx
jae 0x18005a265
movzx ecx, word [r9]
test cx, cx
je 0x18005a265
add r9, 2
cmp cx, r11w
jae 0x18005a237
inc r15d
jmp 0x18005a215
cmp cx, di
jae 0x18005a246
mov eax, 2
add r15d, eax
jmp 0x18005a215
lea eax, [rcx + r13]
cmp ax, r10w
mov eax, r14d
jbe 0x18005a260
add cx, bx
cmp cx, r10w
setbe al
add eax, 3
add r15d, eax
jmp 0x18005a215
lea rcx, [rbp + 0x28]
mov dword [rbp + 0x5c], r15d
call qword [rbp - 0x20]
movsxd rax, dword [rbp + 0x54]
mov r14, qword [rbp + 0x40]
mov r13d, dword [rsp + 0x64]
cmp eax, dword [rbp - 0x74]
je 0x18005a2dd
lea rdi, [r14 + rax]
mov rbx, r14
xor eax, eax
mov esi, eax
nop dword [rax]
test rdi, rdi
je 0x18005a29a
cmp rbx, rdi
jae 0x18005a2ca
cmp byte [rbx], 0
je 0x18005a2ca
mov r8, rdi
lea rcx, [rsp + 0x64]
mov rdx, rbx
call fcn.180004410
movsxd rcx, eax
mov eax, dword [rsp + 0x64]
add rbx, rcx
test eax, eax
je 0x18005a2ca
mov ecx, 0xffff
cmp eax, ecx
ja 0x18005a290
inc esi
jmp 0x18005a290
mov rdx, qword [rbp + 0x98]
mov dword [rdx + 0x4c], esi
mov byte [rdx + 0xe74], 1
jmp 0x18005a2e0
mov rdx, rsi
movsxd rax, dword [rbp + 0x58]
cmp eax, r12d
je 0x18005a33c
xor r12d, r12d
lea rdi, [r14 + rax]
mov esi, r12d
mov rbx, r14
test rdi, rdi
je 0x18005a300
cmp rbx, rdi
jae 0x18005a330
cmp byte [rbx], r12b
je 0x18005a330
mov r8, rdi
lea rcx, [rsp + 0x64]
mov rdx, rbx
call fcn.180004410
movsxd rcx, eax
mov eax, dword [rsp + 0x64]
add rbx, rcx
test eax, eax
je 0x18005a330
mov ecx, 0xffff
cmp eax, ecx
ja 0x18005a2f6
inc esi
jmp 0x18005a2f6
mov rdx, qword [rbp + 0x98]
mov dword [rdx + 0x50], esi
jmp 0x18005a33f
xor r12d, r12d
movsxd rax, dword [rbp + 0x5c]
cmp eax, r15d
je 0x18005a396
lea rdi, [r14 + rax]
mov rbx, r14
mov esi, r12d
test rdi, rdi
je 0x18005a35c
cmp rbx, rdi
jae 0x18005a38c
cmp byte [rbx], 0
je 0x18005a38c
mov r8, rdi
lea rcx, [rsp + 0x64]
mov rdx, rbx
call fcn.180004410
movsxd rcx, eax
mov eax, dword [rsp + 0x64]
add rbx, rcx
test eax, eax
je 0x18005a38c
mov ecx, 0xffff
cmp eax, ecx
ja 0x18005a352
inc esi
jmp 0x18005a352
mov rdx, qword [rbp + 0x98]
mov dword [rdx + 0x54], esi
cmp byte [rbp + 0x50], 0
mov r15d, dword [rsp + 0x74]
je 0x18005a489
mov eax, dword [rbp + 0x48]
cmp eax, r15d
jle 0x18005a3f6
cmp byte [rbp - 0x28], 0
je 0x18005a3f6
mov ebx, dword [rdx + 0x10]
lea rdi, [rdx + 0x10]
mov ecx, dword [rdi + 4]
sub ebx, r15d
add ebx, eax
cmp ebx, ecx
jle 0x18005a3f4
test ecx, ecx
je 0x18005a3d5
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x18005a3da
mov eax, 8
cmp eax, ebx
mov edx, ebx
mov rcx, rdi
cmovg edx, eax
call fcn.18001a810
mov rdx, qword [rbp + 0x98]
mov r14, qword [rbp + 0x40]
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 0x18005a449
nop dword [rax]
cmp byte [r14], 0
je 0x18005a449
xor r8d, r8d
lea rcx, [rsp + 0x64]
mov rdx, r14
call fcn.180004410
movsxd rcx, eax
mov eax, dword [rsp + 0x64]
add r14, rcx
test eax, eax
je 0x18005a449
mov ecx, 0xffff
cmp eax, ecx
ja 0x18005a444
mov word [rbx], ax
add rbx, 2
cmp rbx, rdi
jb 0x18005a410
mov r14, qword [0x1800bb2c8]
xor r11d, r11d
mov r12, qword [rbp - 0x80]
mov r9d, dword [rbp + 0x1e8]
mov word [rbx], r11w
sub rbx, rsi
mov rsi, qword [rbp + 0x98]
mov eax, dword [rbp + 0x48]
sar rbx, 1
mov qword [rsp + 0x58], r14
mov dword [rsi + 4], ebx
mov dword [rsi + 8], eax
mov dword [rsi + 0xe70], 0xbe99999a
jmp 0x18005a4b8
mov r14, qword [0x1800bb2c8]
mov rsi, qword [rbp + 0x98]
mov r12, qword [rbp - 0x80]
mov r9d, dword [rbp + 0x1e8]
mov qword [rsp + 0x58], r14
jmp 0x18005a4b5
mov r15d, dword [rsp + 0x74]
jmp 0x18005a4b8
mov r15d, dword [rsp + 0x74]
xor r11d, r11d
cmp byte [rsp + 0x6c], 0
mov r10, qword [rbp - 0x50]
jne 0x18005a4fe
mov r9, qword [rsi + 0x28]
mov r8, r10
mov rax, r9
sub r8, r9
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x18005a4e3
inc rax
test ecx, ecx
jne 0x18005a4d0
test edx, edx
je 0x18005a4f7
mov r13d, dword [rsi + 8]
mov rdi, r9
mov r9d, dword [rbp + 0x1e8]
jmp 0x18005a502
mov r9d, dword [rbp + 0x1e8]
mov rdi, qword [rbp - 0x38]
test rdi, rdi
je 0x18005a5cb
cmp r15d, r13d
je 0x18005a58a
cmp byte [rbp - 0x28], 0
je 0x18005a58a
lea eax, [r13 + 1]
mov qword [rbp + 0x70], r11
cmp dword [rbp - 0x70], eax
lea rcx, [rbp + 0x60]
xorps xmm0, xmm0
mov dword [rbp + 0x60], 0x40000
cmovge eax, dword [rbp - 0x70]
mov dword [rbp + 0x84], eax
mov rax, qword [rbp - 0x40]
mov qword [rbp + 0x68], rax
movdqu xmmword [rbp + 0x88], xmm0
mov dword [rbp + 0x64], r9d
mov qword [rbp + 0x78], r10
mov dword [rbp + 0x80], r13d
call qword [rbp - 0x20]
mov ecx, dword [rbp + 0x84]
mov r10, qword [rbp + 0x78]
mov r14, qword [0x1800bb2c8]
mov qword [rbp - 0x50], r10
lea r13d, [rcx - 1]
mov qword [rsp + 0x58], r14
cmp dword [rbp + 0x80], r13d
cmovl r13d, dword [rbp + 0x80]
jmp 0x18005a58d
mov ecx, dword [rbp - 0x70]
lea eax, [r13 + 1]
cmp eax, ecx
cmovl ecx, eax
movsxd rbx, ecx
cmp rbx, 1
jb 0x18005a5c7
jbe 0x18005a5c1
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 r14, qword [0x1800bb2c8]
mov r10, qword [rbp - 0x50]
mov qword [rsp + 0x58], r14
mov byte [rbx + r10 - 1], 0
mov byte [rbp - 0x78], 1
mov ebx, dword [rbp - 0x68]
xor r15d, r15d
mov dword [rsi + 0xe78], r15d
mov qword [rsi + 0xe80], r15
mov qword [rsi + 0xe88], r15
jmp 0x18005a5eb
xor r15d, r15d
cmp byte [rsp + 0x71], 0
mov r13, qword [rsp + 0x58]
je 0x18005a659
cmp dword [r12 + 0x1a60], ebx
jne 0x18005a659
mov ecx, dword [r13 + 0x1a60]
test ecx, ecx
setne al
mov byte [r13 + 0x1a6c], al
test ecx, ecx
je 0x18005a629
mov dword [r13 + 0x1a68], r15d
mov word [r13 + 0x1a6e], 0
mov dword [r13 + 0x1a60], r15d
mov byte [r13 + 0x1a6d], 0
mov qword [r13 + 0x1a90], r15
mov byte [r13 + 0x1a70], 0
mov qword [r13 + 0x1a74], 0
mov qword [r13 + 0x1a80], r15
mov r11d, dword [rsp + 0x78]
movaps xmmword [rsp + 0x1f0], xmm13
movaps xmmword [rsp + 0x1d0], xmm15
test r11b, r11b
jne 0x18005a74e
mov r8d, 1
lea rcx, [rbp + 0x18]
mov edx, ebx
call fcn.1800063a0
mov rax, qword [0x1800bb2c8]
lea rcx, [rbp - 0x20]
movups xmm0, xmmword [rax + 0x1678]
movups xmmword [rbp - 0x20], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [rax + 0x1558]
movss dword [rbp - 0x14], xmm0
call fcn.1800046f0
movss xmm0, dword [r12 + 0x1598]
mov r8d, eax
mov rdx, qword [rbp + 0x20]
mov r9b, 1
movss dword [rsp + 0x20], xmm0
movaps xmm0, xmm8
unpcklps xmm0, xmm10
movq rcx, xmm0
call fcn.180005ca0
mov r13, qword [0x1800bb2c8]
movaps xmm12, xmm10
mov r11d, dword [rsp + 0x78]
addss xmm12, xmm7
mov r8, qword [rbp - 0x30]
movaps xmm0, xmm8
addss xmm0, dword [r12 + 0x1590]
movaps xmm1, xmm10
mov qword [rsp + 0x58], r13
addss xmm1, dword [r12 + 0x1594]
movaps xmm13, xmm9
movss dword [rbp + 0xc4], xmm12
addss xmm13, xmm8
movaps xmm15, xmm12
movss dword [rbp - 0x20], xmm0
movss dword [rbp - 0x1c], xmm1
movss dword [rbp + 0xc0], xmm13
movss dword [rsp + 0x74], xmm13
jmp 0x18005a791
mov r8, qword [rbp - 0x30]
movaps xmm1, xmm9
addss xmm1, xmm8
movaps xmm15, xmm10
addss xmm15, xmm7
movsd xmm0, qword [r8 + 0xd0]
movsd qword [rbp - 0x20], xmm0
movss dword [rsp + 0x74], xmm1
movaps xmm13, xmm1
movss dword [rbp + 0xc0], xmm1
movaps xmm12, xmm15
movss dword [rbp + 0xc4], xmm15
cmp byte [rbp - 0x6c], 0
lea rax, [rbp - 0x20]
movss xmm14, dword [rax]
xorps xmm5, xmm5
movss dword [rbp + 0xb8], xmm8
movss xmm8, dword [rax + 4]
movss dword [rbp - 0x70], xmm8
movss dword [rbp + 0xbc], xmm10
movss dword [rsp + 0x64], xmm5
movss dword [rbp - 0x74], xmm5
je 0x18005a7d6
mov rdi, qword [rsi + 0x28]
mov qword [rbp - 0x50], rdi
jmp 0x18005a7da
mov rdi, qword [rbp - 0x50]
movzx r14d, byte [rsp + 0x60]
mov rsi, r15
test r14b, r14b
je 0x18005a80c
mov rax, qword [rbp - 0x60]
mov rsi, 0xffffffffffffffff
mov rdi, rax
mov qword [rbp - 0x50], rax
nop word [rax + rax]
inc rsi
cmp byte [rax + rsi], 0
jne 0x18005a800
add rsi, rax
movzx eax, byte [rsp + 0x50]
mov ecx, dword [rbp - 0x48]
test al, al
jne 0x18005aa2a
test cl, cl
jne 0x18005aa2a
test r11b, r11b
je 0x18005a88e
movzx edx, byte [rdi]
lea rsi, [rdi + 1]
mov ecx, r15d
test dl, dl
je 0x18005a855
nop word [rax + rax]
cmp dl, 0xa
lea eax, [rcx + 1]
movzx edx, byte [rsi]
cmovne eax, ecx
inc rsi
mov ecx, eax
test dl, dl
jne 0x18005a840
movzx eax, byte [rsi - 1]
dec rsi
cmp al, 0xa
je 0x18005a866
cmp al, 0xd
je 0x18005a866
inc ecx
movd xmm8, ecx
cvtdq2ps xmm8, xmm8
movss dword [rsp + 0x64], xmm9
mulss xmm8, dword [r12 + 0x1910]
movss dword [rbp - 0x74], xmm8
movss xmm8, dword [rbp - 0x70]
jmp 0x18005a8cf
test r14b, r14b
jne 0x18005a8bd
cmp dword [r12 + 0x1a60], ebx
jne 0x18005a8aa
mov rdx, qword [rbp + 0x98]
movsxd rsi, dword [rdx + 8]
jmp 0x18005a8ba
mov rsi, 0xffffffffffffffff
inc rsi
cmp byte [rdi + rsi], 0
jne 0x18005a8b1
add rsi, rdi
mov rax, rsi
sub rax, rdi
cmp rax, 0x200000
jge 0x18005b355
lea rax, [r14 + 0xb]
add rax, rax
lea rcx, [rbp - 0x60]
movups xmm0, xmmword [r13 + rax*8 + 0x1558]
movups xmmword [rbp - 0x60], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [r13 + 0x1558]
movss dword [rbp - 0x54], xmm0
call fcn.1800046f0
mov r10, qword [r8 + 0x2a8]
test r11b, r11b
movss xmm2, dword [r12 + 0x1910]
lea r8, [rbp + 0xb8]
mov r11, qword [r12 + 0x1908]
cmovne r8, r15
mov r9d, eax
mov rdx, rsi
test eax, 0xff000000
je 0x18005b2f7
test rsi, rsi
jne 0x18005a94e
mov rdx, 0xffffffffffffffff
inc rdx
cmp byte [rdi + rdx], 0
jne 0x18005a942
add rdx, rdi
cmp rdi, rdx
je 0x18005b2f7
test r11, r11
jne 0x18005a964
mov rax, qword [r10 + 0x38]
mov r11, qword [rax + 8]
xorps xmm12, xmm12
ucomiss xmm2, xmm12
jp 0x18005a979
jne 0x18005a979
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 - 0x60], xmm1
test r8, r8
je 0x18005a9db
movss xmm0, dword [r8]
comiss xmm1, xmm0
jae 0x18005a9a1
movss dword [rbp - 0x60], xmm0
movss xmm1, dword [r8 + 4]
movss xmm0, dword [rbp - 0x5c]
comiss xmm0, xmm1
jae 0x18005a9b6
movss dword [rbp - 0x5c], xmm1
movss xmm0, dword [r8 + 8]
comiss xmm0, dword [rbp - 0x58]
ja 0x18005a9c7
movss dword [rbp - 0x58], xmm0
movss xmm0, dword [r8 + 0xc]
comiss xmm0, dword [rbp - 0x54]
ja 0x18005a9d8
movss dword [rbp - 0x54], 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 - 0x60]
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.1800493d0
mov r13, qword [0x1800bb2c8]
mov qword [rsp + 0x58], r13
jmp 0x18005b309
mov r15, qword [rbp + 0x98]
test r14b, r14b
jne 0x18005aa3d
movsxd rsi, dword [r15 + 8]
add rsi, rdi
mov r14, qword [r15 + 0x18]
xor r10d, r10d
mov r8d, 0xfffffc18
movaps xmm7, xmm5
movaps xmm6, xmm5
mov r9d, r10d
mov ebx, r10d
mov edi, r8d
mov edx, r10d
test al, al
je 0x18005aa70
movsxd rax, dword [r15 + 0x4c]
lea edx, [r10 + 1]
lea r8d, [r10 - 1]
lea r9, [r14 + rax*2]
test cl, cl
je 0x18005aa8f
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, [r14 + rax*2]
movzx ecx, word [r14]
movzx eax, r11b
mov r11d, r10d
add edx, eax
mov rax, r14
test cx, cx
je 0x18005aae1
cmp cx, 0xa
jne 0x18005aad4
inc r11d
cmp r8d, 0xffffffff
jne 0x18005aac1
cmp rax, r9
jb 0x18005aac1
dec edx
mov r8d, r11d
test edx, edx
jle 0x18005aae1
cmp edi, 0xffffffff
jne 0x18005aad4
cmp rax, rbx
jb 0x18005aad4
dec edx
mov edi, r11d
test edx, edx
jle 0x18005aae1
movzx ecx, word [rax + 2]
add rax, 2
test cx, cx
jne 0x18005aaa4
inc r11d
mov rdx, r9
cmp r8d, 0xffffffff
mov r10d, r11d
cmovne r10d, r8d
cmp edi, 0xffffffff
cmove edi, r11d
cmp r9, r14
jbe 0x18005ab13
nop
cmp word [rdx - 2], 0xa
lea rax, [rdx - 2]
je 0x18005ab13
mov rdx, rax
cmp rax, r14
ja 0x18005ab00
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 0x18005ab80
nop word [rax + rax]
movzx ecx, word [rdx]
add rdx, 2
cmp ecx, 0xa
jne 0x18005ab57
maxss xmm1, xmm10
movaps xmm10, xmm5
jmp 0x18005ab7b
cmp ecx, 0xd
je 0x18005ab7b
cmp ecx, dword [r8]
jge 0x18005ab6c
mov rax, qword [r8 + 8]
movss xmm0, dword [rax + rcx*4]
jmp 0x18005ab72
movss xmm0, dword [r8 + 0x10]
mulss xmm0, xmm2
addss xmm10, xmm0
cmp rdx, r9
jb 0x18005ab40
movss xmm0, dword [r12 + 0x1910]
maxss xmm10, xmm1
movd xmm11, r10d
cvtdq2ps xmm11, xmm11
movss dword [rbp - 0x28], xmm10
mulss xmm11, xmm0
movss dword [rbp - 0x68], xmm11
test edi, edi
js 0x18005ac46
mov rdx, rbx
cmp rbx, r14
jbe 0x18005abd3
nop dword [rax]
cmp word [rdx - 2], 0xa
lea rax, [rdx - 2]
je 0x18005abd3
mov rdx, rax
cmp rax, r14
ja 0x18005abc0
movss xmm2, dword [r13 + 0x1910]
movaps xmm1, xmm5
movaps xmm6, xmm5
divss xmm2, dword [r8 + 0x14]
cmp rdx, rbx
jae 0x18005ac2d
nop dword [rax]
movzx ecx, word [rdx]
add rdx, 2
cmp ecx, 0xa
jne 0x18005ac05
maxss xmm1, xmm6
movaps xmm6, xmm5
jmp 0x18005ac28
cmp ecx, 0xd
je 0x18005ac28
cmp ecx, dword [r8]
jge 0x18005ac1a
mov rax, qword [r8 + 8]
movss xmm0, dword [rax + rcx*4]
jmp 0x18005ac20
movss xmm0, dword [r8 + 0x10]
mulss xmm0, xmm2
addss xmm6, xmm0
cmp rdx, rbx
jb 0x18005abf0
movss xmm0, dword [r12 + 0x1910]
maxss xmm6, xmm1
movd xmm7, edi
cvtdq2ps xmm7, xmm7
mulss xmm7, xmm0
mov r9d, dword [rsp + 0x78]
test r9b, r9b
je 0x18005ac68
movd xmm3, r11d
cvtdq2ps xmm3, xmm3
movss dword [rsp + 0x64], xmm9
mulss xmm3, xmm0
movss dword [rbp - 0x74], xmm3
movzx r8d, byte [rsp + 0x50]
test r8b, r8b
je 0x18005ad37
cmp byte [r15 + 0xe74], 0
je 0x18005ad37
test dword [rbp + 0x1e8], 0x1000
jne 0x18005acdb
movss xmm2, dword [r15 + 0x48]
movaps xmm0, xmm9
comiss xmm2, xmm10
mulss xmm0, dword [0x1800ab0ec]
movaps xmm1, xmm10
jbe 0x18005acba
subss xmm1, xmm0
movaps xmm0, xmm5
maxss xmm0, xmm1
jmp 0x18005acc8
subss xmm1, xmm9
comiss xmm1, xmm2
jb 0x18005ace1
addss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [r15 + 0x48], xmm0
jmp 0x18005ace1
xor eax, eax
mov dword [r15 + 0x48], eax
test r9b, r9b
je 0x18005ad2f
mov rax, qword [rbp - 0x30]
movaps xmm2, xmm11
subss xmm2, dword [r12 + 0x1910]
movss xmm1, dword [rax + 0x58]
comiss xmm1, xmm2
jbe 0x18005ad0b
movaps xmm0, xmm5
maxss xmm0, xmm2
jmp 0x18005ad1b
movaps xmm0, xmm11
subss xmm0, dword [rbp + 0xac]
maxss xmm0, xmm1
subss xmm1, xmm0
movss dword [rax + 0x58], xmm0
addss xmm8, xmm1
movss dword [rbp - 0x70], xmm8
mov byte [r15 + 0xe74], 0
cmp byte [rbp - 0x48], 0
movss xmm9, dword [r15 + 0x48]
je 0x18005afcd
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, [r14 + rax*2]
movsxd rax, edx
lea rdi, [r14 + rax*2]
test r8b, r8b
je 0x18005ad75
movss xmm1, dword [0x1800ab140]
jmp 0x18005ad7d
movss xmm1, dword [0x1800ab108]
movups xmm0, xmmword [r13 + 0x18a8]
lea rcx, [rbp - 0x60]
mulss xmm1, dword [r13 + 0x1558]
movups xmmword [rbp - 0x60], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, xmm1
movss dword [rbp - 0x54], xmm0
call fcn.1800046f0
mov r14d, eax
xorps xmm5, xmm5
test r9b, r9b
je 0x18005adbe
movss dword [rbp - 0x10], xmm5
xorps xmm8, xmm8
jmp 0x18005adc7
movss xmm8, dword [0x1800ab194]
movaps xmm4, xmm14
addss xmm4, xmm6
movss xmm6, dword [rbp - 0x70]
addss xmm6, xmm7
movss xmm7, dword [0x1800ab100]
subss xmm4, xmm9
subss xmm6, xmm5
cmp rbx, rdi
jae 0x18005afc5
movss xmm10, dword [rsp + 0x74]
movss xmm11, dword [rbp + 0x18]
movss xmm1, dword [rbp + 0x1c]
mov r15, qword [rbp - 0x30]
nop dword [rax + rax]
movaps xmm0, xmm12
addss xmm0, dword [r12 + 0x1910]
comiss xmm6, xmm0
ja 0x18005af99
comiss xmm1, xmm6
jbe 0x18005ae50
cmp rbx, rdi
jae 0x18005af7d
movzx eax, word [rbx]
add rbx, 2
cmp ax, 0xa
je 0x18005af7d
cmp rbx, rdi
jb 0x18005ae35
jmp 0x18005af7d
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 0x18005aeae
movzx ecx, word [rbx]
add rbx, 2
cmp ecx, 0xa
je 0x18005aea4
cmp ecx, 0xd
je 0x18005ae9d
cmp ecx, dword [rdx]
jge 0x18005ae90
mov rax, qword [rdx + 8]
movss xmm0, dword [rax + rcx*4]
jmp 0x18005ae95
movss xmm0, dword [rdx + 0x10]
mulss xmm0, xmm2
addss xmm1, xmm0
cmp rbx, rdi
jb 0x18005ae70
jmp 0x18005aeae
movaps xmm3, xmm5
maxss xmm3, xmm1
movaps xmm1, xmm5
maxss xmm1, xmm3
comiss xmm5, xmm1
jb 0x18005aee6
mov rax, qword [r12 + 0x1908]
cmp dword [rax], 0x20
jle 0x18005aed2
mov rax, qword [rax + 8]
movss xmm0, dword [rax + 0x80]
jmp 0x18005aed7
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 - 0x58], xmm1
maxss xmm2, dword [rbp + 0x1c]
movss dword [rbp - 0x60], xmm4
comiss xmm0, dword [rbp + 0x1c]
movss dword [rbp - 0x5c], xmm2
movss dword [rbp - 0x54], xmm0
jbe 0x18005af78
comiss xmm12, xmm2
jbe 0x18005af78
comiss xmm1, xmm11
jbe 0x18005af78
comiss xmm13, xmm4
jbe 0x18005af78
mov rcx, qword [r15 + 0x2a8]
lea r8, [rbp - 0x58]
mov dword [rsp + 0x28], 0xf
lea rdx, [rbp - 0x60]
mov r9d, r14d
movss dword [rsp + 0x20], xmm5
call fcn.1800451e0
mov r13, qword [0x1800bb2c8]
xorps xmm5, xmm5
movss xmm1, dword [rbp + 0x1c]
movaps xmm4, xmm14
subss xmm4, xmm9
addss xmm6, dword [r12 + 0x1910]
cmp rbx, rdi
jb 0x18005ae10
movss xmm11, dword [rbp - 0x68]
movss xmm8, dword [rbp - 0x70]
mov r15, qword [rbp + 0x98]
mov r9d, dword [rsp + 0x78]
movss dword [rsp + 0x74], xmm10
movss xmm10, dword [rbp - 0x28]
mov qword [rsp + 0x58], r13
jmp 0x18005afd5
movss xmm8, dword [rbp - 0x70]
jmp 0x18005afd5
movss xmm7, dword [0x1800ab100]
mov rdi, qword [rbp - 0x50]
test r9b, r9b
jne 0x18005aff0
mov rax, rsi
sub rax, rdi
cmp rax, 0x200000
jge 0x18005b16b
movzx r14d, byte [rsp + 0x60]
lea rcx, [rbp - 0x60]
lea rax, [r14 + 0xb]
add rax, rax
movups xmm0, xmmword [r13 + rax*8 + 0x1558]
movups xmmword [rbp - 0x60], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [r13 + 0x1558]
movss dword [rbp - 0x54], xmm0
call fcn.1800046f0
cmp byte [rsp + 0x78], 0
lea r8, [rbp + 0xb8]
mov rbx, qword [rbp - 0x30]
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, rsi
subss xmm4, xmm12
test r9d, 0xff000000
je 0x18005b179
test rsi, rsi
jne 0x18005b09b
mov rdx, 0xffffffffffffffff
nop dword [rax]
inc rdx
cmp byte [rdi + rdx], al
jne 0x18005b090
add rdx, rdi
cmp rdi, rdx
je 0x18005b179
test r11, r11
jne 0x18005b0b1
mov rax, qword [r10 + 0x38]
mov r11, qword [rax + 8]
ucomiss xmm2, xmm12
jp 0x18005b0c2
jne 0x18005b0c2
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 - 0x60], xmm1
test r8, r8
je 0x18005b124
movss xmm0, dword [r8]
comiss xmm1, xmm0
jae 0x18005b0ea
movss dword [rbp - 0x60], xmm0
movss xmm1, dword [r8 + 4]
movss xmm0, dword [rbp - 0x5c]
comiss xmm0, xmm1
jae 0x18005b0ff
movss dword [rbp - 0x5c], xmm1
movss xmm0, dword [r8 + 8]
comiss xmm0, dword [rbp - 0x58]
ja 0x18005b110
movss dword [rbp - 0x58], xmm0
movss xmm0, dword [r8 + 0xc]
comiss xmm0, dword [rbp - 0x54]
ja 0x18005b121
movss dword [rbp - 0x54], 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 - 0x60]
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.1800493d0
mov r13, qword [0x1800bb2c8]
mov qword [rsp + 0x58], r13
jmp 0x18005b179
movzx r14d, byte [rsp + 0x60]
xorps xmm12, xmm12
mov rbx, qword [rbp - 0x30]
cmp byte [rsp + 0x50], 0
je 0x18005b2fd
movss xmm0, dword [r12 + 0x18]
addss xmm0, dword [r15 + 0xe70]
movss dword [r15 + 0xe70], xmm0
cmp byte [r12 + 0xca], 0
je 0x18005b1cc
comiss xmm12, xmm0
jae 0x18005b1cc
movss xmm1, dword [0x1800ab160]
call sub.api_ms_win_crt_math_l1_1_0.dll_fmodf
movss xmm1, dword [0x1800ab128]
comiss xmm1, xmm0
jae 0x18005b1cc
xor al, al
jmp 0x18005b1ce
mov al, 1
addss xmm14, xmm10
movss xmm10, dword [rbp + 0x1c]
movaps xmm6, xmm8
addss xmm6, xmm11
subss xmm14, xmm9
subss xmm6, xmm12
movss dword [rbp + 0xa8], xmm14
movaps xmm2, xmm14
movaps xmm0, xmm6
movaps xmm1, xmm6
subss xmm0, dword [r12 + 0x1910]
subss xmm1, dword [0x1800ab174]
addss xmm0, xmm7
movss xmm7, dword [0x1800ab140]
movss dword [rbp + 0xb4], xmm1
addss xmm2, xmm7
movss dword [rbp + 0xac], xmm0
movss dword [rbp + 0xb0], xmm2
test al, al
je 0x18005b2c5
comiss xmm1, xmm10
jbe 0x18005b2c5
comiss xmm15, xmm0
jbe 0x18005b2c5
comiss xmm2, dword [rbp + 0x18]
jbe 0x18005b2c5
movss xmm0, dword [rsp + 0x74]
comiss xmm0, xmm14
jbe 0x18005b2c5
movups xmm0, xmmword [r13 + 0x1608]
lea rcx, [rbp - 0x20]
movss dword [rbp - 0x60], xmm14
movups xmmword [rbp - 0x20], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [r13 + 0x1558]
movss dword [rbp - 0x5c], xmm1
movss dword [rbp - 0x14], xmm0
call fcn.1800046f0
mov rcx, qword [rbx + 0x2a8]
lea rdx, [rbp + 0xa8]
mov r9d, eax
movss dword [rsp + 0x20], xmm7
lea r8, [rbp - 0x60]
call fcn.180044f70
mov r13, qword [0x1800bb2c8]
mov qword [rsp + 0x58], r13
cmp byte [rsp + 0x6c], 0
movss xmm11, dword [rbp - 0x24]
jne 0x18005b309
subss xmm6, dword [r12 + 0x1910]
subss xmm14, xmm7
movss dword [r12 + 0x2ee8], xmm6
movss dword [r12 + 0x2ee4], xmm14
jmp 0x18005b309
xorps xmm12, xmm12
jmp 0x18005b309
movss xmm10, dword [rbp + 0x1c]
movss xmm11, dword [rbp - 0x24]
cmp byte [rsp + 0x78], 0
je 0x18005b359
movss xmm0, dword [rsp + 0x64]
lea rcx, [rbp - 0x60]
addss xmm0, xmm12
movss dword [rbp - 0x60], xmm0
movss xmm0, dword [rbp - 0x74]
addss xmm0, dword [r12 + 0x1910]
movss dword [rbp - 0x5c], xmm0
call fcn.180051550
call fcn.18000a850
call fcn.180010d40
mov r13, qword [0x1800bb2c8]
mov qword [rsp + 0x58], r13
jmp 0x18005b359
xorps xmm12, xmm12
mov eax, dword [rbp - 0x44]
movaps xmm15, xmmword [rsp + 0x1d0]
movaps xmm14, xmmword [rsp + 0x1e0]
movaps xmm13, xmmword [rsp + 0x1f0]
test al, al
je 0x18005b3e2
test r14b, r14b
jne 0x18005b3e2
mov rax, qword [r13 + 0x1a18]
mov rcx, qword [rax + 0x2a8]
dec dword [rcx + 0x70]
call fcn.180042b90
lea rdx, [r13 + 0x1b50]
mov r13, qword [0x1800bb2c8]
movsxd rcx, dword [rdx]
mov qword [rsp + 0x58], r13
lea eax, [rcx - 1]
mov dword [rdx], eax
test eax, eax
jne 0x18005b3d1
mov rcx, qword [r13 + 0xb8]
test rcx, rcx
jne 0x18005b3da
mov rax, qword [r13 + 0xa8]
mov rcx, qword [rax + 0x48]
mov rcx, qword [rcx]
jmp 0x18005b3da
mov rax, qword [rdx + 8]
mov rcx, qword [rax + rcx*8 - 0x10]
call fcn.18000fec0
mov eax, dword [rbp - 0x44]
cmp byte [r12 + 0x2f30], 0
je 0x18005b53e
test al, al
je 0x18005b3fe
test r14b, r14b
je 0x18005b53e
mov r14, qword [r13 + 0x1a18]
test rsi, rsi
jne 0x18005b430
mov rsi, rdi
cmp rdi, 0xffffffffffffffff
jae 0x18005b430
movzx ecx, byte [rsi]
test cl, cl
je 0x18005b430
lea rax, [rsi + 1]
cmp cl, 0x23
jne 0x18005b427
cmp byte [rax], cl
je 0x18005b430
mov rsi, rax
cmp rax, 0xffffffffffffffff
jb 0x18005b413
movss xmm0, dword [r13 + 0x2f50]
addss xmm0, dword [0x1800ab140]
movss dword [r13 + 0x2f50], xmm8
comiss xmm8, xmm0
jbe 0x18005b45c
mov r15b, 1
mov byte [r13 + 0x2f54], r15b
jmp 0x18005b45f
xor r15b, r15b
mov ecx, dword [r13 + 0x2f58]
mov rbx, rdi
mov eax, dword [r14 + 0x108]
cmp ecx, eax
jle 0x18005b47d
mov dword [r13 + 0x2f58], eax
mov ecx, eax
mov r14d, dword [r14 + 0x108]
sub r14d, ecx
nop word [rax + rax]
mov r8, rsi
mov edx, 0xa
sub r8, rbx
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
test rax, rax
mov rdi, rsi
cmovne rdi, rax
cmp rdi, rsi
jne 0x18005b4b7
cmp rbx, rdi
je 0x18005b524
mov r9d, edi
sub r9d, ebx
test r15b, r15b
jne 0x18005b4ee
cmp rbx, qword [rbp - 0x50]
jne 0x18005b4ee
cmp byte [r13 + 0x2f54], r15b
je 0x18005b4da
lea rcx, str._s_.s
jmp 0x18005b4f5
mov r8, rbx
lea rcx, str.__.s
mov edx, r9d
call fcn.1800162b0
jmp 0x18005b50e
lea rcx, str._r_n_s_.s
lea r8, [0x1800a042e]
mov qword [rsp + 0x20], rbx
lea edx, [r14*4]
call fcn.1800162b0
mov byte [r13 + 0x2f54], 0
cmp rdi, rsi
je 0x18005b535
lea rbx, [rdi + 1]
jmp 0x18005b490
test r15b, r15b
je 0x18005b535
lea rcx, [0x1800a08c0]
call fcn.1800162b0
mov rax, qword [0x1800bb2c8]
jmp 0x18005b543
mov rax, qword [rsp + 0x58]
comiss xmm11, xmm12
jbe 0x18005b581
movss xmm0, dword [rbp + 0x20]
mov r9b, 1
addss xmm0, dword [r12 + 0x15a8]
addss xmm10, dword [r12 + 0x1594]
mov rdx, qword [rbp - 8]
xor r8d, r8d
unpcklps xmm0, xmm10
movq rcx, xmm0
call fcn.180005280
mov rax, qword [0x1800bb2c8]
movzx ecx, byte [rbp - 0x78]
test cl, cl
je 0x18005b5ac
test dword [rbp + 0x1e8], 0x200000
jne 0x18005b5ac
mov word [rax + 0x1a6f], 0x101
mov rax, qword [rax + 0x1a18]
or dword [rax + 0x114], 4
test byte [rbp + 0x1e8], 0x20
mov eax, ecx
movzx ecx, byte [rsp + 0x68]
cmovne eax, ecx
jmp 0x1800586b7