Function at 0x180027620
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x10220
call fcn.18004a9f0
sub rsp, rax
movaps xmmword [rsp + 0x10210], xmm6
movaps xmmword [rsp + 0x10200], xmm7
movaps xmmword [rsp + 0x101f0], xmm8
movaps xmmword [rsp + 0x101e0], xmm9
movaps xmmword [rsp + 0x101d0], xmm10
movaps xmmword [rsp + 0x101c0], xmm11
movaps xmmword [rsp + 0x101b0], xmm12
mov rax, qword [0x180067d80]
xor rax, rsp
mov qword [rsp + 0x101a0], rax
mov r15, rcx
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x98], rcx
xor r12b, r12b
mov byte [rsp + 0x20], r12b
xor r14d, r14d
mov qword [rsp + 0x60], r14
lea r8, [0x18004fe74]
lea rcx, [rsp + 0x60]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__wfopen_s]
mov rcx, qword [rsp + 0x60]
test rcx, rcx
jne 0x1800276d2
xor al, al
jmp 0x1800293d6
xor edx, edx
lea r8d, [rdx + 2]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ftell]
movsxd rbx, eax
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_rewind]
lea rcx, [rbx + 1]
call fcn.18004a560
mov rdi, rax
mov qword [rsp + 0xa0], rax
mov byte [rax + rbx], r12b
mov r9, qword [rsp + 0x60]
mov r8, rbx
mov edx, 1
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
cmp rax, rbx
sete sil
mov byte [rsp + 0x21], sil
jne 0x180029387
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x110], xmm0
mov qword [rsp + 0x130], r14
mov dword [rsp + 0x138], r14d
mov qword [rsp + 0x10188], r14
mov qword [rsp + 0x10190], r14
lea rax, [rsp + 0x188]
mov qword [rsp + 0x170], rax
lea rax, [rsp + 0x188]
neg rax
and eax, 7
lea r8, [rsp + 0x188]
add rax, r8
mov qword [rsp + 0x178], rax
lea rax, [rsp + 0x10188]
mov qword [rsp + 0x180], rax
mov r8, rdi
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x140], r14
mov qword [rsp + 0x150], r14
cmp byte [rdi], 0xef
jne 0x1800277d6
cmp byte [rdi + 1], 0xbb
jne 0x1800277d6
cmp byte [rdi + 2], 0xbf
jne 0x1800277d6
lea r8, [rdi + 3]
mov qword [rsp + 0x58], r8
lea rbx, [0x18004ff30]
nop dword [rax]
movzx eax, byte [r8]
cmp byte [rax + rbx], 0
je 0x1800277fd
nop word [rax + rax]
inc r8
movzx eax, byte [r8]
cmp byte [rax + rbx], 0
jne 0x1800277f0
mov qword [rsp + 0x58], r8
movzx eax, byte [r8]
test al, al
jne 0x1800292ec
lea r10, str.commandSystem
mov rdx, r10
inc rdx
cmp byte [rdx], 0
jne 0x180027818
sub rdx, r10
mov rbx, qword [rsp + 0x140]
test rbx, rbx
je 0x1800292d9
lea r14, [0x18006a258]
nop dword [rax + rax]
mov rcx, qword [rbx]
xor edi, edi
test rcx, rcx
je 0x180027850
mov rax, qword [rbx + 0x10]
jmp 0x180027856
mov rax, rdi
mov rcx, r14
cmp rax, rdx
jne 0x1800292cc
lea r9, [rcx + rax]
cmp rcx, r9
jae 0x180027885
mov r8, r10
sub r8, rcx
nop
movzx eax, byte [rcx + r8]
cmp byte [rcx], al
jne 0x1800292cc
inc rcx
cmp rcx, r9
jb 0x180027870
mov rcx, r15
call fcn.180024600
lea r11, str.commands
mov r8, r11
inc r8
cmp byte [r8], 0
jne 0x180027897
sub r8, r11
mov r10, qword [rbx + 0x30]
test r10, r10
je 0x1800292d9
mov rcx, qword [r10]
test rcx, rcx
je 0x1800278be
mov rax, qword [r10 + 0x10]
jmp 0x1800278c4
mov rax, rdi
mov rcx, r14
cmp rax, r8
jne 0x1800292b8
lea r9, [rax + rcx]
cmp rcx, r9
jae 0x1800278f4
mov rdx, r11
sub rdx, rcx
nop dword [rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x1800292b8
inc rcx
cmp rcx, r9
jb 0x1800278e0
mov r9b, 1
xor r8d, r8d
lea rdx, [0x180050adc]
mov rcx, r10
call fcn.18002b9e0
mov rsi, rax
lea r11, [0x18004fe34]
xorps xmm12, xmm12
lea rbx, str.body
lea rcx, str.tick
test rsi, rsi
je 0x1800292b1
mov r10, rcx
inc r10
cmp byte [r10], 0
jne 0x180027931
sub r10, rcx
lea r13, [rsi + 0x40]
mov qword [rsp + 0x90], r13
mov r9, qword [r13]
test r9, r9
je 0x1800285fb
nop word [rax + rax]
mov rcx, qword [r9]
mov byte [rsp + 0x20], r12b
test rcx, rcx
je 0x180027973
mov rax, qword [r9 + 0x10]
jmp 0x180027979
mov rax, rdi
mov rcx, r14
cmp rax, r10
jne 0x1800285e7
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x1800279b4
lea rdx, str.tick
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x1800285e7
inc rcx
cmp rcx, r8
jb 0x1800279a0
mov rax, qword [r9 + 8]
mov rcx, r14
test rax, rax
cmovne rcx, rax
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atof]
movaps xmm11, xmm0
mov ecx, 0x40
call fcn.18004a46c
mov r15, rax
mov qword [rsp + 0x58], rax
test rax, rax
je 0x180027a0d
mov word [rax], 0
xorps xmm0, xmm0
movups xmmword [rax + 8], xmm0
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], 0xf
mov byte [rax + 8], 0
mov qword [rax + 0x28], rdi
mov qword [rax + 0x30], rdi
mov qword [rax + 0x38], rdi
jmp 0x180027a15
mov r15, rdi
mov qword [rsp + 0x58], rdi
mov dil, 1
lea rax, str.epsilon
mov r10, rax
inc r10
cmp byte [r10], 0
jne 0x180027a22
sub r10, rax
mov r8, qword [r13]
test r8, r8
je 0x180027aae
xor r11d, r11d
nop word [rax + rax]
mov rcx, qword [r8]
mov byte [rsp + 0x20], r12b
test rcx, rcx
je 0x180027a53
mov rax, qword [r8 + 0x10]
jmp 0x180027a59
mov rax, r11
mov rcx, r14
cmp rax, r10
jne 0x180027aa5
lea r9, [rax + rcx]
cmp rcx, r9
jae 0x180027a81
lea rdx, str.epsilon
sub rdx, rcx
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x180027aa5
inc rcx
cmp rcx, r9
jb 0x180027a71
mov rax, qword [r8 + 8]
mov rcx, r14
test rax, rax
cmovne rcx, rax
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
movzx edi, dil
test eax, eax
mov eax, 0
cmove edi, eax
jmp 0x180027ab0
mov r8, qword [r8 + 0x30]
test r8, r8
jne 0x180027a40
xor eax, eax
movaps xmm10, xmm11
mov byte [rsp + 0x80], dil
mov r10, rbx
nop
inc r10
cmp byte [r10], 0
jne 0x180027ac0
sub r10, rbx
lea r14, [rsi + 0x30]
mov r9, qword [r14]
test r9, r9
je 0x180027b30
nop dword [rax + rax]
mov rcx, qword [r9]
mov byte [rsp + 0x20], r12b
test rcx, rcx
je 0x180027af3
mov rax, qword [r9 + 0x10]
jmp 0x180027afa
lea rcx, [0x18006a258]
cmp rax, r10
jne 0x180027b22
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180027b63
mov rdx, rbx
sub rdx, rcx
nop
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x180027b22
inc rcx
cmp rcx, r8
jb 0x180027b10
jmp 0x180027b63
mov r9, qword [r9 + 0x58]
test r9, r9
mov eax, 0
jne 0x180027ae0
mov rax, qword [rsi + 8]
lea rdx, [0x18006a258]
test rax, rax
cmovne rdx, rax
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x180027b50
lea rcx, [r15 + 8]
call fcn.180007330
mov r9, rbx
inc r9
cmp byte [r9], 0
jne 0x180027b66
sub r9, rbx
mov rbx, qword [r14]
test rbx, rbx
je 0x180027be1
lea r10, str.body
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [rbx]
mov byte [rsp + 0x20], r12b
xor r11d, r11d
test rcx, rcx
je 0x180027ba6
mov rax, qword [rbx + 0x10]
jmp 0x180027bb0
mov rax, r11
lea rcx, [0x18006a258]
cmp rax, r9
jne 0x180027bd6
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180027be7
mov rdx, r10
sub rdx, rcx
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x180027bd6
inc rcx
cmp rcx, r8
jb 0x180027bc4
jmp 0x180027be7
mov rbx, qword [rbx + 0x58]
test rbx, rbx
jne 0x180027b90
jmp 0x180027be4
xor r11d, r11d
mov rbx, r11
test rbx, rbx
je 0x180027cab
mov rax, qword [rbx + 8]
lea rdx, [0x18006a258]
test rax, rax
cmovne rdx, rax
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x180027c10
lea rcx, [r15 + 8]
call fcn.180007330
lea r10, str.body
mov r9, r10
nop dword [rax]
inc r9
cmp byte [r9], 0
jne 0x180027c30
sub r9, r10
mov rbx, qword [rbx + 0x58]
test rbx, rbx
je 0x180027ca8
nop word [rax + rax]
mov rcx, qword [rbx]
mov byte [rsp + 0x20], r12b
xor r11d, r11d
test rcx, rcx
je 0x180027c66
mov rax, qword [rbx + 0x10]
jmp 0x180027c70
mov rax, r11
lea rcx, [0x18006a258]
cmp rax, r9
jne 0x180027c9d
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180027be7
mov rdx, r10
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x180027c9d
inc rcx
cmp rcx, r8
jb 0x180027c88
jmp 0x180027be7
mov rbx, qword [rbx + 0x58]
test rbx, rbx
jne 0x180027c50
jmp 0x180027cab
xor r11d, r11d
lea rax, [0x180050ae8]
mov r10, rax
inc r10
cmp byte [r10], 0
jne 0x180027cb5
sub r10, rax
mov r8, qword [r13]
test r8, r8
je 0x180027d5d
nop
mov rcx, qword [r8]
mov byte [rsp + 0x20], r12b
lea rbx, [0x18006a258]
test rcx, rcx
je 0x180027cea
mov rax, qword [r8 + 0x10]
jmp 0x180027cf0
mov rax, r11
mov rcx, rbx
cmp rax, r10
jne 0x180027d50
lea r9, [rax + rcx]
cmp rcx, r9
jae 0x180027d18
lea rdx, [0x180050ae8]
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x180027d50
inc rcx
cmp rcx, r9
jb 0x180027d08
mov rax, qword [r8 + 8]
mov rcx, rbx
test rax, rax
cmovne rcx, rax
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atof]
mov byte [rsp + 0x40], dil
movaps xmm8, xmm11
unpcklpd xmm8, xmm0
movsd xmm9, qword [rsp + 0x40]
movaps xmm10, xmm8
unpckhpd xmm10, xmm8
movaps xmm11, xmm8
jmp 0x180027d77
mov r8, qword [r8 + 0x30]
test r8, r8
jne 0x180027cd0
movsd xmm9, qword [rsp + 0x80]
movaps xmm8, xmm11
unpcklpd xmm8, xmm11
lea rbx, [0x18006a258]
lea rdi, str.formated
mov r10, rdi
inc r10
cmp byte [r10], 0
jne 0x180027d81
sub r10, rdi
mov r8, qword [r13]
test r8, r8
je 0x180027dfd
xor r11d, r11d
nop dword [rax]
mov rcx, qword [r8]
mov byte [rsp + 0x20], r12b
test rcx, rcx
je 0x180027db3
mov rax, qword [r8 + 0x10]
jmp 0x180027db9
mov rax, r11
mov rcx, rbx
cmp rax, r10
jne 0x180027e36
lea r9, [rax + rcx]
cmp rcx, r9
jae 0x180027de0
mov rdx, rdi
sub rdx, rcx
nop dword [rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x180027e36
inc rcx
cmp rcx, r9
jb 0x180027dd0
mov rax, qword [r8 + 8]
mov rcx, rbx
test rax, rax
cmovne rcx, rax
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
test eax, eax
je 0x180027dfd
mov byte [r15 + 1], 1
lea r10, str.curve
mov r9, r10
inc r9
cmp byte [r9], 0
jne 0x180027e07
sub r9, r10
mov rdi, qword [r14]
test rdi, rdi
je 0x180027e7d
nop dword [rax + rax]
mov rcx, qword [rdi]
mov byte [rsp + 0x20], r12b
xor r11d, r11d
test rcx, rcx
je 0x180027e45
mov rax, qword [rdi + 0x10]
jmp 0x180027e4b
mov r8, qword [r8 + 0x30]
test r8, r8
jne 0x180027da0
jmp 0x180027dfd
mov rax, r11
mov rcx, rbx
cmp rax, r9
jne 0x180027e72
lea r8, [rcx + rax]
cmp rcx, r8
jae 0x180027e83
mov rdx, r10
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x180027e72
inc rcx
cmp rcx, r8
jb 0x180027e60
jmp 0x180027e83
mov rdi, qword [rdi + 0x58]
test rdi, rdi
jne 0x180027e20
jmp 0x180027e80
xor r11d, r11d
mov rdi, r11
test rdi, rdi
je 0x180028444
lea r13, [r15 + 0x28]
mov r14, qword [r13 + 8]
mov r8, qword [r13]
mov rcx, r14
sub rcx, r8
movabs r15, 0x2aaaaaaaaaaaaaab
mov rax, r15
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea r9, [rdx + 1]
cmp r9, rdx
jae 0x180027f17
lea r15, [r9 + r9*2]
shl r15, 4
add r15, r8
mov rbx, r15
cmp r15, r14
je 0x180027f07
nop dword [rax + rax]
mov rcx, qword [rbx + 0x20]
test rcx, rcx
je 0x180027ef3
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov rdx, rbx
mov rcx, rbx
call fcn.1800228c0
add rbx, 0x30
cmp rbx, r14
jne 0x180027ee0
mov qword [r13 + 8], r15
movabs r15, 0x2aaaaaaaaaaaaaab
jmp 0x180027f5f
jbe 0x180027f5f
mov rcx, qword [r13 + 0x10]
sub rcx, r8
mov rax, r15
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp r9, rdx
jbe 0x180027f4b
lea r8, [rsp + 0x50]
mov rdx, r9
mov rcx, r13
call fcn.180022b90
jmp 0x180027f5f
mov r8, r13
mov edx, 1
mov rcx, r14
call fcn.180022da0
mov qword [r13 + 8], rax
lea rbx, [0x180050b14]
mov r11, rbx
nop dword [rax]
inc r11
cmp byte [r11], 0
jne 0x180027f70
sub r11, rbx
mov r9, qword [rdi + 0x40]
test r9, r9
je 0x180028065
nop dword [rax]
mov rcx, qword [r9]
mov byte [rsp + 0x20], r12b
xor r14d, r14d
test rcx, rcx
je 0x180027fa6
mov rax, qword [r9 + 0x10]
jmp 0x180027fb0
mov rax, r14
lea rcx, [0x18006a258]
cmp rax, r11
jne 0x1800280a6
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180027fe4
mov rdx, rbx
sub rdx, rcx
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x1800280a6
inc rcx
cmp rcx, r8
jb 0x180027fd0
mov rax, qword [r9 + 8]
lea rdx, [0x18006a258]
test rax, rax
cmovne rdx, rax
mov rcx, r14
lea r8, str.cubic
movzx eax, byte [r8 + rcx]
inc rcx
cmp al, byte [rdx + rcx - 1]
jne 0x180028065
cmp rcx, 6
jne 0x180028000
mov rcx, qword [r13 + 8]
sub rcx, qword [r13]
mov rax, r15
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rax, rdx
dec eax
movsxd rcx, eax
lea rbx, [rcx + rcx*2]
shl rbx, 4
add rbx, qword [r13]
cmp dword [rbx + 0x28], 1
je 0x18002805e
mov rcx, qword [rbx + 0x20]
test rcx, rcx
je 0x18002805e
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov qword [rbx + 0x20], r14
mov dword [rbx + 0x28], 1
lea r14, str.ptxyz
mov r10, r14
nop
inc r10
cmp byte [r10], 0
jne 0x180028070
sub r10, r14
mov rbx, qword [rdi + 0x30]
test rbx, rbx
je 0x1800280f0
nop word [rax + rax]
mov rcx, qword [rbx]
mov byte [rsp + 0x20], r12b
xor r11d, r11d
test rcx, rcx
je 0x1800280b5
mov rax, qword [rbx + 0x10]
jmp 0x1800280bf
mov r9, qword [r9 + 0x30]
test r9, r9
jne 0x180027f90
jmp 0x180028065
mov rax, r11
lea rcx, [0x18006a258]
cmp rax, r10
jne 0x1800280e5
lea r8, [rcx + rax]
cmp rcx, r8
jae 0x1800280f6
mov rdx, r14
sub rdx, rcx
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x1800280e5
inc rcx
cmp rcx, r8
jb 0x1800280d3
jmp 0x1800280f6
mov rbx, qword [rbx + 0x58]
test rbx, rbx
jne 0x180028090
jmp 0x1800280f3
xor r11d, r11d
mov rbx, r11
test rbx, rbx
je 0x1800283c3
lea rax, [0x18004fe34]
mov r11, rax
nop dword [rax]
inc r11
cmp byte [r11], 0
jne 0x180028110
sub r11, rax
mov r14, qword [rbx + 0x40]
mov r15, r14
test r14, r14
je 0x180028181
nop dword [rax + rax]
mov rcx, qword [r15]
mov byte [rsp + 0x20], r12b
test rcx, rcx
je 0x180028143
mov rax, qword [r15 + 0x10]
jmp 0x18002814c
xor eax, eax
lea rcx, [0x18006a258]
cmp rax, r11
jne 0x180028178
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180028174
lea rdx, [0x18004fe34]
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x180028178
inc rcx
cmp rcx, r8
jb 0x180028164
xor eax, eax
jmp 0x180028186
mov r15, qword [r15 + 0x30]
test r15, r15
jne 0x180028130
xor eax, eax
mov r15d, eax
lea rcx, [0x180050b1c]
mov r11, rcx
inc r11
cmp byte [r11], 0
jne 0x180028190
sub r11, rcx
test r14, r14
je 0x1800281f2
mov rcx, qword [r14]
mov byte [rsp + 0x20], r12b
test rcx, rcx
je 0x1800281b4
mov rax, qword [r14 + 0x10]
jmp 0x1800281bb
lea rcx, [0x18006a258]
cmp rax, r11
jne 0x1800281e5
lea r8, [rcx + rax]
cmp rcx, r8
jae 0x1800281f7
lea rdx, [0x180050b1c]
sub rdx, rcx
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x1800281e5
inc rcx
cmp rcx, r8
jb 0x1800281d3
jmp 0x1800281f7
mov r14, qword [r14 + 0x30]
test r14, r14
je 0x1800281f2
xor eax, eax
jmp 0x1800281a1
xor eax, eax
mov r14d, eax
test r15, r15
je 0x18002834a
test r14, r14
je 0x18002834a
mov rax, qword [r15 + 8]
lea r15, [0x18006a258]
mov rcx, r15
test rax, rax
cmovne rcx, rax
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atof]
movaps xmm6, xmm0
mov rax, qword [r14 + 8]
mov rcx, r15
test rax, rax
cmovne rcx, rax
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atof]
movaps xmm7, xmm0
mov rcx, qword [r13 + 8]
sub rcx, qword [r13]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rax, rdx
dec eax
movsxd rcx, eax
lea r14, [rcx + rcx*2]
shl r14, 4
add r14, qword [r13]
mov r15, qword [r14]
mov rcx, qword [r15 + 8]
mov qword [rsp + 0x30], rcx
xor r11d, r11d
mov dword [rsp + 0x38], r11d
mov rdx, r15
cmp byte [rcx + 0x19], r11b
jne 0x1800282c5
nop
mov qword [rsp + 0x30], rcx
comisd xmm6, xmmword [rcx + 0x20]
seta al
test al, al
je 0x1800282ac
mov dword [rsp + 0x38], r11d
mov rcx, qword [rcx + 0x10]
jmp 0x1800282ba
mov dword [rsp + 0x38], 1
mov rdx, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], r11b
je 0x180028290
mov byte [rsp + 0x20], r12b
cmp byte [rdx + 0x19], r11b
jne 0x1800282db
movsd xmm0, qword [rdx + 0x20]
comisd xmm0, xmm6
seta al
test al, al
je 0x18002834d
movabs rax, 0x555555555555555
cmp qword [r14 + 8], rax
je 0x180029426
mov qword [rsp + 0xc8], r14
mov qword [rsp + 0xd0], r11
mov ecx, 0x30
call fcn.18004a46c
nop
movsd qword [rax + 0x20], xmm6
movsd qword [rax + 0x28], xmm7
mov qword [rax], r15
mov qword [rax + 8], r15
mov qword [rax + 0x10], r15
mov word [rax + 0x18], 0
xor r11d, r11d
mov qword [rsp + 0xd0], r11
movups xmm0, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0x30], xmm0
mov r8, rax
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.1800115e0
xor r11d, r11d
lea r14, str.ptxyz
mov r10, r14
inc r10
cmp byte [r10], 0
jne 0x180028357
sub r10, r14
mov rbx, qword [rbx + 0x58]
test rbx, rbx
je 0x1800283c3
nop dword [rax]
mov rcx, qword [rbx]
mov byte [rsp + 0x20], r12b
test rcx, rcx
je 0x180028383
mov rax, qword [rbx + 0x10]
jmp 0x18002838d
mov rax, r11
lea rcx, [0x18006a258]
cmp rax, r10
jne 0x1800283ba
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x1800280f6
mov rdx, r14
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x1800283ba
inc rcx
cmp rcx, r8
jb 0x1800283a5
jmp 0x1800280f6
mov rbx, qword [rbx + 0x58]
test rbx, rbx
jne 0x180028370
lea r10, str.curve
mov r9, r10
nop dword [rax]
inc r9
cmp byte [r9], 0
jne 0x1800283d0
sub r9, r10
mov rdi, qword [rdi + 0x58]
test rdi, rdi
je 0x180028444
nop word [rax + rax]
mov rcx, qword [rdi]
mov byte [rsp + 0x20], r12b
test rcx, rcx
je 0x180028403
mov rax, qword [rdi + 0x10]
jmp 0x18002840d
mov rax, r11
lea rcx, [0x18006a258]
cmp rax, r9
jne 0x18002843b
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180028431
mov rdx, r10
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x18002843b
inc rcx
cmp rcx, r8
jb 0x180028421
mov r15, qword [rsp + 0x58]
jmp 0x180027e83
mov rdi, qword [rdi + 0x58]
test rdi, rdi
jne 0x1800283f0
mov r12b, 1
mov byte [rsp + 0x20], r12b
movsd qword [rsp + 0x80], xmm9
mov r14, qword [rsp + 0x58]
mov qword [rsp + 0x88], r14
mov r15, qword [rsp + 0x68]
lea rbx, [r15 + 0x18]
mov rdi, qword [rbx]
mov qword [rsp + 0xa8], rbx
mov qword [rsp + 0xb0], r11
mov ecx, 0x40
call fcn.18004a46c
mov r8, rax
mov qword [rsp + 0xb0], rax
movups xmmword [rax + 0x20], xmm8
movups xmm0, xmmword [rsp + 0x80]
movups xmmword [rax + 0x30], xmm0
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
mov rax, qword [rbx]
mov rcx, qword [rax + 8]
mov qword [rsp + 0x30], rcx
xor edi, edi
mov dword [rsp + 0x38], edi
cmp byte [rcx + 0x19], dil
jne 0x180028518
nop
mov qword [rsp + 0x30], rcx
movsd xmm0, qword [r8 + 0x20]
subsd xmm0, qword [rcx + 0x20]
comisd xmm12, xmm0
ja 0x180028507
ucomisd xmm0, xmm12
jp 0x1800284fd
jne 0x1800284fd
movsd xmm0, qword [rcx + 0x28]
comisd xmm0, xmmword [r8 + 0x28]
ja 0x180028507
mov dword [rsp + 0x38], edi
mov rcx, qword [rcx + 0x10]
jmp 0x180028512
mov dword [rsp + 0x38], 1
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], dil
je 0x1800284d0
movabs rax, 0x3ffffffffffffff
cmp qword [rbx + 8], rax
je 0x18002942c
mov qword [rsp + 0xb0], rdi
movups xmm0, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0x30], xmm0
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.1800115e0
mov rbx, qword [r15 + 8]
test rbx, rbx
jne 0x18002857d
lea ecx, [rbx + 0x38]
call fcn.18004a46c
mov rbx, rax
mov qword [rax], r14
movups xmmword [rax + 8], xmm8
movsd qword [rax + 0x18], xmm9
movsd qword [rax + 0x20], xmm10
mov qword [rax + 0x28], rdi
mov qword [rax + 0x30], rdi
jmp 0x1800285cb
movsd xmm0, qword [rbx + 8]
movaps xmmword [rsp + 0x30], xmm8
movsd qword [rsp + 0x40], xmm9
mov r9, r14
lea r8, [rsp + 0x30]
mov rcx, r15
comisd xmm0, xmm11
jbe 0x1800285b0
mov rdx, qword [rbx + 0x28]
call fcn.180027530
mov qword [rbx + 0x28], rax
jmp 0x1800285bd
mov rdx, qword [rbx + 0x30]
call fcn.180027530
mov qword [rbx + 0x30], rax
comisd xmm10, xmmword [rbx + 0x20]
jbe 0x1800285cb
movsd qword [rbx + 0x20], xmm10
mov qword [r15 + 8], rbx
mov r13, qword [rsp + 0x90]
lea r14, [0x18006a258]
lea rbx, str.body
jmp 0x1800285f4
mov r9, qword [r9 + 0x30]
test r9, r9
jne 0x180027960
lea r11, [0x18004fe34]
mov r10, r11
nop
inc r10
cmp byte [r10], 0
jne 0x180028600
sub r10, r11
mov r9, qword [r13]
test r9, r9
je 0x180029230
nop dword [rax]
mov rcx, qword [r9]
test rcx, rcx
je 0x18002862e
mov rax, qword [r9 + 0x10]
jmp 0x180028634
mov rax, rdi
mov rcx, r14
cmp rax, r10
jne 0x180029223
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180028664
mov rdx, r11
sub rdx, rcx
nop dword [rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x180029223
inc rcx
cmp rcx, r8
jb 0x180028650
mov rax, qword [r9 + 8]
mov rcx, r14
test rax, rax
cmovne rcx, rax
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atof]
movaps xmm11, xmm0
mov ecx, 0x40
call fcn.18004a46c
mov r15, rax
mov qword [rsp + 0x58], rax
test rax, rax
je 0x1800286bd
mov word [rax], 0
xorps xmm1, xmm1
movups xmmword [rax + 8], xmm1
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], 0xf
mov byte [rax + 8], 0
mov qword [rax + 0x28], rdi
mov qword [rax + 0x30], rdi
mov qword [rax + 0x38], rdi
jmp 0x1800286c5
mov r15, rdi
mov qword [rsp + 0x58], rdi
mov dil, 1
lea r8, str.epsilon
mov r10, r8
inc r10
cmp byte [r10], 0
jne 0x1800286d2
sub r10, r8
mov rdx, qword [r13]
test rdx, rdx
je 0x180028755
mov rcx, qword [rdx]
test rcx, rcx
je 0x1800286f5
mov rax, qword [rdx + 0x10]
jmp 0x1800286fa
xor eax, eax
mov rcx, r14
cmp rax, r10
jne 0x18002874c
lea r9, [rax + rcx]
cmp rcx, r9
jae 0x180028721
sub r8, rcx
nop dword [rax + rax]
movzx eax, byte [rcx + r8]
cmp byte [rcx], al
jne 0x180028745
inc rcx
cmp rcx, r9
jb 0x180028710
mov rax, qword [rdx + 8]
mov rcx, r14
test rax, rax
cmovne rcx, rax
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
movzx edi, dil
test eax, eax
mov eax, 0
cmove edi, eax
jmp 0x180028757
lea r8, str.epsilon
mov rdx, qword [rdx + 0x30]
test rdx, rdx
jne 0x1800286e7
xor eax, eax
movaps xmm10, xmm11
mov byte [rsp + 0x80], dil
mov r10, rbx
inc r10
cmp byte [r10], 0
jne 0x180028766
sub r10, rbx
mov r8, qword [rsi + 0x30]
test r8, r8
je 0x1800287d0
nop dword [rax + rax]
mov rcx, qword [r8]
test rcx, rcx
je 0x18002878e
mov rax, qword [r8 + 0x10]
jmp 0x180028795
lea rcx, [0x18006a258]
cmp rax, r10
jne 0x1800287c2
lea r9, [rax + rcx]
cmp rcx, r9
jae 0x180028803
mov rdx, rbx
sub rdx, rcx
nop dword [rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x1800287c2
inc rcx
cmp rcx, r9
jb 0x1800287b0
jmp 0x180028803
mov r8, qword [r8 + 0x58]
test r8, r8
mov eax, 0
jne 0x180028780
mov rax, qword [rsi + 8]
lea rdx, [0x18006a258]
test rax, rax
cmovne rdx, rax
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x1800287f0
lea rcx, [r15 + 8]
call fcn.180007330
mov r9, rbx
inc r9
cmp byte [r9], 0
jne 0x180028806
sub r9, rbx
mov rbx, qword [rsi + 0x30]
test rbx, rbx
je 0x18002886e
lea r10, str.body
mov rcx, qword [rbx]
xor r11d, r11d
test rcx, rcx
je 0x180028833
mov rax, qword [rbx + 0x10]
jmp 0x18002883d
mov rax, r11
lea rcx, [0x18006a258]
cmp rax, r9
jne 0x180028863
lea r8, [rcx + rax]
cmp rcx, r8
jae 0x180028874
mov rdx, r10
sub rdx, rcx
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x180028863
inc rcx
cmp rcx, r8
jb 0x180028851
jmp 0x180028874
mov rbx, qword [rbx + 0x58]
test rbx, rbx
jne 0x180028822
jmp 0x180028871
xor r11d, r11d
mov rbx, r11
test rbx, rbx
je 0x18002892a
mov rax, qword [rbx + 8]
lea rdx, [0x18006a258]
test rax, rax
cmovne rdx, rax
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x180028896
lea rcx, [r15 + 8]
call fcn.180007330
lea rdx, str.body
mov r9, rdx
inc r9
cmp byte [r9], 0
jne 0x1800288b3
sub r9, rdx
mov rbx, qword [rbx + 0x58]
test rbx, rbx
je 0x180028927
nop dword [rax + rax]
mov rcx, qword [rbx]
xor r11d, r11d
test rcx, rcx
je 0x1800288e1
mov rax, qword [rbx + 0x10]
jmp 0x1800288eb
mov rax, r11
lea rcx, [0x18006a258]
cmp rax, r9
jne 0x18002891c
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180028874
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x180028915
inc rcx
cmp rcx, r8
jb 0x180028900
jmp 0x180028874
lea rdx, str.body
mov rbx, qword [rbx + 0x58]
test rbx, rbx
jne 0x1800288d0
jmp 0x18002892a
xor r11d, r11d
lea rdx, [0x180050ae8]
mov r10, rdx
inc r10
cmp byte [r10], 0
jne 0x180028934
sub r10, rdx
mov r8, qword [r13]
test r8, r8
je 0x1800289d8
nop dword [rax]
mov rcx, qword [r8]
lea rbx, [0x18006a258]
test rcx, rcx
je 0x180028965
mov rax, qword [r8 + 0x10]
jmp 0x18002896b
mov rax, r11
mov rcx, rbx
cmp rax, r10
jne 0x1800289cb
lea r9, [rax + rcx]
cmp rcx, r9
jae 0x180028990
sub rdx, rcx
nop dword [rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x1800289c4
inc rcx
cmp rcx, r9
jb 0x180028980
mov rax, qword [r8 + 8]
mov rcx, rbx
test rax, rax
cmovne rcx, rax
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atof]
mov byte [rsp + 0x80], dil
movaps xmm8, xmm11
unpcklpd xmm8, xmm0
movaps xmm10, xmm8
unpckhpd xmm10, xmm8
movaps xmm11, xmm8
jmp 0x1800289e8
lea rdx, [0x180050ae8]
mov r8, qword [r8 + 0x30]
test r8, r8
jne 0x180028950
movaps xmm8, xmm11
unpcklpd xmm8, xmm11
lea rbx, [0x18006a258]
movsd xmm9, qword [rsp + 0x80]
lea rdx, str.formated
mov r10, rdx
nop dword [rax]
inc r10
cmp byte [r10], 0
jne 0x180028a00
sub r10, rdx
mov r8, qword [r13]
test r8, r8
je 0x180028a6d
mov rcx, qword [r8]
test rcx, rcx
je 0x180028a23
mov rax, qword [r8 + 0x10]
jmp 0x180028a28
xor eax, eax
mov rcx, rbx
cmp rax, r10
jne 0x180028aa7
lea r9, [rcx + rax]
cmp rcx, r9
jae 0x180028a50
sub rdx, rcx
nop dword [rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x180028aa0
inc rcx
cmp rcx, r9
jb 0x180028a40
mov rax, qword [r8 + 8]
mov rcx, rbx
test rax, rax
cmovne rcx, rax
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
test eax, eax
je 0x180028a6d
mov byte [r15 + 1], 1
lea rdx, str.curve
mov r9, rdx
inc r9
cmp byte [r9], 0
jne 0x180028a77
sub r9, rdx
mov rdi, qword [rsi + 0x30]
test rdi, rdi
je 0x180028af5
nop dword [rax]
mov rcx, qword [rdi]
xor ebx, ebx
test rcx, rcx
je 0x180028ab6
mov rax, qword [rdi + 0x10]
jmp 0x180028ac0
lea rdx, str.formated
mov r8, qword [r8 + 0x30]
test r8, r8
jne 0x180028a15
jmp 0x180028a6d
mov rax, rbx
lea rcx, [0x18006a258]
cmp rax, r9
jne 0x180028aea
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180028b00
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x180028ae3
inc rcx
cmp rcx, r8
jb 0x180028ad1
jmp 0x180028b00
lea rdx, str.curve
mov rdi, qword [rdi + 0x58]
test rdi, rdi
jne 0x180028a90
jmp 0x180028af7
xor ebx, ebx
mov rdi, rbx
nop word [rax + rax]
test rdi, rdi
je 0x18002908c
lea r13, [r15 + 0x28]
mov r14, qword [r13 + 8]
mov r8, qword [r13]
mov rcx, r14
sub rcx, r8
movabs r15, 0x2aaaaaaaaaaaaaab
mov rax, r15
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea r9, [rdx + 1]
cmp r9, rdx
jae 0x180028b8e
lea r15, [r9 + r9*2]
shl r15, 4
add r15, r8
mov rbx, r15
cmp r15, r14
je 0x180028b7c
mov rcx, qword [rbx + 0x20]
test rcx, rcx
je 0x180028b68
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov rdx, rbx
mov rcx, rbx
call fcn.1800228c0
add rbx, 0x30
cmp rbx, r14
jne 0x180028b55
mov qword [r13 + 8], r15
xor ebx, ebx
movabs r15, 0x2aaaaaaaaaaaaaab
jmp 0x180028bd6
jbe 0x180028bd6
mov rcx, qword [r13 + 0x10]
sub rcx, r8
mov rax, r15
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp r9, rdx
jbe 0x180028bc2
lea r8, [rsp + 0x50]
mov rdx, r9
mov rcx, r13
call fcn.180022b90
jmp 0x180028bd6
mov r8, r13
mov edx, 1
mov rcx, r14
call fcn.180022da0
mov qword [r13 + 8], rax
lea r11, [0x180050b14]
mov r10, r11
inc r10
cmp byte [r10], 0
jne 0x180028be0
sub r10, r11
mov r9, qword [rdi + 0x40]
test r9, r9
je 0x180028cc7
nop dword [rax]
mov rcx, qword [r9]
test rcx, rcx
je 0x180028c0e
mov rax, qword [r9 + 0x10]
jmp 0x180028c18
mov rax, rbx
lea rcx, [0x18006a258]
cmp rax, r10
jne 0x180028d01
lea r8, [rcx + rax]
cmp rcx, r8
jae 0x180028c44
mov rdx, r11
sub rdx, rcx
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x180028d01
inc rcx
cmp rcx, r8
jb 0x180028c30
mov rax, qword [r9 + 8]
lea rdx, [0x18006a258]
test rax, rax
cmovne rdx, rax
mov rcx, rbx
lea r8, str.cubic
movzx eax, byte [r8 + rcx]
inc rcx
cmp al, byte [rdx + rcx - 1]
jne 0x180028cc7
cmp rcx, 6
jne 0x180028c60
mov rcx, qword [r13 + 8]
sub rcx, qword [r13]
mov rax, r15
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rax, rdx
dec eax
movsxd rcx, eax
lea rbx, [rcx + rcx*2]
shl rbx, 4
add rbx, qword [r13]
cmp dword [rbx + 0x28], 1
je 0x180028cc0
mov rcx, qword [rbx + 0x20]
test rcx, rcx
je 0x180028cc0
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
xor eax, eax
mov qword [rbx + 0x20], rax
mov dword [rbx + 0x28], 1
lea r10, str.ptxyz
mov r9, r10
inc r9
cmp byte [r9], 0
jne 0x180028cd1
sub r9, r10
mov rbx, qword [rdi + 0x30]
test rbx, rbx
je 0x180028d4d
nop word [rax + rax]
mov rcx, qword [rbx]
xor r15d, r15d
test rcx, rcx
je 0x180028d10
mov rax, qword [rbx + 0x10]
jmp 0x180028d1a
mov r9, qword [r9 + 0x30]
test r9, r9
jne 0x180028c00
jmp 0x180028cc7
mov rax, r15
lea rcx, [0x18006a258]
cmp rax, r9
jne 0x180028d42
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180028d53
mov rdx, r10
sub rdx, rcx
nop
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x180028d42
inc rcx
cmp rcx, r8
jb 0x180028d30
jmp 0x180028d53
mov rbx, qword [rbx + 0x58]
test rbx, rbx
jne 0x180028cf0
jmp 0x180028d50
xor r15d, r15d
mov rbx, r15
test rbx, rbx
je 0x18002900e
lea rax, [0x18004fe34]
mov r10, rax
inc r10
cmp byte [r10], 0
jne 0x180028d66
sub r10, rax
mov r14, qword [rbx + 0x40]
mov r11, r14
test r14, r14
je 0x180028dcb
nop
mov rcx, qword [r11]
test rcx, rcx
je 0x180028d8e
mov rax, qword [r11 + 0x10]
jmp 0x180028d98
mov rax, r15
lea rcx, [0x18006a258]
cmp rax, r10
jne 0x180028dc2
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180028dce
lea rdx, [0x18004fe34]
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x180028dc2
inc rcx
cmp rcx, r8
jb 0x180028db0
jmp 0x180028dce
mov r11, qword [r11 + 0x30]
test r11, r11
jne 0x180028d80
mov r11, r15
lea rax, [0x180050b1c]
mov r10, rax
nop dword [rax + rax]
inc r10
cmp byte [r10], 0
jne 0x180028de0
sub r10, rax
test r14, r14
je 0x180028e3c
mov rcx, qword [r14]
test rcx, rcx
je 0x180028dff
mov rax, qword [r14 + 0x10]
jmp 0x180028e09
mov rax, r15
lea rcx, [0x18006a258]
cmp rax, r10
jne 0x180028e33
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180028e3f
lea rdx, [0x180050b1c]
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x180028e33
inc rcx
cmp rcx, r8
jb 0x180028e21
jmp 0x180028e3f
mov r14, qword [r14 + 0x30]
test r14, r14
jne 0x180028df1
mov r14, r15
test r11, r11
je 0x180028f9a
test r14, r14
je 0x180028f9a
mov rax, qword [r11 + 8]
lea r15, [0x18006a258]
mov rcx, r15
test rax, rax
cmovne rcx, rax
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atof]
movaps xmm6, xmm0
mov rax, qword [r14 + 8]
mov rcx, r15
test rax, rax
cmovne rcx, rax
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atof]
movaps xmm7, xmm0
mov rcx, qword [r13 + 8]
sub rcx, qword [r13]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rax, rdx
dec eax
movsxd rcx, eax
lea r14, [rcx + rcx*2]
shl r14, 4
add r14, qword [r13]
mov r15, qword [r14]
mov rcx, qword [r15 + 8]
mov qword [rsp + 0x30], rcx
xor r8d, r8d
mov dword [rsp + 0x38], r8d
mov rdx, r15
cmp byte [rcx + 0x19], r8b
jne 0x180028f10
nop word [rax + rax]
mov qword [rsp + 0x30], rcx
comisd xmm6, xmmword [rcx + 0x20]
seta al
test al, al
je 0x180028efc
mov dword [rsp + 0x38], r8d
mov rcx, qword [rcx + 0x10]
jmp 0x180028f0a
mov dword [rsp + 0x38], 1
mov rdx, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], r8b
je 0x180028ee0
cmp byte [rdx + 0x19], r8b
jne 0x180028f26
movsd xmm0, qword [rdx + 0x20]
comisd xmm0, xmm6
seta al
test al, al
je 0x180028f97
movabs rax, 0x555555555555555
cmp qword [r14 + 8], rax
je 0x180029432
mov qword [rsp + 0xd8], r14
mov qword [rsp + 0xe0], r8
mov ecx, 0x30
call fcn.18004a46c
nop
movsd qword [rax + 0x20], xmm6
movsd qword [rax + 0x28], xmm7
mov qword [rax], r15
mov qword [rax + 8], r15
mov qword [rax + 0x10], r15
mov word [rax + 0x18], 0
xor r15d, r15d
mov qword [rsp + 0xe0], r15
movups xmm0, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0x30], xmm0
mov r8, rax
lea rdx, [rsp + 0x30]
mov rcx, r14
call fcn.1800115e0
jmp 0x180028f9a
xor r15d, r15d
lea r10, str.ptxyz
mov r9, r10
inc r9
cmp byte [r9], 0
jne 0x180028fa4
sub r9, r10
mov rbx, qword [rbx + 0x58]
test rbx, rbx
je 0x18002900e
nop dword [rax]
mov rcx, qword [rbx]
test rcx, rcx
je 0x180028fce
mov rax, qword [rbx + 0x10]
jmp 0x180028fd8
mov rax, r15
lea rcx, [0x18006a258]
cmp rax, r9
jne 0x180029005
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180028d53
mov rdx, r10
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x180029005
inc rcx
cmp rcx, r8
jb 0x180028ff0
jmp 0x180028d53
mov rbx, qword [rbx + 0x58]
test rbx, rbx
jne 0x180028fc0
lea rdx, str.curve
mov r9, rdx
nop dword [rax + rax]
inc r9
cmp byte [r9], 0
jne 0x180029020
sub r9, rdx
mov rdi, qword [rdi + 0x58]
test rdi, rdi
je 0x18002908c
mov rcx, qword [rdi]
test rcx, rcx
je 0x180029043
mov rax, qword [rdi + 0x10]
jmp 0x18002904d
mov rax, r15
lea rcx, [0x18006a258]
cmp rax, r9
jne 0x180029083
lea r8, [rcx + rax]
cmp rcx, r8
jae 0x180029070
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x18002907c
inc rcx
cmp rcx, r8
jb 0x180029060
mov r15, qword [rsp + 0x58]
xor ebx, ebx
jmp 0x180028b00
lea rdx, str.curve
mov rdi, qword [rdi + 0x58]
test rdi, rdi
jne 0x180029035
movsd qword [rsp + 0x80], xmm9
mov r14, qword [rsp + 0x58]
mov qword [rsp + 0x88], r14
mov r15, qword [rsp + 0x68]
lea rbx, [r15 + 0x28]
mov rdi, qword [rbx]
mov qword [rsp + 0xb8], rbx
xor eax, eax
mov qword [rsp + 0xc0], rax
lea ecx, [rax + 0x40]
call fcn.18004a46c
mov r8, rax
mov qword [rsp + 0xc0], rax
movups xmmword [rax + 0x20], xmm8
movups xmm0, xmmword [rsp + 0x80]
movups xmmword [rax + 0x30], xmm0
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
mov rax, qword [rbx]
mov rcx, qword [rax + 8]
mov qword [rsp + 0x30], rcx
xor edi, edi
mov dword [rsp + 0x38], edi
cmp byte [rcx + 0x19], dil
jne 0x180029158
nop
mov qword [rsp + 0x30], rcx
movsd xmm0, qword [r8 + 0x20]
subsd xmm0, qword [rcx + 0x20]
comisd xmm12, xmm0
ja 0x180029147
ucomisd xmm0, xmm12
jp 0x18002913d
jne 0x18002913d
movsd xmm0, qword [rcx + 0x28]
comisd xmm0, xmmword [r8 + 0x28]
ja 0x180029147
mov dword [rsp + 0x38], edi
mov rcx, qword [rcx + 0x10]
jmp 0x180029152
mov dword [rsp + 0x38], 1
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], dil
je 0x180029110
movabs rax, 0x3ffffffffffffff
cmp qword [rbx + 8], rax
je 0x180029438
mov qword [rsp + 0xc0], rdi
movups xmm0, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0x30], xmm0
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.1800115e0
mov rbx, qword [r15 + 0x10]
test rbx, rbx
jne 0x1800291c8
lea ecx, [rbx + 0x38]
call fcn.18004a46c
mov rbx, rax
mov qword [rax], r14
movups xmmword [rax + 8], xmm8
movsd qword [rax + 0x18], xmm9
movsd qword [rax + 0x20], xmm10
mov qword [rax + 0x28], rdi
mov qword [rax + 0x30], rdi
mov qword [r15 + 0x10], rax
lea r11, [0x18004fe34]
jmp 0x180029230
movsd xmm0, qword [rbx + 8]
movaps xmmword [rsp + 0x30], xmm8
movsd qword [rsp + 0x40], xmm9
mov r9, r14
lea r8, [rsp + 0x30]
mov rcx, r15
comisd xmm0, xmm11
jbe 0x1800291fb
mov rdx, qword [rbx + 0x28]
call fcn.180027530
mov qword [rbx + 0x28], rax
jmp 0x180029208
mov rdx, qword [rbx + 0x30]
call fcn.180027530
mov qword [rbx + 0x30], rax
comisd xmm10, xmmword [rbx + 0x20]
jbe 0x180029216
movsd qword [rbx + 0x20], xmm10
mov qword [r15 + 0x10], rbx
lea r11, [0x18004fe34]
jmp 0x180029230
mov r9, qword [r9 + 0x30]
test r9, r9
jne 0x180028620
lea r13, [0x180050adc]
mov r9, r13
nop word [rax + rax]
inc r9
cmp byte [r9], 0
jne 0x180029240
sub r9, r13
mov rsi, qword [rsi + 0x58]
test rsi, rsi
je 0x1800292b1
nop word [rax + rax]
mov rcx, qword [rsi]
lea r14, [0x18006a258]
test rcx, rcx
je 0x180029275
mov rax, qword [rsi + 0x10]
jmp 0x18002927b
mov rax, rdi
mov rcx, r14
cmp rax, r9
jne 0x1800292a8
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180027917
mov rdx, r13
sub rdx, rcx
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x1800292a8
inc rcx
cmp rcx, r8
jb 0x180029293
jmp 0x180027917
mov rsi, qword [rsi + 0x58]
test rsi, rsi
jne 0x180029260
movzx esi, byte [rsp + 0x21]
jmp 0x1800292d9
mov r10, qword [r10 + 0x58]
test r10, r10
jne 0x1800278b0
movzx esi, byte [rsp + 0x21]
jmp 0x1800292d9
mov rbx, qword [rbx + 0x58]
test rbx, rbx
jne 0x180027840
lea rcx, [rsp + 0x170]
call fcn.18001a800
nop
jmp 0x180029387
cmp al, 0x3c
jne 0x18002943e
lea rax, [r8 + 1]
mov qword [rsp + 0x58], rax
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x110]
call fcn.180016700
mov rcx, rax
test rax, rax
jne 0x180029321
mov r8, qword [rsp + 0x58]
jmp 0x1800277e0
cmp qword [rsp + 0x140], 0
je 0x180029346
mov rax, qword [rsp + 0x148]
mov qword [rcx + 0x50], rax
mov rax, qword [rsp + 0x148]
mov qword [rax + 0x58], rcx
jmp 0x180029352
mov qword [rax + 0x50], r14
mov qword [rsp + 0x140], rcx
mov qword [rsp + 0x148], rcx
lea rax, [rsp + 0x110]
mov qword [rcx + 0x20], rax
mov qword [rcx + 0x58], r14
mov r8, qword [rsp + 0x58]
jmp 0x1800277e0
mov rcx, qword [rsp + 0xa0]
call fcn.18004a4a8
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
test r12b, r12b
je 0x1800293d2
cmp qword [r15 + 0x80], 0
jne 0x1800293bb
lea rcx, str.Warning:_Missing_hooks_for_supporting_scheduling_by_tick._n
call qword [case.0x1800256af.0]
cmp qword [r15 + 0x88], 0
jne 0x1800293d2
lea rcx, str.Warning:_Missing_hooks_for_supporting_scheduling_by_time._n
call qword [case.0x1800256af.0]
movzx eax, sil
mov rcx, qword [rsp + 0x101a0]
xor rcx, rsp
call fcn.18004a540
lea r11, [rsp + 0x10220]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
call fcn.180011860
nop
call fcn.180011860
nop
call fcn.180011860
nop
call fcn.180011860
nop
lea rdx, [0x18004ff18]
lea rcx, [rsp + 0xe8]
call fcn.18001a760
lea rdx, [0x180062b70]
lea rcx, [rsp + 0xe8]
call sub.VCRUNTIME140.dll__CxxThrowException
int3