Function at 0x180027110
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.18004a3b0
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 [0x180067dc0]
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, [0x18004fe24]
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 0x1800271c2
xor al, al
jmp 0x180028ec6
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.18004a040
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 0x180028e77
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 0x1800272c6
cmp byte [rdi + 1], 0xbb
jne 0x1800272c6
cmp byte [rdi + 2], 0xbf
jne 0x1800272c6
lea r8, [rdi + 3]
mov qword [rsp + 0x58], r8
lea rbx, [0x18004fee0]
nop dword [rax]
movzx eax, byte [r8]
cmp byte [rax + rbx], 0
je 0x1800272ed
nop word [rax + rax]
inc r8
movzx eax, byte [r8]
cmp byte [rax + rbx], 0
jne 0x1800272e0
mov qword [rsp + 0x58], r8
movzx eax, byte [r8]
test al, al
jne 0x180028ddc
lea r10, str.commandSystem
mov rdx, r10
inc rdx
cmp byte [rdx], 0
jne 0x180027308
sub rdx, r10
mov rbx, qword [rsp + 0x140]
test rbx, rbx
je 0x180028dc9
lea r14, [0x18006a258]
nop dword [rax + rax]
mov rcx, qword [rbx]
xor edi, edi
test rcx, rcx
je 0x180027340
mov rax, qword [rbx + 0x10]
jmp 0x180027346
mov rax, rdi
mov rcx, r14
cmp rax, rdx
jne 0x180028dbc
lea r9, [rcx + rax]
cmp rcx, r9
jae 0x180027375
mov r8, r10
sub r8, rcx
nop
movzx eax, byte [rcx + r8]
cmp byte [rcx], al
jne 0x180028dbc
inc rcx
cmp rcx, r9
jb 0x180027360
mov rcx, r15
call fcn.1800240a0
lea r11, str.commands
mov r8, r11
inc r8
cmp byte [r8], 0
jne 0x180027387
sub r8, r11
mov r10, qword [rbx + 0x30]
test r10, r10
je 0x180028dc9
mov rcx, qword [r10]
test rcx, rcx
je 0x1800273ae
mov rax, qword [r10 + 0x10]
jmp 0x1800273b4
mov rax, rdi
mov rcx, r14
cmp rax, r8
jne 0x180028da8
lea r9, [rax + rcx]
cmp rcx, r9
jae 0x1800273e4
mov rdx, r11
sub rdx, rcx
nop dword [rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x180028da8
inc rcx
cmp rcx, r9
jb 0x1800273d0
mov r9b, 1
xor r8d, r8d
lea rdx, [0x180050a8c]
mov rcx, r10
call fcn.18002b4c0
mov rsi, rax
lea r11, [0x18004fde4]
xorps xmm12, xmm12
lea rbx, str.body
lea rcx, str.tick
test rsi, rsi
je 0x180028da1
mov r10, rcx
inc r10
cmp byte [r10], 0
jne 0x180027421
sub r10, rcx
lea r13, [rsi + 0x40]
mov qword [rsp + 0x90], r13
mov r9, qword [r13]
test r9, r9
je 0x1800280eb
nop word [rax + rax]
mov rcx, qword [r9]
mov byte [rsp + 0x20], r12b
test rcx, rcx
je 0x180027463
mov rax, qword [r9 + 0x10]
jmp 0x180027469
mov rax, rdi
mov rcx, r14
cmp rax, r10
jne 0x1800280d7
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x1800274a4
lea rdx, str.tick
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x1800280d7
inc rcx
cmp rcx, r8
jb 0x180027490
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.180049f4c
mov r15, rax
mov qword [rsp + 0x58], rax
test rax, rax
je 0x1800274fd
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 0x180027505
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 0x180027512
sub r10, rax
mov r8, qword [r13]
test r8, r8
je 0x18002759e
xor r11d, r11d
nop word [rax + rax]
mov rcx, qword [r8]
mov byte [rsp + 0x20], r12b
test rcx, rcx
je 0x180027543
mov rax, qword [r8 + 0x10]
jmp 0x180027549
mov rax, r11
mov rcx, r14
cmp rax, r10
jne 0x180027595
lea r9, [rax + rcx]
cmp rcx, r9
jae 0x180027571
lea rdx, str.epsilon
sub rdx, rcx
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x180027595
inc rcx
cmp rcx, r9
jb 0x180027561
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 0x1800275a0
mov r8, qword [r8 + 0x30]
test r8, r8
jne 0x180027530
xor eax, eax
movaps xmm10, xmm11
mov byte [rsp + 0x80], dil
mov r10, rbx
nop
inc r10
cmp byte [r10], 0
jne 0x1800275b0
sub r10, rbx
lea r14, [rsi + 0x30]
mov r9, qword [r14]
test r9, r9
je 0x180027620
nop dword [rax + rax]
mov rcx, qword [r9]
mov byte [rsp + 0x20], r12b
test rcx, rcx
je 0x1800275e3
mov rax, qword [r9 + 0x10]
jmp 0x1800275ea
lea rcx, [0x18006a258]
cmp rax, r10
jne 0x180027612
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180027653
mov rdx, rbx
sub rdx, rcx
nop
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x180027612
inc rcx
cmp rcx, r8
jb 0x180027600
jmp 0x180027653
mov r9, qword [r9 + 0x58]
test r9, r9
mov eax, 0
jne 0x1800275d0
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 0x180027640
lea rcx, [r15 + 8]
call fcn.180006df0
mov r9, rbx
inc r9
cmp byte [r9], 0
jne 0x180027656
sub r9, rbx
mov rbx, qword [r14]
test rbx, rbx
je 0x1800276d1
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 0x180027696
mov rax, qword [rbx + 0x10]
jmp 0x1800276a0
mov rax, r11
lea rcx, [0x18006a258]
cmp rax, r9
jne 0x1800276c6
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x1800276d7
mov rdx, r10
sub rdx, rcx
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x1800276c6
inc rcx
cmp rcx, r8
jb 0x1800276b4
jmp 0x1800276d7
mov rbx, qword [rbx + 0x58]
test rbx, rbx
jne 0x180027680
jmp 0x1800276d4
xor r11d, r11d
mov rbx, r11
test rbx, rbx
je 0x18002779b
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 0x180027700
lea rcx, [r15 + 8]
call fcn.180006df0
lea r10, str.body
mov r9, r10
nop dword [rax]
inc r9
cmp byte [r9], 0
jne 0x180027720
sub r9, r10
mov rbx, qword [rbx + 0x58]
test rbx, rbx
je 0x180027798
nop word [rax + rax]
mov rcx, qword [rbx]
mov byte [rsp + 0x20], r12b
xor r11d, r11d
test rcx, rcx
je 0x180027756
mov rax, qword [rbx + 0x10]
jmp 0x180027760
mov rax, r11
lea rcx, [0x18006a258]
cmp rax, r9
jne 0x18002778d
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x1800276d7
mov rdx, r10
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x18002778d
inc rcx
cmp rcx, r8
jb 0x180027778
jmp 0x1800276d7
mov rbx, qword [rbx + 0x58]
test rbx, rbx
jne 0x180027740
jmp 0x18002779b
xor r11d, r11d
lea rax, [0x180050a98]
mov r10, rax
inc r10
cmp byte [r10], 0
jne 0x1800277a5
sub r10, rax
mov r8, qword [r13]
test r8, r8
je 0x18002784d
nop
mov rcx, qword [r8]
mov byte [rsp + 0x20], r12b
lea rbx, [0x18006a258]
test rcx, rcx
je 0x1800277da
mov rax, qword [r8 + 0x10]
jmp 0x1800277e0
mov rax, r11
mov rcx, rbx
cmp rax, r10
jne 0x180027840
lea r9, [rax + rcx]
cmp rcx, r9
jae 0x180027808
lea rdx, [0x180050a98]
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x180027840
inc rcx
cmp rcx, r9
jb 0x1800277f8
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 0x180027867
mov r8, qword [r8 + 0x30]
test r8, r8
jne 0x1800277c0
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 0x180027871
sub r10, rdi
mov r8, qword [r13]
test r8, r8
je 0x1800278ed
xor r11d, r11d
nop dword [rax]
mov rcx, qword [r8]
mov byte [rsp + 0x20], r12b
test rcx, rcx
je 0x1800278a3
mov rax, qword [r8 + 0x10]
jmp 0x1800278a9
mov rax, r11
mov rcx, rbx
cmp rax, r10
jne 0x180027926
lea r9, [rax + rcx]
cmp rcx, r9
jae 0x1800278d0
mov rdx, rdi
sub rdx, rcx
nop dword [rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x180027926
inc rcx
cmp rcx, r9
jb 0x1800278c0
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 0x1800278ed
mov byte [r15 + 1], 1
lea r10, str.curve
mov r9, r10
inc r9
cmp byte [r9], 0
jne 0x1800278f7
sub r9, r10
mov rdi, qword [r14]
test rdi, rdi
je 0x18002796d
nop dword [rax + rax]
mov rcx, qword [rdi]
mov byte [rsp + 0x20], r12b
xor r11d, r11d
test rcx, rcx
je 0x180027935
mov rax, qword [rdi + 0x10]
jmp 0x18002793b
mov r8, qword [r8 + 0x30]
test r8, r8
jne 0x180027890
jmp 0x1800278ed
mov rax, r11
mov rcx, rbx
cmp rax, r9
jne 0x180027962
lea r8, [rcx + rax]
cmp rcx, r8
jae 0x180027973
mov rdx, r10
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x180027962
inc rcx
cmp rcx, r8
jb 0x180027950
jmp 0x180027973
mov rdi, qword [rdi + 0x58]
test rdi, rdi
jne 0x180027910
jmp 0x180027970
xor r11d, r11d
mov rdi, r11
test rdi, rdi
je 0x180027f34
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 0x180027a07
lea r15, [r9 + r9*2]
shl r15, 4
add r15, r8
mov rbx, r15
cmp r15, r14
je 0x1800279f7
nop dword [rax + rax]
mov rcx, qword [rbx + 0x20]
test rcx, rcx
je 0x1800279e3
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov rdx, rbx
mov rcx, rbx
call fcn.180022370
add rbx, 0x30
cmp rbx, r14
jne 0x1800279d0
mov qword [r13 + 8], r15
movabs r15, 0x2aaaaaaaaaaaaaab
jmp 0x180027a4f
jbe 0x180027a4f
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 0x180027a3b
lea r8, [rsp + 0x50]
mov rdx, r9
mov rcx, r13
call fcn.180022640
jmp 0x180027a4f
mov r8, r13
mov edx, 1
mov rcx, r14
call fcn.180022850
mov qword [r13 + 8], rax
lea rbx, [0x180050ac4]
mov r11, rbx
nop dword [rax]
inc r11
cmp byte [r11], 0
jne 0x180027a60
sub r11, rbx
mov r9, qword [rdi + 0x40]
test r9, r9
je 0x180027b55
nop dword [rax]
mov rcx, qword [r9]
mov byte [rsp + 0x20], r12b
xor r14d, r14d
test rcx, rcx
je 0x180027a96
mov rax, qword [r9 + 0x10]
jmp 0x180027aa0
mov rax, r14
lea rcx, [0x18006a258]
cmp rax, r11
jne 0x180027b96
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180027ad4
mov rdx, rbx
sub rdx, rcx
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x180027b96
inc rcx
cmp rcx, r8
jb 0x180027ac0
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 0x180027b55
cmp rcx, 6
jne 0x180027af0
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 0x180027b4e
mov rcx, qword [rbx + 0x20]
test rcx, rcx
je 0x180027b4e
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 0x180027b60
sub r10, r14
mov rbx, qword [rdi + 0x30]
test rbx, rbx
je 0x180027be0
nop word [rax + rax]
mov rcx, qword [rbx]
mov byte [rsp + 0x20], r12b
xor r11d, r11d
test rcx, rcx
je 0x180027ba5
mov rax, qword [rbx + 0x10]
jmp 0x180027baf
mov r9, qword [r9 + 0x30]
test r9, r9
jne 0x180027a80
jmp 0x180027b55
mov rax, r11
lea rcx, [0x18006a258]
cmp rax, r10
jne 0x180027bd5
lea r8, [rcx + rax]
cmp rcx, r8
jae 0x180027be6
mov rdx, r14
sub rdx, rcx
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x180027bd5
inc rcx
cmp rcx, r8
jb 0x180027bc3
jmp 0x180027be6
mov rbx, qword [rbx + 0x58]
test rbx, rbx
jne 0x180027b80
jmp 0x180027be3
xor r11d, r11d
mov rbx, r11
test rbx, rbx
je 0x180027eb3
lea rax, [0x18004fde4]
mov r11, rax
nop dword [rax]
inc r11
cmp byte [r11], 0
jne 0x180027c00
sub r11, rax
mov r14, qword [rbx + 0x40]
mov r15, r14
test r14, r14
je 0x180027c71
nop dword [rax + rax]
mov rcx, qword [r15]
mov byte [rsp + 0x20], r12b
test rcx, rcx
je 0x180027c33
mov rax, qword [r15 + 0x10]
jmp 0x180027c3c
xor eax, eax
lea rcx, [0x18006a258]
cmp rax, r11
jne 0x180027c68
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180027c64
lea rdx, [0x18004fde4]
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x180027c68
inc rcx
cmp rcx, r8
jb 0x180027c54
xor eax, eax
jmp 0x180027c76
mov r15, qword [r15 + 0x30]
test r15, r15
jne 0x180027c20
xor eax, eax
mov r15d, eax
lea rcx, [0x180050acc]
mov r11, rcx
inc r11
cmp byte [r11], 0
jne 0x180027c80
sub r11, rcx
test r14, r14
je 0x180027ce2
mov rcx, qword [r14]
mov byte [rsp + 0x20], r12b
test rcx, rcx
je 0x180027ca4
mov rax, qword [r14 + 0x10]
jmp 0x180027cab
lea rcx, [0x18006a258]
cmp rax, r11
jne 0x180027cd5
lea r8, [rcx + rax]
cmp rcx, r8
jae 0x180027ce7
lea rdx, [0x180050acc]
sub rdx, rcx
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x180027cd5
inc rcx
cmp rcx, r8
jb 0x180027cc3
jmp 0x180027ce7
mov r14, qword [r14 + 0x30]
test r14, r14
je 0x180027ce2
xor eax, eax
jmp 0x180027c91
xor eax, eax
mov r14d, eax
test r15, r15
je 0x180027e3a
test r14, r14
je 0x180027e3a
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 0x180027db5
nop
mov qword [rsp + 0x30], rcx
comisd xmm6, xmmword [rcx + 0x20]
seta al
test al, al
je 0x180027d9c
mov dword [rsp + 0x38], r11d
mov rcx, qword [rcx + 0x10]
jmp 0x180027daa
mov dword [rsp + 0x38], 1
mov rdx, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], r11b
je 0x180027d80
mov byte [rsp + 0x20], r12b
cmp byte [rdx + 0x19], r11b
jne 0x180027dcb
movsd xmm0, qword [rdx + 0x20]
comisd xmm0, xmm6
seta al
test al, al
je 0x180027e3d
movabs rax, 0x555555555555555
cmp qword [r14 + 8], rax
je 0x180028f16
mov qword [rsp + 0xc8], r14
mov qword [rsp + 0xd0], r11
mov ecx, 0x30
call fcn.180049f4c
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.180011080
xor r11d, r11d
lea r14, str.ptxyz
mov r10, r14
inc r10
cmp byte [r10], 0
jne 0x180027e47
sub r10, r14
mov rbx, qword [rbx + 0x58]
test rbx, rbx
je 0x180027eb3
nop dword [rax]
mov rcx, qword [rbx]
mov byte [rsp + 0x20], r12b
test rcx, rcx
je 0x180027e73
mov rax, qword [rbx + 0x10]
jmp 0x180027e7d
mov rax, r11
lea rcx, [0x18006a258]
cmp rax, r10
jne 0x180027eaa
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180027be6
mov rdx, r14
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x180027eaa
inc rcx
cmp rcx, r8
jb 0x180027e95
jmp 0x180027be6
mov rbx, qword [rbx + 0x58]
test rbx, rbx
jne 0x180027e60
lea r10, str.curve
mov r9, r10
nop dword [rax]
inc r9
cmp byte [r9], 0
jne 0x180027ec0
sub r9, r10
mov rdi, qword [rdi + 0x58]
test rdi, rdi
je 0x180027f34
nop word [rax + rax]
mov rcx, qword [rdi]
mov byte [rsp + 0x20], r12b
test rcx, rcx
je 0x180027ef3
mov rax, qword [rdi + 0x10]
jmp 0x180027efd
mov rax, r11
lea rcx, [0x18006a258]
cmp rax, r9
jne 0x180027f2b
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180027f21
mov rdx, r10
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x180027f2b
inc rcx
cmp rcx, r8
jb 0x180027f11
mov r15, qword [rsp + 0x58]
jmp 0x180027973
mov rdi, qword [rdi + 0x58]
test rdi, rdi
jne 0x180027ee0
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.180049f4c
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 0x180028008
nop
mov qword [rsp + 0x30], rcx
movsd xmm0, qword [r8 + 0x20]
subsd xmm0, qword [rcx + 0x20]
comisd xmm12, xmm0
ja 0x180027ff7
ucomisd xmm0, xmm12
jp 0x180027fed
jne 0x180027fed
movsd xmm0, qword [rcx + 0x28]
comisd xmm0, xmmword [r8 + 0x28]
ja 0x180027ff7
mov dword [rsp + 0x38], edi
mov rcx, qword [rcx + 0x10]
jmp 0x180028002
mov dword [rsp + 0x38], 1
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], dil
je 0x180027fc0
movabs rax, 0x3ffffffffffffff
cmp qword [rbx + 8], rax
je 0x180028f1c
mov qword [rsp + 0xb0], rdi
movups xmm0, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0x30], xmm0
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.180011080
mov rbx, qword [r15 + 8]
test rbx, rbx
jne 0x18002806d
lea ecx, [rbx + 0x38]
call fcn.180049f4c
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 0x1800280bb
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 0x1800280a0
mov rdx, qword [rbx + 0x28]
call fcn.180027020
mov qword [rbx + 0x28], rax
jmp 0x1800280ad
mov rdx, qword [rbx + 0x30]
call fcn.180027020
mov qword [rbx + 0x30], rax
comisd xmm10, xmmword [rbx + 0x20]
jbe 0x1800280bb
movsd qword [rbx + 0x20], xmm10
mov qword [r15 + 8], rbx
mov r13, qword [rsp + 0x90]
lea r14, [0x18006a258]
lea rbx, str.body
jmp 0x1800280e4
mov r9, qword [r9 + 0x30]
test r9, r9
jne 0x180027450
lea r11, [0x18004fde4]
mov r10, r11
nop
inc r10
cmp byte [r10], 0
jne 0x1800280f0
sub r10, r11
mov r9, qword [r13]
test r9, r9
je 0x180028d20
nop dword [rax]
mov rcx, qword [r9]
test rcx, rcx
je 0x18002811e
mov rax, qword [r9 + 0x10]
jmp 0x180028124
mov rax, rdi
mov rcx, r14
cmp rax, r10
jne 0x180028d13
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180028154
mov rdx, r11
sub rdx, rcx
nop dword [rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x180028d13
inc rcx
cmp rcx, r8
jb 0x180028140
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.180049f4c
mov r15, rax
mov qword [rsp + 0x58], rax
test rax, rax
je 0x1800281ad
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 0x1800281b5
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 0x1800281c2
sub r10, r8
mov rdx, qword [r13]
test rdx, rdx
je 0x180028245
mov rcx, qword [rdx]
test rcx, rcx
je 0x1800281e5
mov rax, qword [rdx + 0x10]
jmp 0x1800281ea
xor eax, eax
mov rcx, r14
cmp rax, r10
jne 0x18002823c
lea r9, [rax + rcx]
cmp rcx, r9
jae 0x180028211
sub r8, rcx
nop dword [rax + rax]
movzx eax, byte [rcx + r8]
cmp byte [rcx], al
jne 0x180028235
inc rcx
cmp rcx, r9
jb 0x180028200
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 0x180028247
lea r8, str.epsilon
mov rdx, qword [rdx + 0x30]
test rdx, rdx
jne 0x1800281d7
xor eax, eax
movaps xmm10, xmm11
mov byte [rsp + 0x80], dil
mov r10, rbx
inc r10
cmp byte [r10], 0
jne 0x180028256
sub r10, rbx
mov r8, qword [rsi + 0x30]
test r8, r8
je 0x1800282c0
nop dword [rax + rax]
mov rcx, qword [r8]
test rcx, rcx
je 0x18002827e
mov rax, qword [r8 + 0x10]
jmp 0x180028285
lea rcx, [0x18006a258]
cmp rax, r10
jne 0x1800282b2
lea r9, [rax + rcx]
cmp rcx, r9
jae 0x1800282f3
mov rdx, rbx
sub rdx, rcx
nop dword [rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x1800282b2
inc rcx
cmp rcx, r9
jb 0x1800282a0
jmp 0x1800282f3
mov r8, qword [r8 + 0x58]
test r8, r8
mov eax, 0
jne 0x180028270
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 0x1800282e0
lea rcx, [r15 + 8]
call fcn.180006df0
mov r9, rbx
inc r9
cmp byte [r9], 0
jne 0x1800282f6
sub r9, rbx
mov rbx, qword [rsi + 0x30]
test rbx, rbx
je 0x18002835e
lea r10, str.body
mov rcx, qword [rbx]
xor r11d, r11d
test rcx, rcx
je 0x180028323
mov rax, qword [rbx + 0x10]
jmp 0x18002832d
mov rax, r11
lea rcx, [0x18006a258]
cmp rax, r9
jne 0x180028353
lea r8, [rcx + rax]
cmp rcx, r8
jae 0x180028364
mov rdx, r10
sub rdx, rcx
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x180028353
inc rcx
cmp rcx, r8
jb 0x180028341
jmp 0x180028364
mov rbx, qword [rbx + 0x58]
test rbx, rbx
jne 0x180028312
jmp 0x180028361
xor r11d, r11d
mov rbx, r11
test rbx, rbx
je 0x18002841a
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 0x180028386
lea rcx, [r15 + 8]
call fcn.180006df0
lea rdx, str.body
mov r9, rdx
inc r9
cmp byte [r9], 0
jne 0x1800283a3
sub r9, rdx
mov rbx, qword [rbx + 0x58]
test rbx, rbx
je 0x180028417
nop dword [rax + rax]
mov rcx, qword [rbx]
xor r11d, r11d
test rcx, rcx
je 0x1800283d1
mov rax, qword [rbx + 0x10]
jmp 0x1800283db
mov rax, r11
lea rcx, [0x18006a258]
cmp rax, r9
jne 0x18002840c
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180028364
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x180028405
inc rcx
cmp rcx, r8
jb 0x1800283f0
jmp 0x180028364
lea rdx, str.body
mov rbx, qword [rbx + 0x58]
test rbx, rbx
jne 0x1800283c0
jmp 0x18002841a
xor r11d, r11d
lea rdx, [0x180050a98]
mov r10, rdx
inc r10
cmp byte [r10], 0
jne 0x180028424
sub r10, rdx
mov r8, qword [r13]
test r8, r8
je 0x1800284c8
nop dword [rax]
mov rcx, qword [r8]
lea rbx, [0x18006a258]
test rcx, rcx
je 0x180028455
mov rax, qword [r8 + 0x10]
jmp 0x18002845b
mov rax, r11
mov rcx, rbx
cmp rax, r10
jne 0x1800284bb
lea r9, [rax + rcx]
cmp rcx, r9
jae 0x180028480
sub rdx, rcx
nop dword [rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x1800284b4
inc rcx
cmp rcx, r9
jb 0x180028470
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 0x1800284d8
lea rdx, [0x180050a98]
mov r8, qword [r8 + 0x30]
test r8, r8
jne 0x180028440
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 0x1800284f0
sub r10, rdx
mov r8, qword [r13]
test r8, r8
je 0x18002855d
mov rcx, qword [r8]
test rcx, rcx
je 0x180028513
mov rax, qword [r8 + 0x10]
jmp 0x180028518
xor eax, eax
mov rcx, rbx
cmp rax, r10
jne 0x180028597
lea r9, [rcx + rax]
cmp rcx, r9
jae 0x180028540
sub rdx, rcx
nop dword [rax]
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x180028590
inc rcx
cmp rcx, r9
jb 0x180028530
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 0x18002855d
mov byte [r15 + 1], 1
lea rdx, str.curve
mov r9, rdx
inc r9
cmp byte [r9], 0
jne 0x180028567
sub r9, rdx
mov rdi, qword [rsi + 0x30]
test rdi, rdi
je 0x1800285e5
nop dword [rax]
mov rcx, qword [rdi]
xor ebx, ebx
test rcx, rcx
je 0x1800285a6
mov rax, qword [rdi + 0x10]
jmp 0x1800285b0
lea rdx, str.formated
mov r8, qword [r8 + 0x30]
test r8, r8
jne 0x180028505
jmp 0x18002855d
mov rax, rbx
lea rcx, [0x18006a258]
cmp rax, r9
jne 0x1800285da
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x1800285f0
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x1800285d3
inc rcx
cmp rcx, r8
jb 0x1800285c1
jmp 0x1800285f0
lea rdx, str.curve
mov rdi, qword [rdi + 0x58]
test rdi, rdi
jne 0x180028580
jmp 0x1800285e7
xor ebx, ebx
mov rdi, rbx
nop word [rax + rax]
test rdi, rdi
je 0x180028b7c
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 0x18002867e
lea r15, [r9 + r9*2]
shl r15, 4
add r15, r8
mov rbx, r15
cmp r15, r14
je 0x18002866c
mov rcx, qword [rbx + 0x20]
test rcx, rcx
je 0x180028658
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov rdx, rbx
mov rcx, rbx
call fcn.180022370
add rbx, 0x30
cmp rbx, r14
jne 0x180028645
mov qword [r13 + 8], r15
xor ebx, ebx
movabs r15, 0x2aaaaaaaaaaaaaab
jmp 0x1800286c6
jbe 0x1800286c6
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 0x1800286b2
lea r8, [rsp + 0x50]
mov rdx, r9
mov rcx, r13
call fcn.180022640
jmp 0x1800286c6
mov r8, r13
mov edx, 1
mov rcx, r14
call fcn.180022850
mov qword [r13 + 8], rax
lea r11, [0x180050ac4]
mov r10, r11
inc r10
cmp byte [r10], 0
jne 0x1800286d0
sub r10, r11
mov r9, qword [rdi + 0x40]
test r9, r9
je 0x1800287b7
nop dword [rax]
mov rcx, qword [r9]
test rcx, rcx
je 0x1800286fe
mov rax, qword [r9 + 0x10]
jmp 0x180028708
mov rax, rbx
lea rcx, [0x18006a258]
cmp rax, r10
jne 0x1800287f1
lea r8, [rcx + rax]
cmp rcx, r8
jae 0x180028734
mov rdx, r11
sub rdx, rcx
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x1800287f1
inc rcx
cmp rcx, r8
jb 0x180028720
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 0x1800287b7
cmp rcx, 6
jne 0x180028750
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 0x1800287b0
mov rcx, qword [rbx + 0x20]
test rcx, rcx
je 0x1800287b0
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 0x1800287c1
sub r9, r10
mov rbx, qword [rdi + 0x30]
test rbx, rbx
je 0x18002883d
nop word [rax + rax]
mov rcx, qword [rbx]
xor r15d, r15d
test rcx, rcx
je 0x180028800
mov rax, qword [rbx + 0x10]
jmp 0x18002880a
mov r9, qword [r9 + 0x30]
test r9, r9
jne 0x1800286f0
jmp 0x1800287b7
mov rax, r15
lea rcx, [0x18006a258]
cmp rax, r9
jne 0x180028832
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180028843
mov rdx, r10
sub rdx, rcx
nop
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x180028832
inc rcx
cmp rcx, r8
jb 0x180028820
jmp 0x180028843
mov rbx, qword [rbx + 0x58]
test rbx, rbx
jne 0x1800287e0
jmp 0x180028840
xor r15d, r15d
mov rbx, r15
test rbx, rbx
je 0x180028afe
lea rax, [0x18004fde4]
mov r10, rax
inc r10
cmp byte [r10], 0
jne 0x180028856
sub r10, rax
mov r14, qword [rbx + 0x40]
mov r11, r14
test r14, r14
je 0x1800288bb
nop
mov rcx, qword [r11]
test rcx, rcx
je 0x18002887e
mov rax, qword [r11 + 0x10]
jmp 0x180028888
mov rax, r15
lea rcx, [0x18006a258]
cmp rax, r10
jne 0x1800288b2
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x1800288be
lea rdx, [0x18004fde4]
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x1800288b2
inc rcx
cmp rcx, r8
jb 0x1800288a0
jmp 0x1800288be
mov r11, qword [r11 + 0x30]
test r11, r11
jne 0x180028870
mov r11, r15
lea rax, [0x180050acc]
mov r10, rax
nop dword [rax + rax]
inc r10
cmp byte [r10], 0
jne 0x1800288d0
sub r10, rax
test r14, r14
je 0x18002892c
mov rcx, qword [r14]
test rcx, rcx
je 0x1800288ef
mov rax, qword [r14 + 0x10]
jmp 0x1800288f9
mov rax, r15
lea rcx, [0x18006a258]
cmp rax, r10
jne 0x180028923
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x18002892f
lea rdx, [0x180050acc]
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x180028923
inc rcx
cmp rcx, r8
jb 0x180028911
jmp 0x18002892f
mov r14, qword [r14 + 0x30]
test r14, r14
jne 0x1800288e1
mov r14, r15
test r11, r11
je 0x180028a8a
test r14, r14
je 0x180028a8a
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 0x180028a00
nop word [rax + rax]
mov qword [rsp + 0x30], rcx
comisd xmm6, xmmword [rcx + 0x20]
seta al
test al, al
je 0x1800289ec
mov dword [rsp + 0x38], r8d
mov rcx, qword [rcx + 0x10]
jmp 0x1800289fa
mov dword [rsp + 0x38], 1
mov rdx, rcx
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], r8b
je 0x1800289d0
cmp byte [rdx + 0x19], r8b
jne 0x180028a16
movsd xmm0, qword [rdx + 0x20]
comisd xmm0, xmm6
seta al
test al, al
je 0x180028a87
movabs rax, 0x555555555555555
cmp qword [r14 + 8], rax
je 0x180028f22
mov qword [rsp + 0xd8], r14
mov qword [rsp + 0xe0], r8
mov ecx, 0x30
call fcn.180049f4c
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.180011080
jmp 0x180028a8a
xor r15d, r15d
lea r10, str.ptxyz
mov r9, r10
inc r9
cmp byte [r9], 0
jne 0x180028a94
sub r9, r10
mov rbx, qword [rbx + 0x58]
test rbx, rbx
je 0x180028afe
nop dword [rax]
mov rcx, qword [rbx]
test rcx, rcx
je 0x180028abe
mov rax, qword [rbx + 0x10]
jmp 0x180028ac8
mov rax, r15
lea rcx, [0x18006a258]
cmp rax, r9
jne 0x180028af5
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180028843
mov rdx, r10
sub rdx, rcx
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x180028af5
inc rcx
cmp rcx, r8
jb 0x180028ae0
jmp 0x180028843
mov rbx, qword [rbx + 0x58]
test rbx, rbx
jne 0x180028ab0
lea rdx, str.curve
mov r9, rdx
nop dword [rax + rax]
inc r9
cmp byte [r9], 0
jne 0x180028b10
sub r9, rdx
mov rdi, qword [rdi + 0x58]
test rdi, rdi
je 0x180028b7c
mov rcx, qword [rdi]
test rcx, rcx
je 0x180028b33
mov rax, qword [rdi + 0x10]
jmp 0x180028b3d
mov rax, r15
lea rcx, [0x18006a258]
cmp rax, r9
jne 0x180028b73
lea r8, [rcx + rax]
cmp rcx, r8
jae 0x180028b60
sub rdx, rcx
nop
movzx eax, byte [rdx + rcx]
cmp byte [rcx], al
jne 0x180028b6c
inc rcx
cmp rcx, r8
jb 0x180028b50
mov r15, qword [rsp + 0x58]
xor ebx, ebx
jmp 0x1800285f0
lea rdx, str.curve
mov rdi, qword [rdi + 0x58]
test rdi, rdi
jne 0x180028b25
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.180049f4c
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 0x180028c48
nop
mov qword [rsp + 0x30], rcx
movsd xmm0, qword [r8 + 0x20]
subsd xmm0, qword [rcx + 0x20]
comisd xmm12, xmm0
ja 0x180028c37
ucomisd xmm0, xmm12
jp 0x180028c2d
jne 0x180028c2d
movsd xmm0, qword [rcx + 0x28]
comisd xmm0, xmmword [r8 + 0x28]
ja 0x180028c37
mov dword [rsp + 0x38], edi
mov rcx, qword [rcx + 0x10]
jmp 0x180028c42
mov dword [rsp + 0x38], 1
mov rcx, qword [rcx]
cmp byte [rcx + 0x19], dil
je 0x180028c00
movabs rax, 0x3ffffffffffffff
cmp qword [rbx + 8], rax
je 0x180028f28
mov qword [rsp + 0xc0], rdi
movups xmm0, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0x30], xmm0
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.180011080
mov rbx, qword [r15 + 0x10]
test rbx, rbx
jne 0x180028cb8
lea ecx, [rbx + 0x38]
call fcn.180049f4c
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, [0x18004fde4]
jmp 0x180028d20
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 0x180028ceb
mov rdx, qword [rbx + 0x28]
call fcn.180027020
mov qword [rbx + 0x28], rax
jmp 0x180028cf8
mov rdx, qword [rbx + 0x30]
call fcn.180027020
mov qword [rbx + 0x30], rax
comisd xmm10, xmmword [rbx + 0x20]
jbe 0x180028d06
movsd qword [rbx + 0x20], xmm10
mov qword [r15 + 0x10], rbx
lea r11, [0x18004fde4]
jmp 0x180028d20
mov r9, qword [r9 + 0x30]
test r9, r9
jne 0x180028110
lea r13, [0x180050a8c]
mov r9, r13
nop word [rax + rax]
inc r9
cmp byte [r9], 0
jne 0x180028d30
sub r9, r13
mov rsi, qword [rsi + 0x58]
test rsi, rsi
je 0x180028da1
nop word [rax + rax]
mov rcx, qword [rsi]
lea r14, [0x18006a258]
test rcx, rcx
je 0x180028d65
mov rax, qword [rsi + 0x10]
jmp 0x180028d6b
mov rax, rdi
mov rcx, r14
cmp rax, r9
jne 0x180028d98
lea r8, [rax + rcx]
cmp rcx, r8
jae 0x180027407
mov rdx, r13
sub rdx, rcx
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x180028d98
inc rcx
cmp rcx, r8
jb 0x180028d83
jmp 0x180027407
mov rsi, qword [rsi + 0x58]
test rsi, rsi
jne 0x180028d50
movzx esi, byte [rsp + 0x21]
jmp 0x180028dc9
mov r10, qword [r10 + 0x58]
test r10, r10
jne 0x1800273a0
movzx esi, byte [rsp + 0x21]
jmp 0x180028dc9
mov rbx, qword [rbx + 0x58]
test rbx, rbx
jne 0x180027330
lea rcx, [rsp + 0x170]
call fcn.18001a2b0
nop
jmp 0x180028e77
cmp al, 0x3c
jne 0x180028f2e
lea rax, [r8 + 1]
mov qword [rsp + 0x58], rax
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x110]
call fcn.1800161b0
mov rcx, rax
test rax, rax
jne 0x180028e11
mov r8, qword [rsp + 0x58]
jmp 0x1800272d0
cmp qword [rsp + 0x140], 0
je 0x180028e36
mov rax, qword [rsp + 0x148]
mov qword [rcx + 0x50], rax
mov rax, qword [rsp + 0x148]
mov qword [rax + 0x58], rcx
jmp 0x180028e42
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 0x1800272d0
mov rcx, qword [rsp + 0xa0]
call fcn.180049f88
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
test r12b, r12b
je 0x180028ec2
cmp qword [r15 + 0x80], 0
jne 0x180028eab
lea rcx, str.Warning:_Missing_hooks_for_supporting_scheduling_by_tick._n
call qword [case.0x18002514f.0]
cmp qword [r15 + 0x88], 0
jne 0x180028ec2
lea rcx, str.Warning:_Missing_hooks_for_supporting_scheduling_by_time._n
call qword [case.0x18002514f.0]
movzx eax, sil
mov rcx, qword [rsp + 0x101a0]
xor rcx, rsp
call fcn.18004a020
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.180011300
nop
call fcn.180011300
nop
call fcn.180011300
nop
call fcn.180011300
nop
lea rdx, [0x18004fec8]
lea rcx, [rsp + 0xe8]
call fcn.18001a210
lea rdx, [0x180062a20]
lea rcx, [rsp + 0xe8]
call sub.VCRUNTIME140.dll__CxxThrowException
int3