Function at 0x1400011a0
Capabilities:
Terminate process

Disassembly:
push rbp
push rbx
push r15
lea rbp, [rsp - 0x970]
sub rsp, 0xa70
mov rax, qword [0x140005008]
xor rax, rsp
mov qword [rbp + 0x950], rax
mov ecx, 0x18
call fcn.140001fe8
mov rbx, rax
mov qword [rsp + 0x38], rax
xor eax, eax
xorps xmm0, xmm0
xor r15d, r15d
xor r9d, r9d
xor ecx, ecx
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], rax
mov eax, 1
mov r8d, eax
mov qword [rbx], r15
mov edx, eax
mov dword [rbx + 8], 0x38d1b717
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov rcx, rax
mov qword [rbx + 0x10], rax
call qword [sym.imp.KERNEL32.dll_ResetEvent]
lea rdx, [0x140003390]
lea rcx, [rbp + 0x350]
call fcn.140001140
lea rcx, str.Main_CLSF_must_have_less_then_100_000_000_lines_and_must_contain_FINI_command_at_the_end_n
mov qword [rsp + 0x20], r15
call fcn.140001080
lea rcx, str.There_must_be_file_SPINDLE_SPEED.txt_in_the_same_folder__contains_SPINDLE_commands_for_each_milling_cutter_by_name_n
call fcn.140001080
lea rcx, str.Main_CLSF__SPINDLE_SPEED.txt_and_this_program_must_be_in_the_same_folder_n_n_n
call fcn.140001080
lea rcx, str.Enter_main_CLSF_file_name_with_extension:_n
call fcn.140001080
lea rdx, [rbp + 0x650]
lea rcx, [0x1400034fc]
call fcn.1400010e0
lea rcx, [0x140003500]
call fcn.140001080
lea r8, [rbp + 0x650]
lea rdx, [0x140003504]
lea rcx, [rbp + 0x150]
call fcn.140001140
mov ecx, r15d
mov eax, r15d
nop dword [rax]
cmp byte [rbp + rax + 0x150], r15b
je 0x1400012e5
cmp byte [rbp + rax + 0x151], r15b
je 0x1400012e3
cmp byte [rbp + rax + 0x152], r15b
je 0x1400012de
cmp byte [rbp + rax + 0x153], r15b
je 0x1400012d9
add rax, 4
add ecx, 4
cmp rax, 0x100
jl 0x1400012a0
jmp 0x1400012e5
add ecx, 3
jmp 0x1400012e5
add ecx, 2
jmp 0x1400012e5
inc ecx
movsxd rax, ecx
test ecx, ecx
js 0x140001304
nop dword [rax]
cmp byte [rbp + rax + 0x150], 0x2e
je 0x140001302
dec ecx
sub rax, 1
jns 0x1400012f0
test ecx, ecx
jg 0x14000131b
lea rcx, str.ERROR:_there_is_no_extension_or_filename..._nexit_n
call fcn.140001080
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
movsxd rax, ecx
lea rdx, str..nmps
lea rcx, [rbp + 0x150]
mov qword [rsp + 0xa90], rsi
add rcx, rax
mov qword [rsp + 0xa60], r14
call fcn.140001140
lea r9, [rbp + 0x150]
lea r8, [rbp + 0x350]
lea rdx, str._s_s
lea rcx, [rbp + 0x50]
call fcn.140001140
lea rdx, [0x14000354c]
lea rcx, [rbp + 0x50]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen]
mov qword [rsp + 0x30], rax
mov rbx, rax
test rax, rax
jne 0x1400013aa
lea r9, [0x14000354c]
lea r8, [rbp + 0x50]
lea rdx, str.ERROR_001:_file_open:_nstrpath:__s_nstrmode:__s_n
lea rcx, [rbp + 0x750]
call fcn.140001140
lea r8, [rbp + 0x750]
call fcn.140001a70
lea rdx, str.NPATH_0____________________________________n
mov rcx, rbx
call fcn.140001030
lea r9, [rbp + 0x650]
lea r8, [rbp + 0x350]
lea rdx, str._s_s
lea rcx, [rbp + 0x50]
call fcn.140001140
lea rdx, [0x14000357c]
lea rcx, [rbp + 0x50]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen]
mov qword [rsp + 0x28], rax
test rax, rax
jne 0x14000141c
lea r9, [0x14000357c]
lea r8, [rbp + 0x50]
lea rdx, str.ERROR_001:_file_open:_nstrpath:__s_nstrmode:__s_n
lea rcx, [rbp + 0x750]
call fcn.140001140
lea r8, [rbp + 0x750]
call fcn.140001a70
lea r8, [rbp + 0x350]
lea rdx, str._sSPINDLE_SPEED.txt
lea rcx, [rbp + 0x50]
call fcn.140001140
lea rdx, [0x14000357c]
lea rcx, [rbp + 0x50]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen]
mov rsi, rax
test rax, rax
jne 0x140001476
lea r9, [0x14000357c]
lea r8, [rbp + 0x50]
lea rdx, str.ERROR_001:_file_open:_nstrpath:__s_nstrmode:__s_n
lea rcx, [rbp + 0x750]
call fcn.140001140
lea r8, [rbp + 0x750]
call fcn.140001a70
mov r14d, r15d
mov rbx, 0xffffffffffffffff
cmp r14d, 0x3e8
jge 0x1400014e1
mov r8, rsi
lea rcx, [rsp + 0x50]
mov edx, 0xff
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fgets]
lea rdx, str.FINI
lea rcx, [rsp + 0x50]
call qword [sym.imp.VCRUNTIME140.dll_strstr]
lea rdx, [rsp + 0x50]
mov rcx, rbx
inc rcx
cmp byte [rdx + rcx], r15b
jne 0x1400014b6
test rax, rax
je 0x1400014c9
cmp ecx, 5
jle 0x1400014e1
mov r8, rsi
lea rcx, [rsp + 0x50]
mov edx, 0xff
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fgets]
inc r14d
jmp 0x140001480
lea eax, [r14 - 1]
mov edx, r14d
cmp eax, 0x3e6
ja 0x140001a54
mov qword [rsp + 0xa98], rdi
lea rcx, str.Number_of_tools_in_SPINDLE_SPEED.txt___d_n
mov qword [rsp + 0xaa0], r12
mov qword [rsp + 0xa68], r13
call fcn.140001080
movsxd rcx, r14d
mov eax, 0x200
mul rcx
cmovo rax, rbx
mov rcx, rax
call fcn.140002024
xor r8d, r8d
xor edx, edx
mov rcx, rsi
mov r12, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
mov edi, r15d
mov r8, rsi
lea rcx, [rsp + 0x50]
mov edx, 0xff
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fgets]
lea rdx, str.FINI
lea rcx, [rsp + 0x50]
call qword [sym.imp.VCRUNTIME140.dll_strstr]
test rax, rax
je 0x140001582
lea rcx, [rsp + 0x50]
mov rax, rbx
inc rax
cmp byte [rcx + rax], r15b
jne 0x140001574
cmp eax, 5
jle 0x1400015fb
movsxd rbx, edi
lea r8, [rsp + 0x50]
shl rbx, 9
lea rdx, [0x1400034fc]
add rbx, r12
mov rcx, rbx
call fcn.140001140
lea rdx, [rsp + 0x50]
lea rcx, str.tool:____s_n
call fcn.140001080
mov r8, rsi
lea rcx, [rsp + 0x50]
mov edx, 0xff
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fgets]
lea rcx, [rbx + 0x100]
lea r8, [rsp + 0x50]
lea rdx, [0x1400034fc]
call fcn.140001140
lea rdx, [rsp + 0x50]
lea rcx, str.command:____s_n
call fcn.140001080
inc edi
mov rbx, 0xffffffffffffffff
jmp 0x140001542
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
lea rcx, str._nEnter_starting_number_for_new_CLS_toolpath_files:_n
mov dword [rsp + 0x40], r15d
call fcn.140001080
lea rdx, [rsp + 0x40]
lea rcx, [0x140003684]
call fcn.1400010e0
lea rcx, [0x140003500]
call fcn.140001080
dec dword [rsp + 0x40]
mov r13d, ebx
xor esi, esi
nop dword [rax + rax]
mov rbx, qword [rsp + 0x28]
cmp r13d, 0x5f5e100
jge 0x1400019b4
mov r8, rbx
lea rcx, [rsp + 0x50]
mov edx, 0xff
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fgets]
lea rdx, str.FINI
inc r13d
lea rcx, [rsp + 0x50]
call qword [sym.imp.VCRUNTIME140.dll_strstr]
test rax, rax
je 0x1400016a2
test r13d, r13d
jle 0x1400016a2
lea rcx, [rsp + 0x50]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x140001690
cmp eax, 5
jle 0x1400019b4
lea rdx, str.TOOL_PATH
lea rcx, [rsp + 0x50]
call qword [sym.imp.VCRUNTIME140.dll_strstr]
mov rbx, rax
test rax, rax
je 0x140001877
mov edx, dword [rsp + 0x40]
lea r8, [rsp + 0x50]
inc edx
lea rcx, str.num___d_n_s_n
mov dword [rsp + 0x40], edx
call fcn.140001080
movzx ecx, byte [rbx + 0xa]
add rbx, 0xa
xor eax, eax
cmp cl, 0x2c
je 0x140001712
nop word [rax + rax]
mov byte [rbp + rax + 0x250], cl
lea rbx, [rbx + 1]
movzx ecx, byte [rbx]
inc rax
cmp cl, 0x2c
jne 0x1400016f0
cmp rax, 0x100
jae 0x140001a69
mov r8d, dword [rsp + 0x40]
lea r9, [rbp + 0x250]
lea rdx, str._03d__s.cls
mov byte [rbp + rax + 0x250], 0
lea rcx, [rbp + 0x450]
call fcn.140001140
lea rdx, [rbp + 0x450]
lea rcx, str.new_file_name:___s_n
call fcn.140001080
lea rdx, str._TOOL_
lea rcx, [rsp + 0x50]
call qword [sym.imp.VCRUNTIME140.dll_strstr]
xor edx, edx
test rax, rax
je 0x140001998
movzx ecx, byte [rax + 6]
add rax, 6
test cl, cl
je 0x14000179b
cmp cl, 0xa
je 0x14000178e
inc rax
mov byte [rbp + rdx + 0x250], cl
inc rdx
movzx ecx, byte [rax]
test cl, cl
jne 0x140001775
cmp rdx, 0x100
jae 0x140001a69
mov byte [rbp + rdx + 0x250], 0
lea r8, [rbp + 0x250]
lea rdx, [0x1400034fc]
lea rcx, [rbp + 0x550]
call fcn.140001140
lea rdx, [rbp + 0x550]
lea rcx, str.tool_name:___s_n
call fcn.140001080
xor edi, edi
test r14d, r14d
jle 0x140001802
nop word [rax + rax]
mov ecx, edi
lea rdx, [rbp + 0x550]
shl rcx, 9
add rcx, r12
call qword [sym.imp.VCRUNTIME140.dll_strstr]
test rax, rax
jne 0x14000180b
inc edi
cmp edi, r14d
jl 0x1400017e0
cmp edi, r14d
je 0x14000197c
cmp qword [rsp + 0x20], 0
jne 0x140001967
lea r9, [rbp + 0x450]
lea r8, [rbp + 0x350]
lea rdx, str._s_s
lea rcx, [rbp + 0x50]
call fcn.140001140
lea rdx, [0x14000354c]
lea rcx, [rbp + 0x50]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen]
mov rcx, qword [rsp + 0x30]
lea r8, [rbp + 0x450]
movsxd r9, edi
lea rdx, str._s_TOOL__s_n
shl r9, 9
xor r15d, r15d
add r9, r12
mov qword [rsp + 0x20], rax
xor esi, esi
mov rbx, rax
call fcn.140001030
jmp 0x14000187c
mov rbx, qword [rsp + 0x20]
test rbx, rbx
je 0x14000192c
test r15d, r15d
jne 0x140001918
test esi, esi
jne 0x140001918
lea rdx, str.SPINDL
lea rcx, [rsp + 0x50]
call qword [sym.imp.VCRUNTIME140.dll_strstr]
test rax, rax
lea rdx, str.RAPID
mov eax, 1
lea rcx, [rsp + 0x50]
cmovne esi, eax
call qword [sym.imp.VCRUNTIME140.dll_strstr]
lea rdx, str.FEDRAT
mov rbx, rax
lea rcx, [rsp + 0x50]
call qword [sym.imp.VCRUNTIME140.dll_strstr]
test rbx, rbx
jne 0x1400018e4
test rax, rax
je 0x140001913
mov rbx, qword [rsp + 0x20]
test esi, esi
jne 0x140001918
movsxd r8, edi
lea rdx, [0x1400034fc]
shl r8, 9
lea r15d, [rsi + 1]
add r8, 0x100
mov rcx, rbx
add r8, r12
call fcn.140001030
jmp 0x140001918
mov rbx, qword [rsp + 0x20]
lea r8, [rsp + 0x50]
mov rcx, rbx
lea rdx, [0x1400034fc]
call fcn.140001030
lea rdx, str.END_OF_PATH
lea rcx, [rsp + 0x50]
call qword [sym.imp.VCRUNTIME140.dll_strstr]
test rax, rax
je 0x140001640
test rbx, rbx
je 0x140001640
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov qword [rsp + 0x20], 0
jmp 0x140001640
lea rcx, str.ERROR:_new_TOOLPATH_before_previous_END_OF_PATH_command....__nexit
call fcn.140001080
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
lea rdx, [rbp + 0x550]
lea rcx, str.ERROR:_there_is_no_tool__s__in_SPINDLE_SPEED.txt_....__nexit
call fcn.140001080
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
lea rdx, [rbp + 0x450]
lea rcx, str.ERROR:_tool_not_defined____s....__nexit
call fcn.140001080
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rbx, qword [rsp + 0x30]
xor r8d, r8d
mov rcx, rbx
xor edx, edx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
mov r8d, dword [rsp + 0x40]
lea rdx, str.NPATH__d
mov rcx, rbx
call fcn.140001030
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rcx, r12
call fcn.140001d44
mov rbx, qword [rsp + 0x38]
mov rcx, qword [rbx + 0x10]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, 0x18
mov rcx, rbx
call fcn.140001d44
mov r13, qword [rsp + 0xa68]
mov r12, qword [rsp + 0xaa0]
mov rdi, qword [rsp + 0xa98]
mov rsi, qword [rsp + 0xa90]
mov r14, qword [rsp + 0xa60]
mov rcx, qword [rbp + 0x950]
xor rcx, rsp
call fcn.140001d20
add rsp, 0xa70
pop r15
pop rbx
pop rbp
ret
lea rcx, str.ERROR:_ntools___d_check_data_and_FINI_command_at_last_line_in_SPINDLE_SPEED.txt..._nexit_n
call fcn.140001080
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
call fcn.140001e54
int3