Function at 0x140017ce0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x108
mov rax, qword [rsp + 0x170]
mov rdi, rdx
mov rdx, qword [0x140207460]
mov rbx, rcx
mov rsi, r8
mov qword [rsp + 0x48], rax
mov r13d, r9d
lea r8, [0x1401cc3be]
lea r9, str.read_directory
mov rax, qword [rdx]
mov qword [rsp + 0xf8], rax
mov rax, qword [rdi + 0xf0]
lea rcx, str.dir.c
mov edx, 0xbed
mov qword [rsp + 0x20], rax
call fcn.14008f540
mov edx, r13d
mov rcx, rsi
mov qword [rbx + 0x12c], 0
call fcn.14008af40
mov r12d, eax
test eax, eax
jne 0x1400184a0
cmp qword [rbx + 0x20], 0
je 0x140018220
mov eax, dword [0x1401c0220]
test eax, eax
js 0x140018500
test eax, eax
jne 0x140018220
mov ebp, dword [rbx + 0x128]
test ebp, ebp
jne 0x140018220
test r13d, r13d
jne 0x140018680
mov rax, qword [rsp + 0x48]
test rax, rax
je 0x140017db8
mov r11d, dword [rax]
test r11d, r11d
jne 0x140018488
mov ebp, dword [rbx]
and ebp, 0x31
jne 0x140018488
mov r12, qword [rbx + 0x20]
mov rcx, qword [rbx + 0x28]
mov rdx, qword [r12 + 0x98]
cmp rcx, rdx
je 0x140017de5
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x140018488
mov r10d, dword [rbx + 0x38]
test r10d, r10d
jne 0x140018488
call fcn.140012d30
mov rcx, qword [r12 + 0xb8]
mov rdx, rax
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x140018460
mov r12, qword [rbx + 0x20]
mov r14d, dword [r12 + 0xc0]
cmp dword [rbx], r14d
je 0x140017ebb
mov rcx, qword [rdi + 0xf0]
lea r8, [rsp + 0xc0]
lea rdx, str.status.showuntrackedfiles
call fcn.14000bc90
test eax, eax
jne 0x1400187bf
mov rcx, qword [rsp + 0xc0]
lea rdx, [0x1401cc11e]
call sub.msvcrt.dll_strcmp
test eax, eax
mov eax, 6
cmovne ebp, eax
cmp r14d, ebp
je 0x140018488
mov rbp, qword [rdi + 0xc8]
test rbp, rbp
je 0x140017ea6
mov rcx, qword [rbp + 0xa0]
call fcn.1400d2670
lea rcx, [rbp + 0xa8]
call fcn.14007d7e0
mov rcx, qword [rbp + 0xc8]
call fcn.140011f60
mov rcx, rbp
call fcn.1400d2670
mov edx, dword [rbx]
mov rcx, rdi
call fcn.1400133e0
mov r12, qword [rdi + 0xc8]
mov qword [rbx + 0x20], r12
mov rbp, qword [r12 + 0xc8]
test rbp, rbp
je 0x140018930
movsxd rax, dword [rbx + 0xd4]
test eax, eax
jne 0x1400186e0
mov rax, qword [0x140207cf0]
mov rax, qword [rax]
mov rax, qword [rax + 0x100]
cmp qword [rax + 0x10], 0x20
lea rcx, [r12 + 0x24]
mov rax, qword [rbx + 0xb4]
lea r8, [rbx + 0xb4]
je 0x1400188f6
mov rdx, qword [rbx + 0xbc]
xor rax, qword [r12 + 0x24]
xor rdx, qword [r12 + 0x2c]
or rax, rdx
je 0x140018890
mov eax, 1
xor eax, 1
test eax, eax
je 0x140018830
movsxd rax, dword [rbx + 0x120]
test eax, eax
jne 0x1400186c8
mov rax, qword [0x140207cf0]
mov rax, qword [rax]
mov rax, qword [rax + 0x100]
cmp qword [rax + 0x10], 0x20
lea rcx, [r12 + 0x70]
mov rax, qword [rbx + 0x100]
lea r8, [rbx + 0x100]
je 0x1400188bc
mov rdx, qword [rbx + 0x108]
xor rax, qword [r12 + 0x70]
xor rdx, qword [r12 + 0x78]
or rax, rdx
je 0x1400188a8
mov eax, 1
xor eax, 1
test eax, eax
je 0x1400187d0
or byte [rbp + 0x44], 4
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x20], rbp
mov r9d, r13d
mov r8, rsi
mov dword [rsp + 0x30], 0
mov rdx, rdi
mov rcx, rbx
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x28], 0
call fcn.140016b70
movsxd rdx, dword [rbx + 4]
cmp rdx, 1
jbe 0x140017ff0
mov rcx, qword [rbx + 0x10]
lea r9, [0x1400122b0]
mov r8d, 8
call fcn.14007d390
movsxd rdx, dword [rbx + 8]
cmp rdx, 1
jbe 0x140018010
mov rcx, qword [rbx + 0x18]
lea r9, [0x1400122b0]
mov r8d, 8
call fcn.14007d390
mov rbp, qword [rdi + 0xf0]
call fcn.14008eb70
test eax, eax
je 0x1400181a9
test r13d, r13d
jne 0x140018550
lea rax, [0x1401cc248]
mov r9, rbp
lea r8, str.read_directory
mov edx, 0xbcd
mov qword [rsp + 0x28], rax
lea rax, [0x1401cc3de]
lea rcx, str.dir.c
mov qword [rsp + 0x20], rax
call fcn.14008f960
mov eax, dword [rbx + 0x130]
mov r9, rbp
lea r8, str.read_directory
mov edx, 0xbd5
lea rcx, str.dir.c
mov qword [rsp + 0x28], rax
lea rax, str.directories_visited
mov qword [rsp + 0x20], rax
call fcn.14008f990
mov eax, dword [rbx + 0x12c]
mov r9, rbp
lea r8, str.read_directory
mov edx, 0xbd7
lea rcx, str.dir.c
mov qword [rsp + 0x28], rax
lea rax, str.paths_visited
mov qword [rsp + 0x20], rax
call fcn.14008f990
mov rax, qword [rbx + 0x20]
test rax, rax
je 0x1400181a9
movsxd rax, dword [rax + 0xd0]
mov r9, rbp
lea r8, str.read_directory
mov edx, 0xbdc
lea rcx, str.dir.c
mov qword [rsp + 0x28], rax
lea rax, str.node_creation
mov qword [rsp + 0x20], rax
call fcn.14008f990
mov rax, qword [rbx + 0x20]
mov r9, rbp
lea r8, str.read_directory
mov edx, 0xbde
lea rcx, str.dir.c
movsxd rax, dword [rax + 0xd4]
mov qword [rsp + 0x28], rax
lea rax, str.gitignore_invalidation
mov qword [rsp + 0x20], rax
call fcn.14008f990
mov rax, qword [rbx + 0x20]
mov r9, rbp
lea r8, str.read_directory
mov edx, 0xbe1
lea rcx, str.dir.c
movsxd rax, dword [rax + 0xd8]
mov qword [rsp + 0x28], rax
lea rax, str.directory_invalidation
mov qword [rsp + 0x20], rax
call fcn.14008f990
mov rax, qword [rbx + 0x20]
mov r9, rbp
lea r8, str.read_directory
mov edx, 0xbe4
lea rcx, str.dir.c
movsxd rax, dword [rax + 0xdc]
mov qword [rsp + 0x28], rax
lea rax, str.opendir
mov qword [rsp + 0x20], rax
call fcn.14008f990
mov rax, qword [rdi + 0xf0]
lea rcx, str.dir.c
lea r9, str.read_directory
mov edx, 0xc04
lea r8, [0x1401cc3be]
mov qword [rsp + 0x20], rax
call fcn.14008f750
mov rcx, qword [rbx + 0x20]
test rcx, rcx
je 0x140018210
mov eax, dword [0x1401c0224]
test eax, eax
js 0x1400185d0
mov rdx, qword [rdi + 0xc8]
test eax, eax
je 0x140018540
cmp rcx, rdx
je 0x140018690
call fcn.1400d2670
mov qword [rbx + 0x20], 0
mov eax, dword [rbx + 4]
jmp 0x1400184ce
mov qword [rbx + 0x20], 0
test r13d, r13d
je 0x140018490
mov rbp, qword [0x140207c90]
movsxd rax, r13d
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x88], 0
mov qword [rsp + 0x90], rbp
mov qword [rsp + 0xa0], 0
mov qword [rsp + 0xa8], 0
mov qword [rsp + 0xb0], rbp
jmp 0x14001828c
sub rax, 1
test eax, eax
je 0x140018490
cmp byte [rsi + rax - 1], 0x2f
je 0x140018280
mov ecx, eax
test eax, eax
je 0x140018490
cdqe
pxor xmm0, xmm0
lea r15, [rsp + 0x80]
mov dword [rsp + 0x168], r13d
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0xa0]
mov r13d, ecx
movups xmmword [rsp + 0xe0], xmm0
mov qword [rsp + 0xf0], 0
mov dword [rsp + 0xe0], 1
mov dword [rsp + 0x64], 0
mov qword [rsp + 0x78], r15
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], rdi
movups xmmword [rsp + 0xc0], xmm0
movups xmmword [rsp + 0xd0], xmm0
jmp 0x1400183f7
mov byte [rax], 0
mov rcx, r15
movsxd r8, r12d
mov rdx, rsi
call fcn.14007e800
mov rcx, qword [rsp + 0x90]
call fcn.1400de320
test eax, eax
je 0x140018610
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x88], 0
cmp rax, rbp
je 0x140018520
mov byte [rax], 0
mov r8, rbx
mov rdx, rsi
mov rcx, r15
call fcn.14007e800
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0xa8], 0
cmp rax, rbp
je 0x140018530
mov byte [rax], 0
mov r8d, r12d
mov rcx, qword [rsp + 0x68]
mov rdx, r14
lea rbx, [rsp + 0xc0]
sub r8d, edi
movsxd r8, r8d
call fcn.14007e800
mov dword [rsp + 0x28], edi
mov r9, qword [rsp + 0x58]
xor edx, edx
mov rax, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x20], r15
mov r8, rbx
mov qword [rsp + 0xd8], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x30], rax
call fcn.140017220
mov dword [rsp + 0x64], eax
cmp eax, 1
jne 0x140018700
cmp r12d, r13d
jge 0x140018760
cmp r12d, 1
mov edi, r12d
mov r8, qword [rsp + 0x70]
mov edx, 0x2f
sbb edi, 0xffffffff
movsxd rbx, edi
lea r14, [rsi + rbx]
sub r8, rbx
mov rcx, r14
call sub.msvcrt.dll_memchr
mov qword [rsp + 0x88], 0
mov r12, rax
sub r12, rsi
test rax, rax
mov rax, qword [rsp + 0x90]
cmove r12d, r13d
cmp rax, rbp
jne 0x140018318
cmp byte [rbp], 0
je 0x14001831b
call fcn.140012510
nop word cs:[rax + rax]
mov rax, qword [0x1402078f0]
lea rcx, str.untracked_cache_is_disabled_on_this_system_or_location
mov r9d, dword [rax]
test r9d, r9d
je 0x14001847e
call sub.libintl_8.dll_libintl_gettext
mov rcx, rax
call fcn.1400a0c10
nop dword [rax + rax]
mov qword [rbx + 0x20], 0
xor ebp, ebp
jmp 0x140017fa0
mov rax, qword [rdi + 0xf0]
lea r9, str.read_directory
lea r8, [0x1401cc3be]
mov edx, 0xbf2
lea rcx, str.dir.c
mov qword [rsp + 0x20], rax
call fcn.14008f750
mov eax, dword [rbx + 4]
mov rsi, qword [0x140207460]
mov rdx, qword [rsp + 0xf8]
sub rdx, qword [rsi]
jne 0x14001895f
add rsp, 0x108
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
xor edx, edx
lea rcx, str.GIT_DISABLE_UNTRACKED_CACHE
call fcn.140009e90
mov dword [0x1401c0220], eax
jmp 0x140017d83
cmp byte [rbp], 0
je 0x14001835e
jmp 0x140018451
cmp byte [rbp], 0
je 0x14001838c
jmp 0x140018451
cmp rcx, rdx
je 0x140018210
jmp 0x140018203
mov rax, qword [0x140207c90]
lea r12, [rsp + 0xc0]
movsxd r8, r13d
mov rdx, rsi
mov qword [rsp + 0xc0], 0
mov rcx, r12
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xc8], 0
call fcn.14007e800
mov rax, qword [rsp + 0xd0]
mov r9, rbp
lea r8, str.read_directory
mov edx, 0xbd1
lea rcx, str.dir.c
mov qword [rsp + 0x28], rax
lea rax, [0x1401cc3de]
mov qword [rsp + 0x20], rax
call fcn.14008f960
mov rcx, r12
call fcn.14007d7e0
jmp 0x140018060
mov edx, 0xffffffff
lea rcx, str.GIT_FORCE_UNTRACKED_CACHE
call fcn.140009e90
mov dword [0x1401c0224], eax
test eax, eax
jns 0x140018605
mov rax, qword [rdi + 0xf0]
cmp dword [rax + 0xd0], 2
sete al
movzx eax, al
mov dword [0x1401c0224], eax
mov rcx, qword [rbx + 0x20]
jmp 0x1400181eb
mov r14d, dword [rsp + 0x64]
mov rax, qword [rsp + 0x48]
mov dword [rsp + 0x28], r12d
xor edx, edx
mov r15, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x50]
lea r8, [rsp + 0xc0]
mov qword [rsp + 0x30], rax
mov rdi, qword [rsp + 0x58]
mov dword [rsp + 0x38], r14d
mov rcx, rbx
mov r13d, dword [rsp + 0x168]
mov qword [rsp + 0x20], r15
mov r9, rdi
call fcn.1400169a0
lea rcx, [rsp + 0xa0]
call fcn.14007d7e0
mov rcx, r15
call fcn.14007d7e0
cmp r14d, 1
jne 0x140017fd0
xor ebp, ebp
jmp 0x140017fa0
mov qword [rbx + 0x20], 0
jmp 0x140018231
mov r8d, dword [rcx + 0xdc]
test r8d, r8d
jne 0x1400186b8
mov edx, dword [rcx + 0xd4]
test edx, edx
jne 0x1400186b8
mov eax, dword [rcx + 0xd8]
test eax, eax
je 0x140018210
nop dword [rax]
or dword [rdi + 0x14], 0x80
jmp 0x140018210
lea rdx, [rax + rax*2]
lea rdx, [rax + rdx*4]
mov rax, qword [0x1402079b0]
lea rax, [rax + rdx*8]
jmp 0x140017f54
lea rdx, [rax + rax*2]
lea rdx, [rax + rdx*4]
mov rax, qword [0x1402079b0]
lea rax, [rax + rdx*8]
jmp 0x140017eec
mov eax, dword [rsp + 0x64]
mov r14, qword [rsp + 0x78]
mov r15, rbx
xor edx, edx
mov rdi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x50]
mov dword [rsp + 0x28], r12d
mov r8, r15
mov dword [rsp + 0x38], eax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x20], r14
mov r9, rdi
mov rcx, rbx
mov r13d, dword [rsp + 0x168]
mov qword [rsp + 0x30], rax
call fcn.1400169a0
mov rcx, qword [rsp + 0x68]
call fcn.14007d7e0
mov rcx, r14
call fcn.14007d7e0
jmp 0x140017fd0
mov rax, qword [rsp + 0x48]
mov r14, qword [rsp + 0x78]
mov r15, rbx
xor edx, edx
mov rdi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x50]
mov r8, r15
xor ebp, ebp
mov qword [rsp + 0x30], rax
mov r13d, dword [rsp + 0x168]
mov dword [rsp + 0x38], 1
mov r9, rdi
mov rcx, rbx
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r14
call fcn.1400169a0
mov rcx, qword [rsp + 0x68]
call fcn.14007d7e0
mov rcx, r14
call fcn.14007d7e0
jmp 0x140017fa0
mov ebp, 6
jmp 0x140017e65
add dword [r12 + 0xd4], 1
mov rcx, rbp
call fcn.140013140
movdqu xmm1, xmmword [rbx + 0xdc]
movdqu xmm2, xmmword [rbx + 0xec]
movdqu xmm3, xmmword [rbx + 0xfc]
movdqu xmm4, xmmword [rbx + 0x10c]
movdqu xmm5, xmmword [rbx + 0x118]
movups xmmword [r12 + 0x4c], xmm1
movups xmmword [r12 + 0x7c], xmm4
movups xmmword [r12 + 0x5c], xmm2
movups xmmword [r12 + 0x6c], xmm3
movups xmmword [r12 + 0x88], xmm5
jmp 0x140017f9c
add dword [r12 + 0xd4], 1
mov rcx, rbp
call fcn.140013140
movdqu xmm1, xmmword [rbx + 0x90]
movdqu xmm2, xmmword [rbx + 0xa0]
movdqu xmm3, xmmword [rbx + 0xb0]
movdqu xmm4, xmmword [rbx + 0xc0]
movdqu xmm5, xmmword [rbx + 0xcc]
movups xmmword [r12], xmm1
movups xmmword [r12 + 0x30], xmm4
movups xmmword [r12 + 0x10], xmm2
movups xmmword [r12 + 0x20], xmm3
movups xmmword [r12 + 0x3c], xmm5
jmp 0x140017f34
mov eax, dword [rcx + 0x10]
cmp dword [r8 + 0x10], eax
jne 0x140017f24
xor eax, eax
jmp 0x140017f29
mov eax, dword [rcx + 0x10]
cmp dword [r8 + 0x10], eax
jne 0x140017f8c
xor eax, eax
jmp 0x140017f91
mov rdx, qword [rbx + 0x108]
xor rax, qword [r12 + 0x70]
xor rdx, qword [r12 + 0x78]
or rax, rdx
jne 0x140017f8c
mov rax, qword [r8 + 0x10]
mov rdx, qword [r8 + 0x18]
xor rax, qword [rcx + 0x10]
xor rdx, qword [rcx + 0x18]
or rax, rdx
jne 0x140017f8c
xor eax, eax
jmp 0x140017f91
mov rdx, qword [rbx + 0xbc]
xor rax, qword [r12 + 0x24]
xor rdx, qword [r12 + 0x2c]
or rax, rdx
jne 0x140017f24
mov rax, qword [r8 + 0x10]
mov rdx, qword [r8 + 0x18]
xor rax, qword [rcx + 0x10]
xor rdx, qword [rcx + 0x18]
or rax, rdx
jne 0x140017f24
xor eax, eax
jmp 0x140017f29
mov edx, 0x71
mov ecx, 1
call fcn.1400a6220
mov qword [r12 + 0xc8], rax
mov r12, qword [rbx + 0x20]
or dword [rdi + 0x14], 0x80
mov rbp, qword [r12 + 0xc8]
jmp 0x140017ecc
call fcn.1401be670
nop
nop word cs:[rax + rax]