Function at 0x140004990
Capabilities:
Terminate process

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r13
push r14
lea rbp, [rsp - 0x1768]
mov eax, 0x1868
call fcn.14000e1d0
sub rsp, rax
mov rax, qword [0x1400163a0]
xor rax, rsp
mov qword [rbp + 0x1750], rax
xor r14d, r14d
mov qword [rsp + 0x48], r8
mov qword [rsp + 0x40], rdx
mov rdi, r8
mov rsi, rdx
mov rbx, rcx
test rdx, rdx
je 0x140004a55
lea edx, [r14 + 0x2e]
mov rcx, rsi
call sub.VCRUNTIME140.dll_strrchr
mov r10, rax
test rax, rax
je 0x140004a55
mov r9, qword [0x140016488]
inc r10
test r9, r9
je 0x140004a55
nop dword [rax]
mov r8, qword [r9]
mov rcx, rbx
sub r8, rbx
nop dword [rax]
movzx edx, byte [rcx]
movzx eax, byte [rcx + r8]
sub edx, eax
jne 0x140004a23
inc rcx
test eax, eax
jne 0x140004a10
test edx, edx
jne 0x140004a4c
mov r8, qword [r9 + 8]
mov rax, r10
sub r8, r10
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x140004a44
inc rax
test ecx, ecx
jne 0x140004a31
test edx, edx
je 0x140004b5d
mov r9, qword [r9 + 0x18]
test r9, r9
jne 0x140004a00
mov r13, r14
mov r8d, 0x400
lea rcx, [rbp + 0x350]
mov rdx, rdi
call fcn.14000c9a0
test r13, r13
je 0x140004aa0
mov edx, 0x2f
lea rcx, [rbp + 0x350]
call sub.VCRUNTIME140.dll_strrchr
mov rdx, rax
test rax, rax
je 0x140004aa0
mov rcx, r13
sub rdx, r13
movzx eax, byte [rcx]
mov byte [rdx + rcx + 1], al
lea rcx, [rcx + 1]
test al, al
jne 0x140004a91
mov r9, rsi
lea r8, str._s.diff
mov edx, 0x400
lea rcx, [rsp + 0x50]
call fcn.14000a5f0
mov r9, qword [0x140016020]
lea rax, [rsp + 0x50]
mov qword [rsp + 0x30], rax
lea r8, str.diff__s___s____s______s_
lea rax, [rbp + 0x350]
mov qword [rsp + 0x28], rsi
mov edx, 0xc00
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x750]
call fcn.14000a5f0
lea rcx, [rbp + 0x750]
call fcn.14000c840
mov edi, eax
test eax, 0xffffff00
jne 0x1400050c4
cmp eax, 1
jg 0x1400050c4
jne 0x140004b66
lea rcx, [rsp + 0x50]
call fcn.140003b80
test eax, eax
jg 0x140004b7b
lea rcx, str.diff_command_not_found:__s_n
call sub.libintl_8.dll_libintl_gettext
mov ecx, 2
mov rbx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
lea r8, [rbp + 0x750]
mov rdx, rbx
mov rcx, rax
call fcn.14000a880
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov r13, qword [r9 + 0x10]
jmp 0x140004a58
test edi, edi
jne 0x140004b7b
lea rcx, [rsp + 0x50]
call fcn.140009200
xor al, al
jmp 0x140004e63
mov qword [rsp + 0x18a0], r12
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x1860], r15
call fcn.140003ab0
mov r12d, eax
mov rdx, r14
nop dword [rax + rax]
movzx ecx, byte [rbp + rdx + 0x350]
mov byte [rbp + rdx + 0x1350], cl
lea rdx, [rdx + 1]
test cl, cl
jne 0x140004ba0
nop word [rax + rax]
mov r15d, r14d
lea rcx, [rbp + 0x350]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x140004bd1
add eax, 3
movsxd rsi, eax
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rdi, rax
test rax, rax
je 0x140005080
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rbx, rax
test rax, rax
je 0x140005077
lea rax, [rbp + 0x350]
mov r8, rdi
sub r8, rax
lea rdx, [rbp + 0x350]
nop
movzx ecx, byte [rdx]
mov byte [r8 + rdx], cl
lea rdx, [rdx + 1]
test cl, cl
jne 0x140004c20
mov edx, 0x2e
mov rcx, rdi
call sub.VCRUNTIME140.dll_strrchr
test rax, rax
je 0x140005069
mov byte [rax], 0
lea r8, str._s__d._s
inc rax
mov r9, rdi
mov qword [rsp + 0x28], rax
mov rdx, rsi
mov rcx, rbx
mov dword [rsp + 0x20], r14d
call fcn.14000a5f0
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
lea rdx, [0x14000f84c]
mov rcx, rbx
call fcn.14000c740
test rax, rax
je 0x140004d70
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rsi, qword [rsp + 0x40]
lea rax, [rsp + 0x50]
mov r9, qword [0x140016020]
lea r8, str.diff__s___s____s______s_
mov qword [rsp + 0x30], rax
lea rcx, [rbp + 0x750]
mov qword [rsp + 0x28], rsi
mov edx, 0xc00
mov qword [rsp + 0x20], rbx
call fcn.14000a5f0
lea rcx, [rbp + 0x750]
call fcn.14000c840
mov edi, eax
test eax, 0xffffff00
jne 0x140004e82
cmp eax, 1
jg 0x140004e82
jne 0x140004d36
lea rcx, [rsp + 0x50]
call fcn.140003b80
test eax, eax
jg 0x140004d3e
lea rcx, str.diff_command_not_found:__s_n
call sub.libintl_8.dll_libintl_gettext
mov ecx, 2
mov rbx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
lea r8, [rbp + 0x750]
mov rdx, rbx
mov rcx, rax
call fcn.14000a880
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
test edi, edi
je 0x140004e3e
lea rcx, [rsp + 0x50]
call fcn.140003ab0
cmp eax, r12d
jge 0x140004d65
mov r8d, 0x400
lea rcx, [rbp + 0x1350]
mov rdx, rbx
mov r12d, eax
call fcn.14000c9a0
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x140004d7e
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rsi, qword [rsp + 0x40]
inc r14d
cmp r15d, 9
jl 0x140004bc0
test r13, r13
je 0x140004ef1
mov rbx, qword [rsp + 0x48]
lea rax, [rsp + 0x50]
mov r9, qword [0x140016020]
lea r8, str.diff__s___s____s______s_
mov qword [rsp + 0x30], rax
lea rcx, [rbp + 0x750]
mov qword [rsp + 0x28], rsi
mov edx, 0xc00
mov qword [rsp + 0x20], rbx
call fcn.14000a5f0
lea rcx, [rbp + 0x750]
call fcn.14000c840
mov edi, eax
test eax, 0xffffff00
jne 0x140004fe2
cmp eax, 1
jg 0x140004fe2
jne 0x140004ebd
lea rcx, [rsp + 0x50]
call fcn.140003b80
test eax, eax
jg 0x140004ecd
lea rcx, str.diff_command_not_found:__s_n
call sub.libintl_8.dll_libintl_gettext
mov ecx, 2
mov rbx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
lea r8, [rbp + 0x750]
mov rdx, rbx
mov rcx, rax
call fcn.14000a880
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
lea rcx, [rsp + 0x50]
call fcn.140009200
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xor al, al
mov r12, qword [rsp + 0x18a0]
mov r15, qword [rsp + 0x1860]
mov rcx, qword [rbp + 0x1750]
xor rcx, rsp
call fcn.14000e240
add rsp, 0x1868
pop r14
pop r13
pop rdi
pop rsi
pop rbx
pop rbp
ret
lea rcx, str.diff_command_failed_with_status__d:__s_n
call sub.libintl_8.dll_libintl_gettext
mov ecx, 2
mov rbx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
lea r9, [rbp + 0x750]
mov r8d, edi
mov rcx, rax
mov rdx, rbx
call fcn.14000a880
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
test edi, edi
jne 0x140004ecd
lea rcx, [rsp + 0x50]
call fcn.140009200
jmp 0x140004e51
lea rcx, [rsp + 0x50]
call fcn.140003ab0
cmp eax, r12d
jge 0x140004ef1
mov r8d, 0x400
lea rcx, [rbp + 0x1350]
mov rdx, rbx
call fcn.14000c9a0
mov rcx, qword [0x140016478]
lea rdx, [0x14000ff88]
call fcn.14000c740
mov rbx, rax
test rax, rax
je 0x140004f37
mov r8, qword [str._w__U3]
lea r9, [rbp + 0x1350]
lea rdx, str.diff__s__s__s_n
mov qword [rsp + 0x20], rsi
mov rcx, rax
call fcn.14000a880
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rax, qword [0x140016478]
lea r8, str.diff__s___s____s_______s_
mov r9, qword [str._w__U3]
lea rcx, [rbp + 0x750]
mov qword [rsp + 0x30], rax
mov edx, 0xc00
lea rax, [rbp + 0x1350]
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rax
call fcn.14000a5f0
mov rbx, qword [0x140016478]
lea rcx, [rbp + 0x750]
call fcn.14000c840
mov edi, eax
test eax, 0xffffff00
jne 0x14000502e
cmp eax, 1
jg 0x14000502e
jne 0x14000501d
mov rcx, rbx
call fcn.140003b80
test eax, eax
jg 0x14000501d
lea rcx, str.diff_command_not_found:__s_n
call sub.libintl_8.dll_libintl_gettext
mov ecx, 2
mov rbx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
lea r8, [rbp + 0x750]
mov rdx, rbx
mov rcx, rax
call fcn.14000a880
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
lea rcx, str.diff_command_failed_with_status__d:__s_n
call sub.libintl_8.dll_libintl_gettext
mov ecx, 2
mov rbx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
lea r9, [rbp + 0x750]
mov r8d, edi
mov rcx, rax
mov rdx, rbx
call fcn.14000a880
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
lea rcx, [rsp + 0x50]
call fcn.140009200
mov al, 1
jmp 0x140004e53
lea rcx, str.diff_command_failed_with_status__d:__s_n
call sub.libintl_8.dll_libintl_gettext
mov ecx, 2
mov rbx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
lea r9, [rbp + 0x750]
mov r8d, edi
mov rcx, rax
mov rdx, rbx
call fcn.14000a880
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, rbx
jmp 0x14000507a
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov ecx, dword [rax]
call fcn.14000be10
lea rcx, str.Unable_to_check_secondary_comparison_files:__s_n
mov rdi, rax
call sub.libintl_8.dll_libintl_gettext
mov ecx, 2
mov rbx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r8, rdi
mov rdx, rbx
mov rcx, rax
call fcn.14000a880
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
lea rcx, str.diff_command_failed_with_status__d:__s_n
call sub.libintl_8.dll_libintl_gettext
mov ecx, 2
mov rbx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
lea r9, [rbp + 0x750]
mov r8d, edi
mov rcx, rax
mov rdx, rbx
call fcn.14000a880
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3