Function at 0x140163810
Capabilities:
Write file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x318
mov rdi, qword [0x140207460]
lea r9, [0x1401f68ae]
mov rax, qword [rdi]
mov qword [rsp + 0x308], rax
xor eax, eax
mov rbp, rcx
lea rdi, [rsp + 0x128]
mov rsi, r8
mov ecx, 0xf
lea rbx, [rsp + 0x120]
mov qword [rsp + 0x90], rdx
lea r8, str.__no_color
lea rdx, [0x1401f68bc]
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xc8], 0
mov qword [rsp + 0xe0], 0
mov qword [rsp + 0xe8], 0
rep stosq qword [rdi], rax
mov rax, qword [0x1402077f0]
mov rcx, rbx
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x138], rax
mov rax, qword [0x140207c90]
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xf0], rax
lea rax, str.__notes
mov qword [rsp + 0x78], rax
lea rax, str.__prettymedium
mov qword [rsp + 0x70], rax
lea rax, str.__no_abbrev_commit
mov qword [rsp + 0x68], rax
lea rax, str.__output_indicator_context
mov qword [rsp + 0x60], rax
lea rax, str.__output_indicator_old_
mov qword [rsp + 0x58], rax
lea rax, str.__output_indicator_new_
mov qword [rsp + 0x50], rax
lea rax, str.__submoduleshort
mov qword [rsp + 0x48], rax
lea rax, str.__no_prefix
mov qword [rsp + 0x40], rax
lea rax, str.__decorateno
mov qword [rsp + 0x38], rax
lea rax, str.__date_order
mov qword [rsp + 0x30], rax
lea rax, str.__reverse
mov qword [rsp + 0x28], rax
lea rax, str.__no_merges
mov qword [rsp + 0x20], rax
call fcn.140082fd0
mov rdx, rbp
mov rcx, rbx
call fcn.140082f00
test rsi, rsi
je 0x14016398f
mov rdx, qword [rsi]
mov rcx, rbx
call fcn.140083050
mov rcx, rbx
or byte [rsp + 0x190], 9
mov dword [rsp + 0x17c], 0xffffffff
call fcn.1400711b0
test eax, eax
jne 0x140164422
lea r14, [rsp + 0xe0]
mov edx, dword [rsp + 0x17c]
xor r8d, r8d
mov rcx, r14
call fcn.14007f620
test rax, rax
js 0x140163cb0
mov rcx, rbx
call fcn.140071db0
mov r12d, eax
test eax, eax
je 0x140163a50
mov rcx, r14
mov r12d, 0xffffffff
lea r15, [rsp + 0xc0]
call fcn.14007d7e0
mov qword [rsp + 0x98], 0
mov rcx, r15
call fcn.14007d7e0
mov rcx, qword [rsp + 0x98]
call fcn.1400d2670
mov rdi, qword [0x140207460]
mov rax, qword [rsp + 0x308]
sub rax, qword [rdi]
jne 0x1401644e8
mov eax, r12d
add rsp, 0x318
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov r13, qword [rsp + 0xe8]
mov rsi, qword [rsp + 0xf0]
test r13, r13
je 0x140164470
mov dword [rsp + 0xac], eax
mov edi, 1
xor ebp, ebp
mov qword [rsp + 0x98], 0
mov qword [rsp + 0xa0], r14
mov r8, r13
mov edx, 0xa
mov rcx, rsi
mov rbx, r13
call sub.msvcrt.dll_memchr
mov r14, rax
test rax, rax
je 0x140163ab0
mov byte [rax], 0
lea rbx, [rax + 1]
sub rbx, rsi
mov r15, rsi
lea rax, [0x1401f6812]
jmp 0x140163ad2
add r15, 1
add rax, 1
cmp dl, byte [r15 - 1]
jne 0x140163ba0
movzx edx, byte [rax]
test dl, dl
jne 0x140163ac0
test rbp, rbp
je 0x140163b1b
mov rdx, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x90]
call fcn.1400829c0
mov qword [rax + 8], rbp
mov rax, qword [rsp + 0xd0]
cmp rax, qword [0x140207c90]
mov qword [rsp + 0xc8], 0
je 0x14016402a
mov byte [rax], 0
mov edx, 0x60
mov ecx, 1
call fcn.1400a6220
mov rdx, r15
mov rbp, rax
mov rax, qword [0x140207cf0]
lea r8, [rbp + 0x3c]
mov rcx, qword [rax]
call fcn.14002ea00
test eax, eax
jne 0x140163d20
mov dword [rbp + 0x38], 0xffffffff
mov edi, 1
add rsi, rbx
sub r13, rbx
jne 0x140163a8b
mov rcx, qword [rsp + 0xa0]
mov r12d, dword [rsp + 0xac]
lea r15, [rsp + 0xc0]
call fcn.14007d7e0
mov rdx, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x90]
call fcn.1400829c0
mov qword [rax + 8], rbp
jmp 0x140163a06
test rbp, rbp
je 0x140164391
lea rdx, [0x1401f69a5]
mov rcx, rsi
call fcn.14007d6d0
test eax, eax
jne 0x140163d88
mov rcx, rsi
lea rax, [0x1401f68aa]
test edi, edi
je 0x140163be9
jmp 0x140163f90
add rcx, 1
add rax, 1
cmp dl, byte [rcx - 1]
jne 0x140163ef0
movzx edx, byte [rax]
test dl, dl
jne 0x140163bd8
lea r12, [0x1401f6a45]
lea r15, [rsp + 0xc0]
mov rdx, r12
call sub.msvcrt.dll_strstr
mov r8d, 2
mov rdx, r12
mov rcx, r15
mov rdi, rax
call fcn.14007e800
cmp qword [rsp + 0x98], 0
je 0x1401642fd
cmp byte [rdi + 2], 0
jne 0x1401642a3
add rdi, 2
mov rcx, rdi
call sub.msvcrt.dll_strlen
mov rdx, rdi
mov rcx, r15
mov r8, rax
call fcn.14007e800
mov rdx, qword [rsp + 0xc0]
test rdx, rdx
je 0x140163d00
mov rax, qword [rsp + 0xc8]
sub rdx, rax
cmp rdx, 1
je 0x140163d00
lea rdx, [rax + 1]
xor edi, edi
mov qword [rsp + 0xc8], rdx
mov rdx, qword [rsp + 0xd0]
mov byte [rdx + rax], 0xa
mov rdx, qword [rsp + 0xd0]
mov rax, qword [rsp + 0xc8]
mov byte [rdx + rax], 0
add dword [rbp + 0x28], 1
jmp 0x140163b57
mov rax, qword [0x1402078f0]
lea rcx, str.could_not_read__log__output
mov r11d, dword [rax]
test r11d, r11d
jne 0x140163ce0
call fcn.1400a0ab0
mov rcx, rbx
call fcn.140071db0
jmp 0x1401639e4
call sub.libintl_8.dll_libintl_gettext
mov rcx, rax
call fcn.1400a0ab0
mov rcx, rbx
call fcn.140071db0
jmp 0x1401639e4
mov edx, 1
mov rcx, r15
call fcn.14007da40
mov rax, qword [rsp + 0xc8]
jmp 0x140163c74
mov rax, qword [0x1402078f0]
mov r14, qword [rsp + 0xa0]
lea rcx, [0x1401f681a]
mov r10d, dword [rax]
test r10d, r10d
je 0x140163d46
call sub.libintl_8.dll_libintl_gettext
mov rcx, rax
mov rdx, r15
call fcn.1400a0b40
mov rcx, rbp
call fcn.1400d2670
mov rcx, qword [rsp + 0x90]
mov edx, 1
lea r15, [rsp + 0xc0]
call fcn.1400827a0
mov rcx, r14
call fcn.14007d7e0
mov r12d, 0xffffffff
jmp 0x140163a06
lea r12, [rsp + 0x1a0]
xor eax, eax
mov ecx, 0x2c
mov qword [rsp + 0x100], 0
mov qword [rsp + 0x108], 0
mov rdi, r12
rep stosq qword [rdi], rax
mov rax, qword [0x140207c90]
mov dword [rsp + 0xbc], 0
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0xc0]
test rax, rax
je 0x140164010
sub rax, qword [rsp + 0xc8]
lea r15, [rsp + 0xc0]
cmp rax, 1
je 0x140164010
mov rax, qword [rsp + 0xc8]
lea rdx, [rax + 1]
mov qword [rsp + 0xc8], rdx
mov rdx, qword [rsp + 0xd0]
mov byte [rdx + rax], 0xa
mov rdx, qword [rsp + 0xd0]
mov rax, qword [rsp + 0xc8]
mov byte [rdx + rax], 0
cmp qword [rbp + 0x30], 0
jne 0x140163e41
mov rax, qword [rsp + 0xc8]
mov qword [rbp + 0x30], rax
test r14, r14
je 0x140163e4a
mov byte [r14], 0xa
mov dword [rsp + 0x20], ebx
mov r9, rsi
xor r8d, r8d
mov edi, ebx
mov qword [rsp + 0x30], r12
lea rdx, [rsp + 0xbc]
lea rcx, [rsp + 0x100]
mov dword [rsp + 0x28], r13d
call fcn.140191e50
movsxd rbx, eax
test rbx, rbx
js 0x140164491
mov rcx, r15
mov r8d, 4
lea rdx, str._
call fcn.14007e800
mov ecx, dword [rsp + 0x1c0]
test ecx, ecx
jg 0x140164174
mov edx, dword [rsp + 0x1c4]
test edx, edx
jg 0x1401642bf
mov rdi, qword [rsp + 0x1a0]
test byte [rsp + 0x1e0], 0x10
je 0x140164219
mov r8, qword [rsp + 0x1a8]
mov r9, rdi
lea rdx, str._s____s
mov rcx, r15
call fcn.14007ed40
jmp 0x14016418b
movzx eax, byte [rsi]
test al, al
je 0x140163b57
mov rdx, qword [rsp + 0xc0]
cmp al, 0x3e
je 0x14016430b
cmp al, 0x3c
je 0x14016434e
cmp al, 0x23
je 0x140164234
test rdx, rdx
je 0x1401642db
mov rax, qword [rsp + 0xc8]
lea r15, [rsp + 0xc0]
sub rdx, rax
cmp rdx, 1
je 0x1401642db
lea rdx, [rax + 1]
mov rcx, rsi
mov qword [rsp + 0xc8], rdx
mov rdx, qword [rsp + 0xd0]
mov byte [rdx + rax], 0x20
mov rdx, qword [rsp + 0xd0]
mov rax, qword [rsp + 0xc8]
mov byte [rdx + rax], 0
call sub.msvcrt.dll_strlen
mov rdx, rsi
mov rcx, r15
mov r8, rax
call fcn.14007e800
jmp 0x140163c4e
lea rdx, str.Author:
call fcn.14007d6d0
test eax, eax
je 0x140164058
lea r15, [rsp + 0xc0]
mov r8d, 0x10
lea rdx, str.__Metadata__n
mov rcx, r15
call fcn.14007e800
mov rcx, rsi
call sub.msvcrt.dll_strlen
mov rdx, rsi
mov rcx, r15
mov r8, rax
call fcn.14007e800
mov rcx, r15
mov r8d, 2
lea rdx, [0x1401f6a0e]
call fcn.14007e800
mov r8d, 0x16
lea rdx, str.__Commit_message__n
mov rcx, r15
call fcn.14007e800
jmp 0x140163b57
lea r15, [rsp + 0xc0]
mov edx, 1
mov rcx, r15
call fcn.14007da40
jmp 0x140163dfa
mov rax, qword [0x140207c90]
cmp byte [rax], 0
je 0x140163b1b
mov r8d, 0xac
lea rdx, [0x1401f6989]
lea rcx, [0x1401f6992]
call qword [sym.imp.msvcrt.dll__assert]
nop dword [rax]
lea rdx, str.Notes
mov rcx, rsi
call fcn.14007d6d0
test eax, eax
je 0x1401640ba
mov rcx, rsi
call sub.msvcrt.dll_strlen
cmp byte [rsi + rax - 1], 0x3a
jne 0x1401640ba
lea r15, [rsp + 0xc0]
mov r8d, 2
lea rdx, [0x1401f6a0e]
mov rcx, r15
call fcn.14007e800
mov rcx, rsi
call sub.msvcrt.dll_strlen
mov r9, rsi
lea rdx, str.___.s__n
mov rcx, r15
lea r8d, [rax - 1]
call fcn.14007ed40
jmp 0x140163b57
lea rdx, [0x1401f6a3b]
mov rcx, rsi
call fcn.14007d6d0
test eax, eax
je 0x140163b57
lea rax, [rsi + rbx - 2]
mov rcx, qword [str._________AA__A__________________]
movzx edx, byte [rax]
test byte [rcx + rdx], 1
jne 0x1401640fe
jmp 0x140164103
movzx edx, byte [rax - 1]
sub rax, 1
test byte [rcx + rdx], 1
je 0x140164103
cmp rax, rsi
jae 0x1401640f0
sub rax, rsi
lea r15, [rsp + 0xc0]
mov rdx, rsi
lea r8, [rax + 1]
mov rcx, r15
call fcn.14007e800
mov rdx, qword [rsp + 0xc0]
test rdx, rdx
je 0x140164408
mov rax, qword [rsp + 0xc8]
sub rdx, rax
cmp rdx, 1
je 0x140164408
lea rdx, [rax + 1]
mov qword [rsp + 0xc8], rdx
mov rdx, qword [rsp + 0xd0]
mov byte [rdx + rax], 0xa
mov rdx, qword [rsp + 0xd0]
mov rax, qword [rsp + 0xc8]
mov byte [rdx + rax], 0
jmp 0x140163b57
mov r8, qword [rsp + 0x1a0]
lea rdx, str._s__new_
mov rcx, r15
call fcn.14007ed40
mov rcx, qword [rsp + 0x98]
call fcn.1400d2670
mov eax, dword [rsp + 0x1c4]
test eax, eax
jle 0x140164202
mov rcx, qword [rsp + 0x1a8]
call fcn.1400a5f80
mov qword [rsp + 0x98], rax
mov r9d, dword [rsp + 0x1bc]
test r9d, r9d
je 0x1401641e0
mov r8d, dword [rsp + 0x1b8]
cmp r9d, r8d
je 0x1401641e0
test r8d, r8d
jne 0x14016428f
nop dword [rax + rax]
mov rcx, r15
mov r8d, 3
lea rdx, [0x1401f69f0]
call fcn.14007e800
mov rcx, r12
call fcn.140191dd0
jmp 0x140163c4e
mov rcx, qword [rsp + 0x1a0]
call fcn.1400a5f80
mov qword [rsp + 0x98], rax
jmp 0x1401641b8
mov rcx, rdi
call sub.msvcrt.dll_strlen
mov rdx, rdi
mov rcx, r15
mov r8, rax
call fcn.14007e800
jmp 0x14016418b
test rdx, rdx
je 0x1401643c4
mov rax, qword [rsp + 0xc8]
lea r15, [rsp + 0xc0]
sub rdx, rax
cmp rdx, 1
je 0x1401643c4
lea rdx, [rax + 1]
mov qword [rsp + 0xc8], rdx
mov rdx, qword [rsp + 0xd0]
mov byte [rdx + rax], 0x20
mov rdx, qword [rsp + 0xd0]
mov rax, qword [rsp + 0xc8]
lea rdi, [rsi + 1]
mov byte [rdx + rax], 0
jmp 0x140163c38
lea rdx, str.__mode_change__06o____06o_
mov rcx, r15
call fcn.14007ed40
jmp 0x1401641e0
mov r8, qword [rsp + 0x98]
lea rdx, str.__s:
mov rcx, r15
call fcn.14007ed40
jmp 0x140163c34
mov r8, qword [rsp + 0x1a8]
lea rdx, str._s__deleted_
mov rcx, r15
call fcn.14007ed40
jmp 0x14016418b
lea r15, [rsp + 0xc0]
mov edx, 1
mov rcx, r15
call fcn.14007da40
mov rax, qword [rsp + 0xc8]
jmp 0x140163f41
test rdi, rdi
je 0x140163c4e
jmp 0x140163c34
test rdx, rdx
je 0x1401643e6
mov rax, qword [rsp + 0xc8]
lea r15, [rsp + 0xc0]
sub rdx, rax
cmp rdx, 1
je 0x1401643e6
lea rdx, [rax + 1]
mov qword [rsp + 0xc8], rdx
mov rdx, qword [rsp + 0xd0]
mov byte [rdx + rax], 0x2b
jmp 0x140164272
test rdx, rdx
je 0x14016444e
mov rax, qword [rsp + 0xc8]
lea r15, [rsp + 0xc0]
sub rdx, rax
cmp rdx, 1
je 0x14016444e
lea rdx, [rax + 1]
mov qword [rsp + 0xc8], rdx
mov rdx, qword [rsp + 0xd0]
mov byte [rdx + rax], 0x2d
jmp 0x140164272
mov rax, qword [0x1402078f0]
mov r14, qword [rsp + 0xa0]
lea rcx, str.could_not_parse_first_line_of__log__output:_did_not_start_with_commit_:__s
mov r9d, dword [rax]
test r9d, r9d
je 0x1401643b7
call sub.libintl_8.dll_libintl_gettext
mov rcx, rax
mov rdx, rsi
call fcn.1400a0b40
jmp 0x140163d56
lea r15, [rsp + 0xc0]
mov edx, 1
mov rcx, r15
call fcn.14007da40
mov rax, qword [rsp + 0xc8]
jmp 0x14016425a
lea r15, [rsp + 0xc0]
mov edx, 1
mov rcx, r15
call fcn.14007da40
mov rax, qword [rsp + 0xc8]
jmp 0x140164331
mov edx, 1
mov rcx, r15
call fcn.14007da40
mov rax, qword [rsp + 0xc8]
jmp 0x140164143
mov rax, qword [0x1402078f0]
lea rcx, str.could_not_start__log_
mov ebx, dword [rax]
test ebx, ebx
je 0x14016443e
call sub.libintl_8.dll_libintl_gettext
mov rcx, rax
call fcn.1400a0ab0
mov r12d, 0xffffffff
jmp 0x140163a1b
lea r15, [rsp + 0xc0]
mov edx, 1
mov rcx, r15
call fcn.14007da40
mov rax, qword [rsp + 0xc8]
jmp 0x140164374
mov rcx, r14
lea r15, [rsp + 0xc0]
call fcn.14007d7e0
mov qword [rsp + 0x98], 0
jmp 0x140163a06
mov rax, qword [0x1402078f0]
mov r14, qword [rsp + 0xa0]
lea rcx, str.could_not_parse_git_header__.s
mov r8d, dword [rax]
test r8d, r8d
je 0x1401644b7
call sub.libintl_8.dll_libintl_gettext
mov rcx, rax
mov r8, rsi
mov edx, edi
call fcn.1400a0b40
mov rcx, rbp
call fcn.1400d2670
mov rcx, qword [rsp + 0x90]
mov edx, 1
call fcn.1400827a0
mov rcx, r14
call fcn.14007d7e0
jmp 0x140163d78
call fcn.1401be670
nop
nop