Function at 0x14004b2f0
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, 0xf8
mov rdi, qword [0x140207460]
mov eax, edx
mov rdx, qword [rsp + 0x160]
mov rsi, rcx
mov r12, r8
mov ecx, eax
mov ebx, eax
mov r13d, eax
mov r14d, eax
and ecx, 8
and ebx, 0x20
mov qword [rsp + 0x58], r9
and r13d, 0x10
mov qword [rsp + 0xb8], rdx
and r14d, 0x80
mov rdx, qword [rdi]
mov qword [rsp + 0xe8], rdx
mov edx, eax
mov edi, eax
mov dword [rsp + 0x80], ebx
mov qword [rsp + 0xe0], 0
and edi, 2
mov dword [rsp + 0x90], edi
mov edi, eax
and edi, 4
mov dword [rsp + 0xa0], edi
and edx, 1
mov dword [rsp + 0x94], edx
add edx, 0x10
or ecx, edx
mov dword [rsp + 0x78], ecx
test al, 0x40
jne 0x14004ba08
mov r15, qword [0x1402078f0]
call fcn.14008e390
mov r9d, dword [rsp + 0x80]
test r9d, r9d
je 0x14004b8b8
lea rax, str.A_t_s_n
mov qword [rsp + 0xb0], rax
lea rax, str.T_t_s_n
mov qword [rsp + 0xc8], rax
lea rax, str.D_t_s_n
mov qword [rsp + 0x98], rax
lea rax, str.M_t_s_n
mov qword [rsp + 0xc0], rax
lea rax, str.U_t_s_n
mov qword [rsp + 0xa8], rax
xor ecx, ecx
call fcn.1400c4c90
xor r8d, r8d
mov rdx, r12
mov rcx, rsi
call fcn.140162710
lea r8, [0x1401d1f9f]
mov qword [rsp + 0x20], 0
lea r9, str.refresh
mov edx, 0x614
lea rcx, str.read_cache.c
call fcn.14008f540
mov r8d, dword [rsi + 0xc]
test r8d, r8d
je 0x14004ba96
lea rax, [rsp + 0xd0]
mov dword [rsp + 0x54], 0
xor ebx, ebx
mov qword [rsp + 0x60], rax
lea rax, [rsp + 0xdc]
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0xd8]
mov dword [rsp + 0xa4], 1
mov dword [rsp + 0x50], 0
mov dword [rsp + 0x7c], 0
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x88], r15
jmp 0x14004b521
and eax, 0xf000
mov r9d, dword [rdi + 0x40]
lea rbp, [rdi + 0x6c]
mov rcx, rsi
cmp eax, 0x4000
mov dword [rsp + 0x20], 0
mov r8, rbp
sete dl
cmp eax, 0xe000
mov qword [rsp + 0x48], r11
sete al
or eax, edx
mov rdx, r12
movzx eax, al
mov dword [rsp + 0x30], eax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x28], rax
call fcn.140014180
mov r11, qword [rsp + 0x48]
test eax, eax
jne 0x14004b7c0
mov eax, dword [rsi + 0xc]
mov r15d, eax
test dword [rdi + 0x38], 0x3000
jne 0x14004b9e8
add ebx, 1
mov r10d, ebx
nop dword [rax]
cmp r10d, eax
jae 0x14004b660
mov rcx, qword [rsi]
movsxd r15, ebx
mov dword [rsp + 0xd0], 0
mov dword [rsp + 0xd4], 0
lea r11, [r15*8]
mov dword [rsp + 0xd8], 0
mov rdi, qword [rcx + r15*8]
mov dword [rsp + 0xdc], 0
test r13d, r13d
je 0x14004b577
mov eax, dword [rdi + 0x34]
and eax, 0xf000
cmp eax, 0xe000
je 0x14004b7a8
test r14d, r14d
je 0x14004b586
test byte [rdi + 0x3b], 0x40
jne 0x14004b7a8
mov eax, dword [rdi + 0x34]
cmp eax, 0x4000
je 0x14004b7a8
test r12, r12
jne 0x14004b4a0
test dword [rdi + 0x38], 0x3000
jne 0x14004b7f0
mov rax, qword [rsp + 0x68]
mov r9, qword [rsp + 0x60]
mov rcx, rsi
mov rdx, rdi
mov r8d, dword [rsp + 0x78]
lea ebp, [rbx + 1]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0xd4]
mov qword [rsp + 0x20], rax
call fcn.140048490
mov ecx, dword [rsp + 0xd8]
mov r10d, ebp
add dword [rsp + 0x50], ecx
mov ecx, dword [rsp + 0xdc]
add dword [rsp + 0x54], ecx
cmp rdi, rax
je 0x14004b8a8
mov rcx, qword [rsp + 0xe0]
mov rdx, r15
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x84], ebp
call fcn.140163460
mov rax, qword [rsp + 0x48]
mov r10d, dword [rsp + 0x84]
test rax, rax
je 0x14004b870
mov r8, rax
mov edx, ebx
mov rcx, rsi
mov dword [rsp + 0x48], r10d
call fcn.14004a8a0
mov r10d, dword [rsp + 0x48]
mov eax, dword [rsi + 0xc]
mov ebx, r10d
cmp r10d, eax
jb 0x14004b521
nop dword [rax]
mov r15, qword [rsp + 0x88]
movsxd rax, dword [rsp + 0x50]
movsxd rbx, dword [rsp + 0x54]
mov qword [rsp + 0x28], rax
lea rax, str.refresh_sum_lstat
xor r9d, r9d
lea r8, [0x1401d1f9f]
mov qword [rsp + 0x20], rax
mov edx, 0x666
lea rcx, str.read_cache.c
call fcn.14008f990
lea rax, str.refresh_sum_scan
xor r9d, r9d
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rax
lea r8, [0x1401d1f9f]
mov edx, 0x667
lea rcx, str.read_cache.c
call fcn.14008f990
lea r9, str.refresh
mov qword [rsp + 0x20], 0
lea r8, [0x1401d1f9f]
mov edx, 0x668
lea rcx, str.read_cache.c
call fcn.14008f750
mov edx, dword [rsi + 0xc]
mov rcx, qword [rsp + 0xe0]
call fcn.140163460
mov eax, dword [r15]
lea rdx, [0x1401d255a]
test eax, eax
je 0x14004b71b
mov rcx, rdx
call sub.libintl_8.dll_libintl_gettext
mov rdx, rax
lea rcx, [rsp + 0xe0]
call fcn.140163540
mov rdx, qword [0x140207d60]
movabs rax, 0x1ffffffff
and rax, qword [rdx + 8]
movabs rdx, 0x100000000
cmp rax, rdx
je 0x14004b76c
call fcn.14008e180
lea r9, str.refresh_index
mov edx, 0x66b
lea rcx, str.read_cache.c
mov r8, rax
call fcn.14008df10
call fcn.1400c4e60
mov rsi, qword [0x140207460]
mov rax, qword [rsp + 0xe8]
sub rax, qword [rsi]
jne 0x14004bb8b
mov eax, dword [rsp + 0x7c]
add rsp, 0xf8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
add ebx, 1
mov eax, dword [rsi + 0xc]
mov r10d, ebx
jmp 0x14004b518
test dword [rdi + 0x38], 0x3000
je 0x14004b5aa
mov r15d, dword [rsi + 0xc]
mov r10d, ebx
mov eax, r15d
cmp ebx, r15d
jae 0x14004b981
mov dword [rsp + 0x48], 0
mov rcx, qword [rsi]
jmp 0x14004b80f
mov r15d, dword [rsi + 0xc]
mov dword [rsp + 0x48], 0
mov r10d, ebx
lea rbp, [rdi + 0x6c]
mov eax, r15d
cmp ebx, r15d
jae 0x14004b981
lea rdi, [rcx + r11]
jmp 0x14004b827
add ebx, 1
add rdi, 8
mov r10d, ebx
cmp ebx, dword [rsi + 0xc]
jae 0x14004b83d
mov rax, qword [rdi]
mov rdx, rbp
lea rcx, [rax + 0x6c]
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x14004b818
mov r10d, ebx
mov eax, dword [rsp + 0x90]
test eax, eax
je 0x14004b850
mov eax, r15d
jmp 0x14004b518
mov edx, dword [rsp + 0x48]
test edx, edx
je 0x14004b990
mov dword [rsp + 0x7c], edx
mov eax, r15d
jmp 0x14004b518
mov r11d, dword [rsp + 0x94]
test r11d, r11d
je 0x14004b88b
cmp dword [rsp + 0xd0], 0x16
je 0x14004ba50
mov r8d, dword [rsp + 0xa0]
test r8d, r8d
je 0x14004b8f8
mov eax, dword [rsi + 0xc]
mov ebx, ebp
jmp 0x14004b518
mov eax, dword [rsi + 0xc]
mov ebx, ebp
jmp 0x14004b518
lea rax, str._s:_needs_update_n
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x98], rax
mov qword [rsp + 0xc0], rax
lea rax, str._s:_needs_merge_n
mov qword [rsp + 0xa8], rax
jmp 0x14004b3fd
cmp dword [rsp + 0xd0], 2
mov rbx, qword [rsp + 0x98]
je 0x14004b931
mov rbx, qword [rsp + 0xb0]
test byte [rdi + 0x3b], 0x20
jne 0x14004b931
mov rbx, qword [rsp + 0xc8]
test byte [rsp + 0xd4], 0x40
cmove rbx, qword [rsp + 0xc0]
mov ecx, dword [rsp + 0x80]
add rdi, 0x6c
test ecx, ecx
je 0x14004b95a
mov edx, dword [rsp + 0xa4]
test edx, edx
jne 0x14004baa7
mov dword [rsp + 0xa4], 0
mov rcx, rbx
mov rdx, rdi
mov dword [rsp + 0x48], r10d
mov ebx, ebp
call sub.libintl_8.dll___printf__
mov dword [rsp + 0x7c], 1
mov eax, dword [rsi + 0xc]
mov r10d, dword [rsp + 0x48]
jmp 0x14004b518
mov edx, dword [rsp + 0x90]
test edx, edx
jne 0x14004b518
mov r15d, dword [rsp + 0x80]
test r15d, r15d
je 0x14004b9b7
mov edi, dword [rsp + 0xa4]
test edi, edi
jne 0x14004bad3
mov dword [rsp + 0xa4], 0
mov rcx, qword [rsp + 0xa8]
mov rdx, rbp
mov dword [rsp + 0x48], r10d
call sub.libintl_8.dll___printf__
mov dword [rsp + 0x7c], 1
mov eax, dword [rsi + 0xc]
mov r10d, dword [rsp + 0x48]
jmp 0x14004b518
mov r10d, ebx
cmp ebx, eax
jae 0x14004bb6f
mov dword [rsp + 0x48], 1
mov rcx, qword [rsi]
jmp 0x14004b80f
mov ecx, 2
call fcn.1400c2da0
mov r15, qword [0x1402078f0]
test eax, eax
je 0x14004b39c
mov r10d, dword [r15]
mov ebx, dword [rsi + 0xc]
lea rcx, str.Refresh_index
test r10d, r10d
je 0x14004ba3b
call sub.libintl_8.dll_libintl_gettext
mov rcx, rax
mov rdx, rbx
call fcn.140163480
mov qword [rsp + 0xe0], rax
jmp 0x14004b39c
mov eax, dword [rdi + 0x38]
mov rcx, qword [rsi + 0xf0]
mov dword [rsp + 0x48], r10d
and ah, 0x7f
or eax, 0x8000000
mov dword [rdi + 0x38], eax
call fcn.14001e500
mov r10d, dword [rsp + 0x48]
test eax, eax
jg 0x14004baff
mov r9d, dword [rsp + 0xa0]
or dword [rsi + 0x14], 2
test r9d, r9d
jne 0x14004b898
jmp 0x14004b90a
mov dword [rsp + 0x7c], 0
xor ebx, ebx
xor eax, eax
jmp 0x14004b672
mov rdx, qword [rsp + 0xb8]
test rdx, rdx
je 0x14004b95a
lea rcx, [0x1401d2567]
mov dword [rsp + 0x48], r10d
call sub.libintl_8.dll___printf__
mov r10d, dword [rsp + 0x48]
jmp 0x14004b94f
mov rdx, qword [rsp + 0xb8]
test rdx, rdx
je 0x14004b9b7
lea rcx, [0x1401d2567]
mov dword [rsp + 0x48], r10d
call sub.libintl_8.dll___printf__
mov r10d, dword [rsp + 0x48]
jmp 0x14004b9ac
and dword [rdi + 0x38], 0xffdfffff
lea rbx, [rdi + 0x6c]
mov r8d, 1
mov rcx, rsi
mov rdx, rbx
call fcn.140019b00
mov r8, qword [0x140207d50]
mov r10d, dword [rsp + 0x48]
movabs rax, 0x1ffffffff
movabs rdx, 0x100000000
and rax, qword [r8 + 8]
cmp rax, rdx
je 0x14004ba7c
mov qword [rsp + 0x20], rbx
lea r9, [0x1401d2296]
mov edx, 0x43
lea rcx, [0x1401d223d]
call fcn.14008dc10
mov r10d, dword [rsp + 0x48]
jmp 0x14004ba7c
mov ecx, dword [rsp + 0x90]
mov edx, 1
test ecx, ecx
cmovne edx, dword [rsp + 0x7c]
mov dword [rsp + 0x7c], edx
jmp 0x14004b518
call fcn.1401be670
nop
nop word cs:[rax + rax]
nop dword [rax]
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x58
mov r13, qword [rsp + 0xc0]
mov r14, qword [rsp + 0xc8]
mov r15, qword [rsp + 0xd0]
mov esi, edx
mov rdx, qword [0x140207460]
mov edi, r8d
xor r8d, r8d
lea r12, [rsp + 0x40]
mov rbx, rcx
mov ebp, r9d
mov qword [rsp + 0x40], 0
mov rax, qword [rdx]
mov qword [rsp + 0x48], rax
xor eax, eax
mov rdx, r12
call fcn.140067000
mov r10d, eax
test ebp, ebp
jne 0x14004bc38
test eax, eax
jns 0x14004bc38
mov esi, 0xffffffff
mov rdi, qword [0x140207460]
mov rax, qword [rsp + 0x48]
sub rax, qword [rdi]
jne 0x14004bc83
mov eax, esi
add rsp, 0x58
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, qword [rbx + 0xf0]
mov edx, esi
mov qword [rsp + 0x20], r15
xor esi, esi
mov r9, r14
mov r8, r13
mov dword [rsp + 0x3c], r10d
call fcn.14004b2f0
mov r10d, dword [rsp + 0x3c]
test eax, eax
setne sil
test r10d, r10d
js 0x14004bc0d
or edi, 1
mov rcx, qword [rbx + 0xf0]
mov rdx, r12
mov r8d, edi
call fcn.140049b30
test eax, eax
jne 0x14004bc08
jmp 0x14004bc0d
call fcn.1401be670
nop
nop dword [rax]
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x48
mov rax, qword [rcx]
mov rsi, rcx
movsxd rdx, edx
mov rcx, r8
mov r13, r8
mov rbp, qword [rax + rdx*8]
mov r12, rdx
call sub.msvcrt.dll_strlen
mov rcx, rsi
movsxd rdx, eax
mov rdi, rax
add rbp, 0x6c
call fcn.140048400
movdqu xmm2, xmmword [rbp - 0x5c]
lea r8d, [rdi + 1]
mov rdx, r13
movd xmm1, dword [rax + 0x3c]
mov rbx, rax
movsxd r8, r8d
movups xmmword [rax + 0x10], xmm2
movdqu xmm3, xmmword [rbp - 0x4c]
lea rcx, [rbx + 0x6c]
movups xmmword [rax + 0x20], xmm3
movdqu xmm4, xmmword [rbp - 0x3c]
movups xmmword [rax + 0x30], xmm4
movdqu xmm5, xmmword [rbp - 0x2c]
movups xmmword [rax + 0x40], xmm5
movdqu xmm2, xmmword [rbp - 0x1c]
movups xmmword [rax + 0x50], xmm2
movdqu xmm3, xmmword [rbp - 0x10]
movups xmmword [rax + 0x5c], xmm3
mov eax, dword [rax + 0x38]
mov dword [rbx + 0x40], edi
and eax, 0xffefffff
mov dword [rbx + 0x44], 0
movd xmm0, eax
punpckldq xmm0, xmm1
movq qword [rbx + 0x38], xmm0
call sub.msvcrt.dll_memcpy
mov rdx, rbp
mov rcx, rsi
call fcn.1400e52b0
mov rdx, rbp
mov rcx, rsi
call fcn.140019b60
mov edx, r12d
mov rcx, rsi
call fcn.140048190
xor r9d, r9d
mov rdx, rbx
mov rcx, rsi
mov qword [rsp + 0x30], 0
mov r8d, 0x10
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
call fcn.140048490
mov r8d, 3
test rax, rax
je 0x14004bdc0
cmp rbx, rax
je 0x14004bdc0
mov rcx, rsi
mov rdx, rax
call fcn.14004a990
mov rcx, rbx
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
jmp fcn.14004a6b0
mov rdx, rbx
mov rcx, rsi
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
jmp fcn.14004a990