Function at 0x14014bcd0
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, 0xe38
mov rdi, qword [0x140207460]
mov rax, qword [rsp + 0xea0]
mov qword [rsp + 0x90], rax
mov rsi, rcx
mov r12, rdx
mov edx, 0x4df
mov rax, qword [rdi]
mov qword [rsp + 0xe28], rax
xor eax, eax
mov rax, qword [0x140207c90]
mov qword [rsp + 0x78], r8
lea rdi, [rsp + 0x110]
mov qword [rsp + 0x80], rcx
mov ecx, 0xd
lea r8, [0x1401f3733]
mov qword [rsp + 0xc0], rax
xor eax, eax
mov qword [rsp + 0x88], rdi
rep stosq qword [rdi], rax
mov rax, qword [0x140207cf0]
mov qword [rsp + 0x70], r9
lea rcx, str.midx.c
lea r9, str.write_midx_internal
mov qword [rsp + 0xb0], 0
mov qword [rsp + 0xb8], 0
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call fcn.14008f540
lea rax, [rsp + 0xb0]
mov r8, rsi
lea rdx, str._s_pack_multi_pack_index
mov rcx, rax
mov qword [rsp + 0x98], rax
call fcn.14007ed40
mov rcx, qword [rsp + 0xc0]
call fcn.140025f30
mov dword [rsp + 0x6c], eax
test eax, eax
jne 0x14014da3b
test r12, r12
je 0x14014d682
mov rax, qword [rsp + 0x128]
test rax, rax
je 0x14014bf9b
mov rdx, qword [rax + 0x10]
mov rcx, qword [rax + 8]
call fcn.140100540
test eax, eax
je 0x14014bf6e
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x118], 0
test rax, rax
je 0x14014bfa7
mov eax, dword [rax + 0x38]
mov rcx, rax
shl rcx, 5
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x110], 0
call fcn.1400a5fa0
mov rdx, qword [rsp + 0x128]
mov qword [rsp + 0x110], rax
test rdx, rdx
je 0x14014c02d
mov eax, dword [rdx + 0x38]
test eax, eax
je 0x14014c02d
mov rax, qword [rsp + 0x118]
xor r14d, r14d
mov edi, dword [rsp + 0xea8]
movabs rbp, 0x7ffffffffffffff
and edi, 2
mov rcx, rax
jmp 0x14014bf49
lea rdx, [r8 + r8*2 + 0x30]
shr rdx, 1
cmp rdx, rax
cmovb rdx, rax
mov qword [rsp + 0x120], rdx
cmp rbp, rdx
jb 0x14014da60
mov rcx, qword [rsp + 0x110]
shl rdx, 5
call fcn.1400a61c0
mov rcx, qword [rsp + 0x118]
mov rdx, qword [rsp + 0x128]
mov qword [rsp + 0x110], rax
shl rcx, 5
lea rsi, [r14*8]
lea r15, [rax + rcx]
mov rax, qword [rdx + 0x78]
mov dword [r15], ebx
mov rcx, qword [rax + r14*8]
call fcn.1400a5f80
mov rdx, qword [rsp + 0x128]
mov rcx, qword [rsp + 0x118]
mov qword [r15 + 8], rax
mov r8, qword [rdx + 0x80]
mov rax, rcx
shl rax, 5
add rax, qword [rsp + 0x110]
mov r8, qword [r8 + r14*8]
and byte [rax + 0x18], 0xfe
mov qword [rax + 0x10], r8
test edi, edi
jne 0x14014bfc0
add rcx, 1
add r14, 1
mov qword [rsp + 0x118], rcx
cmp r14d, dword [rdx + 0x38]
jae 0x14014c02d
mov r8, qword [rsp + 0x120]
lea rax, [rcx + 1]
mov ebx, r14d
cmp r8, rax
jb 0x14014be88
mov rax, qword [rsp + 0x110]
jmp 0x14014bed1
mov rax, qword [0x1402078f0]
lea rcx, str.ignoring_existing_multi_pack_index__checksum_mismatch
mov eax, dword [rax]
test eax, eax
je 0x14014bf8a
call sub.libintl_8.dll_libintl_gettext
mov rcx, rax
call fcn.1400a0c10
mov qword [rsp + 0x128], 0
mov qword [rsp + 0x118], 0
mov ecx, 0x200
mov eax, 0x10
jmp 0x14014be1f
mov rax, qword [0x140207cf0]
mov r8d, ebx
mov rcx, qword [rax]
call fcn.14014baa0
test eax, eax
jne 0x14014d64c
mov rax, qword [rsp + 0x128]
mov rax, qword [rax + 0x80]
mov rcx, qword [rax + rsi]
call fcn.140031a00
test eax, eax
jne 0x14014da74
mov rdx, qword [rsp + 0x128]
mov rcx, qword [rsp + 0x118]
mov rax, qword [rdx + 0x80]
mov r8, qword [rax + rsi]
mov rax, rcx
shl rax, 5
add rax, qword [rsp + 0x110]
mov qword [rax + 0x10], r8
jmp 0x14014bf2f
mov dword [rsp + 0x138], 0
test byte [rsp + 0xea8], 1
jne 0x14014d2a9
mov rdi, qword [0x1402078f0]
xor eax, eax
mov qword [rsp + 0x60], rdi
mov r8, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x80]
lea rdx, [0x14014b100]
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x170], r12
call fcn.140032bb0
mov rax, qword [rsp + 0x60]
lea rdx, [0x1401f3815]
mov r14d, dword [rax]
test r14d, r14d
jne 0x14014c580
lea rcx, [rsp + 0x130]
call fcn.140163540
mov rcx, qword [rsp + 0x128]
mov r14, qword [rsp + 0x118]
test rcx, rcx
je 0x14014c0c6
mov eax, dword [rcx + 0x38]
cmp r14, rax
je 0x14014d2d0
cmp qword [rsp + 0x70], 0
je 0x14014d1b9
mov dword [rsp + 0x168], 0xffffffff
test r14, r14
je 0x14014d6f8
mov rbx, qword [rsp + 0x110]
mov rsi, qword [rsp + 0x70]
xor edi, edi
xor eax, eax
mov qword [rsp + 0x48], rbx
jmp 0x14014c10d
lea eax, [rdi + 1]
mov rdi, rax
cmp rax, r14
jae 0x14014d6f8
shl rax, 5
mov rcx, rsi
mov rdx, qword [rbx + rax + 8]
call fcn.14014a430
test eax, eax
jne 0x14014c0fe
mov dword [rsp + 0x168], edi
cmp edi, 0xffffffff
je 0x14014d6f8
test edi, edi
js 0x14014c154
mov rcx, qword [rsp + 0x48]
movsxd rax, edi
shl rax, 5
add rax, rcx
mov rax, qword [rax + 0x10]
mov ebp, dword [rax + 0x48]
test ebp, ebp
je 0x14014d6a6
mov r14, qword [rsp + 0x118]
mov rbp, qword [rsp + 0x128]
mov dword [rsp + 0x3c], r14d
mov dword [rsp + 0x50], 0
test rbp, rbp
je 0x14014c17d
mov eax, dword [rbp + 0x38]
mov dword [rsp + 0x50], eax
mov esi, dword [rsp + 0x50]
mov ebx, dword [rsp + 0x3c]
cmp esi, ebx
jae 0x14014d1aa
lea edx, [rbx - 1]
mov ecx, esi
mov r10, qword [rsp + 0x48]
sub edx, esi
mov rax, rcx
add rdx, rcx
shl rax, 5
shl rdx, 5
add rax, r10
lea r9, [r10 + rdx + 0x20]
xor edx, edx
mov rcx, qword [rax + 0x10]
mov r8d, dword [rcx + 0x48]
mov rcx, rdx
add rcx, r8
jb 0x14014d640
add rax, 0x20
mov rdx, rcx
cmp r9, rax
jne 0x14014c1b1
cmp rcx, 0xc80
jbe 0x14014d1aa
movabs rax, 0x28f5c28f5c28f5c3
shr rdx, 3
mul rdx
mov rsi, rdx
shr rsi, 2
mov rbx, rsi
shl rbx, 6
mov rcx, rbx
mov qword [rsp + 0x190], rsi
lea r12, [rsp + 0x180]
call fcn.1400a5fa0
mov rcx, rbx
mov qword [rsp + 0x180], rax
call fcn.1400a5fa0
mov ecx, dword [rsp + 0x50]
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x30], 0
mov r13, rax
mov eax, edi
not eax
mov r11, r13
shr eax, 0x1f
cmp edi, ecx
setb dl
and edx, eax
mov byte [rsp + 0x57], dl
nop word cs:[rax + rax]
mov rcx, qword [rsp + 0x30]
mov qword [rsp + 0x188], 0
mov r15d, ecx
test rbp, rbp
je 0x14014c38f
mov rax, qword [rbp + 0x50]
xor ebx, ebx
test rcx, rcx
je 0x14014c290
lea edx, [rcx - 1]
mov ebx, dword [rax + rdx*4]
bswap ebx
mov rcx, qword [rsp + 0x30]
mov eax, dword [rax + rcx*4]
bswap eax
cmp ebx, eax
jae 0x14014c38f
mov r9d, ebx
mov qword [rsp + 0x58], rsi
lea r13, [r9*8]
mov qword [rsp + 0x40], r11
mov rsi, r13
mov dword [rsp + 0x68], r15d
mov r13d, ebx
mov ebx, eax
jmp 0x14014c351
mov rax, qword [rsp + 0x188]
mov rcx, r12
lea rdx, [rax + 1]
call fcn.14014ac50
mov r15, qword [rsp + 0x188]
mov r14, r15
shl r14, 6
add r14, qword [rsp + 0x180]
cmp r13d, dword [rbp + 0x3c]
jae 0x14014c333
mov rdx, rbp
mov rcx, r14
mov r8d, r13d
call fcn.14014bc30
mov rdx, qword [rbp + 0x60]
mov rcx, rbp
mov eax, dword [rdx + rsi]
mov edx, r13d
bswap eax
mov dword [r14 + 0x24], eax
call fcn.14014bca0
mov qword [r14 + 0x28], 0
mov qword [r14 + 0x30], rax
lea r9, [r15 + 1]
add r13d, 1
and byte [r14 + 0x38], 0xfe
add rsi, 8
mov qword [rsp + 0x188], r9
cmp ebx, r13d
je 0x14014c380
test edi, edi
js 0x14014c2d0
mov rdx, qword [rbp + 0x60]
mov eax, dword [rdx + rsi]
bswap eax
cmp eax, edi
jne 0x14014c2d0
add r13d, 1
add rsi, 8
cmp r13d, ebx
jne 0x14014c35d
nop word [rax + rax]
mov r11, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x58]
mov r15d, dword [rsp + 0x68]
mov eax, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x3c]
mov r14d, eax
cmp eax, ecx
jae 0x14014c3e5
mov rbx, qword [rsp + 0x48]
mov r13d, dword [rsp + 0x3c]
mov qword [rsp + 0x40], rsi
mov esi, r14d
mov r14, r11
nop dword [rax + rax]
cmp esi, edi
mov dword [rsp + 0x20], r15d
mov r8d, esi
mov rdx, rbx
sete r9b
mov rcx, r12
add esi, 1
movzx r9d, r9b
call fcn.14014b360
cmp esi, r13d
jb 0x14014c3b8
mov rsi, qword [rsp + 0x40]
mov r11, r14
cmp byte [rsp + 0x57], 0
jne 0x14014d180
mov r14, qword [rsp + 0x188]
mov r15, qword [rsp + 0x180]
cmp r14, 1
ja 0x14014d158
test r14, r14
je 0x14014c5ab
xor ebx, ebx
xor r13d, r13d
mov rcx, r11
jmp 0x14014c500
mov r10, qword [0x140207cf0]
mov r8, qword [r10]
mov r8, qword [r8 + 0x100]
cmp qword [r8 + 0x10], 0x20
mov r8, qword [rax]
je 0x14014c54c
mov r9, qword [rax + 8]
xor r8, qword [rdx]
xor r9, qword [rdx + 8]
or r8, r9
je 0x14014c590
mov eax, 1
xor eax, 1
test eax, eax
jne 0x14014c4f0
mov rax, qword [rsp + 0x148]
cmp rax, 0xffffffffffffffff
je 0x14014d633
lea rdx, [rax + 1]
cmp rsi, rdx
jae 0x14014c4b7
movabs rax, 0x3ffffffffffffff
lea rsi, [rsi + rsi*2 + 0x30]
shr rsi, 1
cmp rsi, rdx
cmovb rsi, rdx
cmp rax, rsi
jb 0x14014d6e4
mov rdx, rsi
shl rdx, 6
call fcn.1400a61c0
mov rcx, rax
mov rax, qword [rsp + 0x148]
shl rbx, 6
shl rax, 6
add rbx, r15
add rax, rcx
movdqu xmm1, xmmword [rbx]
movups xmmword [rax], xmm1
movdqu xmm2, xmmword [rbx + 0x10]
movups xmmword [rax + 0x10], xmm2
movdqu xmm3, xmmword [rbx + 0x20]
movups xmmword [rax + 0x20], xmm3
movdqu xmm4, xmmword [rbx + 0x30]
movups xmmword [rax + 0x30], xmm4
add qword [rsp + 0x148], 1
lea ebx, [r13 + 1]
mov r13, rbx
cmp rbx, r14
jae 0x14014c5a8
test r13d, r13d
je 0x14014c463
lea eax, [r13 - 1]
mov rdx, rbx
shl rax, 6
shl rdx, 6
add rax, r15
add rdx, r15
movsxd r8, dword [rax + 0x20]
test r8d, r8d
je 0x14014c420
mov r11, qword [0x1402079b0]
lea r9, [r8 + r8*2]
lea r8, [r8 + r9*4]
lea r8, [r11 + r8*8]
cmp qword [r8 + 0x10], 0x20
mov r8, qword [rax]
jne 0x14014c43f
mov r9, qword [rax + 8]
xor r8, qword [rdx]
xor r9, qword [rdx + 8]
or r8, r9
jne 0x14014c453
mov r8, qword [rax + 0x10]
mov rax, qword [rax + 0x18]
xor r8, qword [rdx + 0x10]
xor rax, qword [rdx + 0x18]
or r8, rax
jne 0x14014c453
xor eax, eax
jmp 0x14014c458
mov rcx, rdx
call sub.libintl_8.dll_libintl_gettext
mov rdx, rax
jmp 0x14014c098
mov edx, dword [rdx + 0x10]
cmp dword [rax + 0x10], edx
jne 0x14014c453
xor eax, eax
jmp 0x14014c458
mov r11, rcx
add qword [rsp + 0x30], 1
mov rax, qword [rsp + 0x30]
cmp rax, 0x100
jne 0x14014c260
mov rcx, r15
mov r13, r11
call fcn.1400d2670
movzx edi, byte [rsp + 0x160]
mov r9, qword [rsp + 0x148]
mov qword [rsp + 0x140], r13
and edi, 0xfffffffe
mov byte [rsp + 0x160], dil
test r9, r9
je 0x14014c658
mov ecx, dword [rsp + 0x164]
xor r8d, r8d
xor ebx, ebx
xor edx, edx
xor eax, eax
mov r10d, 0x80000000
mov ebp, 0xffffffff
mov esi, 1
shl rax, 6
mov rax, qword [r13 + rax + 0x30]
cmp rax, r10
jb 0x14014c632
add ecx, 1
cmp rbp, rax
mov ebx, 1
cmovb r8d, esi
lea eax, [rdx + 1]
mov rdx, rax
cmp rax, r9
jb 0x14014c615
test r8b, r8b
je 0x14014c64d
or edi, 1
mov byte [rsp + 0x160], dil
test bl, bl
je 0x14014c658
mov dword [rsp + 0x164], ecx
mov rdx, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x110]
mov r13, rdx
cmp rdx, 1
ja 0x14014c712
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x14014c75e
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x14014c75e
test r13, r13
je 0x14014c75e
mov r12, qword [rsp + 0x78]
xor r14d, r14d
xor esi, esi
xor edi, edi
xor eax, eax
lea rbp, str.did_not_see_pack_file__s_to_drop
jmp 0x14014c6cd
or byte [rbx + 0x18], 1
add esi, 1
add edi, 1
mov eax, edi
mov rdx, r13
cmp rax, r13
jae 0x14014d750
mov rcx, qword [r12 + 8]
movsxd rdx, esi
cmp rdx, rcx
jae 0x14014d737
shl rdx, 4
add rdx, qword [r12]
shl rax, 5
add rax, qword [rsp + 0x110]
mov r15, qword [rdx]
mov rcx, qword [rax + 8]
mov rbx, rax
mov rdx, r15
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x14014c6b0
jg 0x14014d5fa
and byte [rbx + 0x18], 0xfe
add edi, 1
jmp 0x14014c6ba
lea r9, [0x14014a4c0]
mov r8d, 0x20
call fcn.14007d390
cmp qword [rsp + 0x78], 0
mov rdx, qword [rsp + 0x118]
je 0x14014c751
mov rax, qword [rsp + 0x78]
mov r13, qword [rsp + 0x118]
mov rcx, qword [rax + 8]
mov rdx, r13
test rcx, rcx
jne 0x14014c690
mov rax, rdx
shr rax, 0x3e
jne 0x14014d785
lea rcx, [rdx*4]
call fcn.1400a5fa0
mov r13, qword [rsp + 0x118]
mov qword [rsp + 0x150], rax
mov rcx, rax
test r13, r13
je 0x14014d7c3
mov r12, qword [rsp + 0x110]
xor ebx, ebx
xor edx, edx
xor eax, eax
shl rax, 5
add rax, r12
mov r8d, dword [rax]
lea r9, [rcx + r8*4]
mov r8d, edx
sub r8d, ebx
test byte [rax + 0x18], 1
je 0x14014c7b8
add ebx, 1
mov r8d, 0xffffffff
lea eax, [rdx + 1]
mov dword [r9], r8d
mov rdx, rax
cmp rax, r13
jb 0x14014c795
xor esi, esi
xor edi, edi
xor eax, eax
shl rax, 5
add rax, r12
test byte [rax + 0x18], 1
jne 0x14014c7e6
mov rcx, qword [rax + 8]
call sub.msvcrt.dll_strlen
lea esi, [rsi + rax + 1]
lea eax, [rdi + 1]
mov rdi, rax
cmp rax, r13
jb 0x14014c7cc
mov rcx, qword [rsp + 0x70]
mov ebp, esi
movsxd rdi, ebx
and ebp, 3
test rcx, rcx
je 0x14014c839
lea rax, [0x14014a4b0]
mov r9d, 0x20
mov r8, r13
mov rdx, r12
mov qword [rsp + 0x20], rax
call sub.msvcrt.dll_bsearch
test rax, rax
je 0x14014c839
mov edx, dword [rax]
mov rax, qword [rsp + 0x150]
cmp dword [rax + rdx*4], 0xffffffff
je 0x14014d8fc
test ebp, ebp
je 0x14014c851
mov eax, esi
sar eax, 0x1f
shr eax, 0x1e
lea edx, [rsi + rax]
and edx, 3
sub eax, edx
lea esi, [rsi + rax + 4]
mov dword [rsp + 0x20], 0x1b6
mov rdx, qword [rsp + 0xc0]
xor r9d, r9d
lea r14, [rsp + 0xa0]
mov r8d, 1
mov rcx, r14
call fcn.140021fa0
mov rcx, qword [rsp + 0xa0]
call fcn.14008c3e0
mov rcx, qword [rsp + 0xa0]
mov rbp, rax
call fcn.14008c410
mov rdx, rbp
mov ecx, eax
call fcn.140100410
mov r12, rax
cmp qword [rsp + 0x118], rdi
je 0x14014d80c
cmp qword [rsp + 0x148], 0
jne 0x14014c8d3
test byte [rsp + 0xea8], 4
jne 0x14014d842
and dword [rsp + 0xea8], 0xfffffff9
mov rcx, r12
call fcn.14019c100
lea r9, [0x14014a780]
movsxd r8, esi
mov edx, 0x504e414d
mov rdi, rax
mov rcx, rax
call fcn.14019c160
mov r8d, 0x400
mov rcx, rdi
lea r9, [0x14014a550]
mov edx, 0x4f494446
call fcn.14019c160
mov rax, qword [0x140207cf0]
mov rcx, qword [rsp + 0x148]
mov rax, qword [rax]
mov rax, qword [rax + 0x100]
mov r8, qword [rax + 0x10]
test rcx, rcx
jne 0x14014d337
imul r8, rcx
mov edx, 0x4f49444c
lea r9, [0x14014ae40]
mov rcx, rdi
call fcn.14019c160
mov rdx, qword [rsp + 0x148]
mov rax, rdx
shr rax, 0x3d
jne 0x14014da29
lea r8, [rdx*8]
lea r9, [0x14014a5f0]
mov edx, 0x4f4f4646
mov rcx, rdi
call fcn.14019c160
test byte [rsp + 0x160], 1
jne 0x14014d5d2
test byte [rsp + 0xea8], 6
jne 0x14014d45d
mov esi, dword [rsp + 0x118]
mov rcx, rdi
call fcn.14019c150
mov r8d, 4
mov rcx, r12
mov dword [rsp + 0x180], 0x5844494d
sub esi, ebx
lea rbx, [rsp + 0x180]
mov ebp, eax
mov rdx, rbx
bswap esi
call fcn.1401002c0
mov r8d, 1
mov rdx, rbx
mov rcx, r12
mov byte [rsp + 0x180], 1
call fcn.1401002c0
mov rax, qword [0x140207cf0]
mov rax, qword [rax]
mov rcx, qword [rax + 0x100]
call fcn.14019c6b0
mov r8d, 1
mov rdx, rbx
mov rcx, r12
mov byte [rsp + 0x180], al
call fcn.1401002c0
mov r8d, 1
mov rdx, rbx
mov rcx, r12
mov byte [rsp + 0x180], bpl
lea rbp, [rsp + 0xe00]
call fcn.1401002c0
mov r8d, 1
mov rdx, rbx
mov rcx, r12
mov byte [rsp + 0x180], 0
call fcn.1401002c0
mov r8d, 4
mov rdx, rbx
mov rcx, r12
mov dword [rsp + 0x180], esi
call fcn.1401002c0
mov rdx, qword [rsp + 0x88]
mov rcx, rdi
call fcn.14019c200
mov rcx, r12
mov r9d, 6
mov rdx, rbp
mov r8d, 4
call fcn.1401000f0
mov rcx, rdi
call fcn.14019c120
test byte [rsp + 0xea8], 2
jne 0x14014d358
test byte [rsp + 0xea8], 4
je 0x14014cff1
cmp qword [rsp + 0x148], 0
je 0x14014d927
mov rax, qword [0x140207cf0]
mov edx, 0x3d7
mov rdi, rbx
xor esi, esi
lea r9, str.prepare_midx_packing_data
lea r8, [0x1401f3733]
mov rax, qword [rax]
lea rcx, str.midx.c
mov qword [rsp + 0x20], rax
call fcn.14008f540
xor eax, eax
mov ecx, 0x15
mov rdx, rbx
rep stosq qword [rdi], rax
mov rax, qword [0x140207cf0]
movabs rdi, 0x4ec4ec4ec4ec4ec5
mov rcx, qword [rax]
call fcn.14015c130
xor eax, eax
cmp qword [rsp + 0x148], 0
jne 0x14014cb65
jmp 0x14014cbff
mov edx, eax
movzx eax, word [r12 + 0x5c]
and dx, 0x3ff
and ax, 0xfc00
or eax, edx
mov word [r12 + 0x5c], ax
lea eax, [rsi + 1]
mov rsi, rax
cmp rax, qword [rsp + 0x148]
jae 0x14014cbff
mov rdx, qword [rsp + 0x158]
mov rcx, rbx
mov r13d, dword [rdx + rax*4]
shl r13, 6
add r13, qword [rsp + 0x140]
mov rdx, r13
call fcn.14015c200
mov edx, dword [r13 + 0x24]
mov r12, rax
mov rax, qword [rsp + 0x150]
mov eax, dword [rax + rdx*4]
shl rax, 5
add rax, qword [rsp + 0x110]
cmp qword [rsp + 0x1b8], 0
mov r13, qword [rax + 0x10]
je 0x14014cbcc
mov eax, dword [r13 + 0x94]
test eax, eax
jne 0x14014cb38
mov rcx, rbx
call fcn.14015c060
mov rax, r12
sub rax, qword [rsp + 0x188]
mov rdx, qword [rsp + 0x1c0]
sar rax, 3
imul rax, rdi
mov qword [rdx + rax*8], r13
lea eax, [rsi + 1]
mov rsi, rax
cmp rax, qword [rsp + 0x148]
jb 0x14014cb65
mov rax, qword [0x140207cf0]
lea r9, str.prepare_midx_packing_data
lea r8, [0x1401f3733]
mov edx, 0x3e4
lea rcx, str.midx.c
lea rsi, [rsp + 0x260]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call fcn.14008f750
mov rax, qword [0x140207cf0]
pxor xmm0, xmm0
lea r9, str.find_commits_for_midx_bitmap
lea r8, [0x1401f3733]
mov edx, 0x446
lea rcx, str.midx.c
movups xmmword [rsp + 0xf0], xmm0
mov rax, qword [rax]
movups xmmword [rsp + 0x100], xmm0
mov qword [rsp + 0x20], rax
call fcn.14008f540
mov rax, qword [rsp + 0x88]
xor r8d, r8d
mov rdx, rsi
mov qword [rsp + 0x108], rax
mov rax, qword [0x140207cf0]
mov rcx, qword [rax]
call fcn.14006cff0
cmp qword [rsp + 0x90], 0
je 0x14014d7a0
mov rax, qword [0x140207c90]
mov rcx, qword [rsp + 0x90]
lea rdx, [0x1401f3ac1]
mov qword [rsp + 0xd0], 0
lea r12, [rsp + 0xd0]
lea r13, [rsp + 0xa8]
mov qword [rsp + 0xd8], 0
mov qword [rsp + 0xe0], rax
call fcn.1400a67c0
mov qword [rsp + 0x30], rbx
mov r15, rax
jmp 0x14014cd89
xor edi, edi
mov rcx, qword [rsp + 0xe0]
cmp qword [rsp + 0xd8], 0
mov qword [rsp + 0xa8], 0
je 0x14014cd37
cmp byte [rcx], 0x2b
jne 0x14014cd37
add rcx, 1
mov edi, 1
lea rbx, [rsp + 0x230]
mov r8, r13
mov rdx, rbx
call fcn.140020180
test eax, eax
js 0x14014d8c5
mov rax, qword [rsp + 0xa8]
cmp byte [rax], 0
jne 0x14014d970
xor edx, edx
mov rcx, rbx
call fcn.14002f700
mov rdx, rax
test edi, edi
je 0x14014cd7a
or dword [rax], 0x4000000
lea r8, [0x1401f3384]
mov rcx, rsi
call fcn.14006c170
mov rdx, r15
mov rcx, r12
call fcn.140080070
cmp eax, 0xffffffff
jne 0x14014cd08
mov rcx, r15
mov rbx, qword [rsp + 0x30]
call sub.msvcrt.dll_fclose
mov rcx, r12
call fcn.14007d7e0
mov rax, qword [0x140207810]
mov rcx, rsi
mov dword [rax], 0
or byte [rsp + 0x375], 8
call fcn.14006e2f0
test eax, eax
jne 0x14014d953
mov qword [rsp + 0x20], 0
xor r8d, r8d
mov rcx, rsi
lea r9, [rsp + 0xf0]
lea rdx, [0x14014a960]
call fcn.140131f00
mov eax, dword [rsp + 0xf8]
mov rcx, rsi
mov dword [rsp + 0x30], eax
call fcn.14006e1e0
mov rax, qword [0x140207cf0]
mov edx, 0x46b
lea r9, str.find_commits_for_midx_bitmap
lea r8, [0x1401f3733]
lea rcx, str.midx.c
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call fcn.14008f750
mov rcx, qword [rsp + 0x140]
mov r15, qword [rsp + 0xf0]
call fcn.1400d2670
mov rsi, qword [rsp + 0xc0]
mov rcx, rbp
mov qword [rsp + 0x140], 0
mov qword [rsp + 0x148], 0
mov r13, qword [rsp + 0x158]
call fcn.1400202a0
mov rdx, rsi
lea rcx, str._s__s.bitmap
mov r8, rax
call fcn.140080b50
lea r9, str.write_midx_bitmap
lea r8, [0x1401f3733]
mov edx, 0x47f
mov r12, rax
mov rax, qword [0x140207cf0]
lea rcx, str.midx.c
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call fcn.14008f540
mov eax, dword [rsp + 0xea8]
mov ecx, dword [rsp + 0x190]
shr eax, 3
and eax, 1
lea edi, [rax*4]
mov eax, edi
or eax, 0x10
test byte [rsp + 0xea8], 0x10
cmovne edi, eax
shl rcx, 3
call fcn.1400a5fa0
mov rsi, rax
mov eax, dword [rsp + 0x190]
test eax, eax
je 0x14014cf24
mov rcx, qword [rsp + 0x188]
mov rdx, rsi
lea rax, [rsi + rax*8]
mov qword [rdx], rcx
add rdx, 8
add rcx, 0x68
cmp rdx, rax
jne 0x14014cf14
mov ecx, dword [rsp + 0xea8]
and ecx, 1
call fcn.1401542f0
mov r8d, dword [rsp + 0x190]
mov rdx, rsi
mov rcx, rbx
call fcn.140154300
mov eax, dword [rsp + 0x190]
test eax, eax
je 0x14014cf73
mov rdx, qword [rsp + 0x188]
lea rax, [r13 + rax*4]
mov ecx, dword [r13]
add r13, 4
mov qword [rsi + rcx*8], rdx
add rdx, 0x68
cmp r13, rax
jne 0x14014cf5e
mov edx, dword [rsp + 0x30]
mov rcx, r15
mov r8d, 0xffffffff
call fcn.140154f80
mov rcx, rbx
call fcn.1401544a0
test eax, eax
js 0x14014d9d0
mov rcx, rbp
call fcn.140155250
movzx r9d, di
mov r8, r12
mov rcx, rsi
mov edx, dword [rsp + 0x190]
call fcn.140155280
mov rcx, rsi
call fcn.1400d2670
mov rcx, r12
call fcn.1400d2670
mov rax, qword [0x140207cf0]
mov edx, 0x4af
lea r9, str.write_midx_bitmap
lea r8, [0x1401f3733]
lea rcx, str.midx.c
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call fcn.14008f750
cmp qword [rsp + 0x128], 0
je 0x14014d00f
mov rax, qword [0x140207cf0]
mov rax, qword [rax]
mov rcx, qword [rax + 0x10]
call fcn.140031d20
mov rcx, r14
call fcn.1400222c0
test eax, eax
js 0x14014d9b6
mov rdi, qword [rsp + 0x80]
mov r8, rbp
lea rdx, str..bitmap
mov rcx, rdi
call fcn.14014aad0
lea rdx, str..rev
mov r8, rbp
mov rcx, rdi
call fcn.14014aad0
mov rdx, qword [rsp + 0x118]
xor eax, eax
xor esi, esi
mov rbx, rax
test rdx, rdx
je 0x14014d0b2
mov rax, qword [rsp + 0x110]
shl rbx, 5
add rax, rbx
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x14014d099
call fcn.140031c80
mov rax, qword [rsp + 0x110]
mov rcx, qword [rax + rbx + 0x10]
call fcn.1400d2670
mov rax, qword [rsp + 0x110]
add rax, rbx
mov rcx, qword [rax + 8]
lea ebx, [rsi + 1]
mov rsi, rbx
call fcn.1400d2670
cmp rbx, qword [rsp + 0x118]
jb 0x14014d05f
mov rcx, qword [rsp + 0x110]
call fcn.1400d2670
mov rcx, qword [rsp + 0x140]
call fcn.1400d2670
mov rcx, qword [rsp + 0x150]
call fcn.1400d2670
mov rcx, qword [rsp + 0x158]
call fcn.1400d2670
mov rcx, qword [rsp + 0x98]
call fcn.14007d7e0
mov rax, qword [0x140207cf0]
mov edx, 0x637
lea r9, str.write_midx_internal
lea r8, [0x1401f3733]
lea rcx, str.midx.c
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call fcn.14008f750
mov rdi, qword [0x140207460]
mov rax, qword [rsp + 0xe28]
sub rax, qword [rdi]
jne 0x14014d9ca
mov eax, dword [rsp + 0x6c]
add rsp, 0xe38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea r9, [0x14014af60]
mov r8d, 0x40
mov rdx, r14
mov rcx, r15
mov qword [rsp + 0x40], r11
call fcn.14007d390
mov r11, qword [rsp + 0x40]
jmp 0x14014c413
mov dword [rsp + 0x20], r15d
mov rdx, qword [rsp + 0x48]
mov r8d, edi
mov rcx, r12
mov r9d, 1
mov qword [rsp + 0x40], r11
call fcn.14014b360
mov r11, qword [rsp + 0x40]
jmp 0x14014c3f0
mov ebx, 0x400
mov esi, 0x10
jmp 0x14014c1fd
mov rdi, qword [rsp + 0x110]
mov qword [rsp + 0x48], rdi
test r14, r14
je 0x14014d294
test byte [rsp + 0xea8], 6
je 0x14014d294
movsxd rax, dword [rsp + 0x168]
shl rax, 5
mov r8, qword [rdi + rax + 0x10]
mov rax, qword [rsp + 0x78]
mov dword [rsp + 0x168], 0
test rax, rax
je 0x14014d228
cmp qword [rax + 8], 0
je 0x14014d228
lea r8, str.cannot_write_a_MIDX_bitmap_during_expiration
mov edx, 0x54d
lea rcx, str.midx.c
call fcn.1400a0ca0
nop word [rax + rax]
mov edx, dword [r8 + 0x48]
xor r9d, r9d
mov ecx, 1
mov eax, 1
cmp r14, 1
je 0x14014d868
mov rdi, qword [rsp + 0x48]
shl rax, 5
mov rax, qword [rdi + rax + 0x10]
test edx, edx
je 0x14014d265
mov rdi, qword [r8 + 0x88]
cmp qword [rax + 0x88], rdi
jge 0x14014d274
mov edx, dword [rax + 0x48]
mov r13d, ecx
mov r8, rax
mov r9d, 1
lea eax, [rcx + 1]
mov rcx, rax
cmp rax, r14
jb 0x14014d243
test r9b, r9b
je 0x14014d28c
mov dword [rsp + 0x168], r13d
test edx, edx
jne 0x14014dab0
mov dword [rsp + 0x168], 0xffffffff
mov edi, 0xffffffff
jmp 0x14014c15c
mov rax, qword [0x1402078f0]
lea rcx, str.Adding_packfiles_to_multi_pack_index
mov r15d, dword [rax]
mov qword [rsp + 0x60], rax
test r15d, r15d
jne 0x14014d323
xor edx, edx
call fcn.140163480
jmp 0x14014c054
or r12, qword [rsp + 0x78]
jne 0x14014c0c6
mov ebx, dword [rsp + 0xea8]
call fcn.14015a5d0
and ebx, 4
mov rsi, rax
test rax, rax
je 0x14014d829
mov rcx, rax
call fcn.14015b500
test eax, eax
je 0x14014d829
mov rcx, rsi
call fcn.14015a420
test ebx, ebx
je 0x14014d87c
mov rdx, qword [rsp + 0x118]
jmp 0x14014d053
call sub.libintl_8.dll_libintl_gettext
xor edx, edx
mov rcx, rax
call fcn.140163480
jmp 0x14014c054
mov rax, r8
mul rcx
jno 0x14014c935
mov rdx, rcx
lea rcx, [0x1401f3348]
call fcn.1400a08a0
nop word [rax + rax]
xor edx, edx
lea rcx, str.GIT_TEST_MIDX_WRITE_REV
call fcn.140009e90
test eax, eax
je 0x14014caa9
mov rax, qword [0x140207c90]
lea r9, str.write_midx_reverse_index
lea r8, [0x1401f3733]
mov edx, 0x3bb
lea rcx, str.midx.c
mov rsi, qword [rsp + 0xc0]
mov qword [rsp + 0x180], 0
mov qword [rsp + 0x190], rax
mov rax, qword [0x140207cf0]
mov qword [rsp + 0x188], 0
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call fcn.14008f540
mov rcx, rbp
call fcn.1400202a0
mov r8, rsi
lea rdx, str._s__s.rev
mov rcx, rbx
mov r9, rax
call fcn.14007ed40
mov dword [rsp + 0x20], 4
xor ecx, ecx
mov r9, rbp
mov rdx, qword [rsp + 0x158]
mov r8d, dword [rsp + 0x148]
call fcn.14015d9a0
mov rdx, qword [rsp + 0x190]
mov rcx, rax
call fcn.140027890
test eax, eax
jne 0x14014d93f
mov rcx, rbx
call fcn.14007d7e0
mov rax, qword [0x140207cf0]
mov edx, 0x3c7
lea r9, str.write_midx_reverse_index
lea r8, [0x1401f3733]
lea rcx, str.midx.c
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call fcn.14008f750
jmp 0x14014caa9
mov rax, qword [0x140207cf0]
lea r8, [0x1401f3733]
lea r9, str.midx_pack_order
mov edx, 0x39d
lea rcx, str.midx.c
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call fcn.14008f540
mov r8, qword [rsp + 0x148]
mov rax, r8
shr rax, 0x3c
jne 0x14014d993
mov rcx, r8
shl rcx, 4
call fcn.1400a5fa0
mov rdx, qword [rsp + 0x148]
mov rsi, rax
test rdx, rdx
je 0x14014d522
mov r11, qword [rsp + 0x140]
mov rbp, qword [rsp + 0x150]
xor r8d, r8d
xor eax, eax
mov rcx, rax
shl rax, 4
shl rcx, 6
add rax, rsi
add rcx, r11
mov dword [rax], r8d
mov r9d, dword [rcx + 0x24]
mov r10d, dword [rbp + r9*4]
mov r9d, r10d
or r9d, 0x80000000
test byte [rcx + 0x38], 1
mov rcx, qword [rcx + 0x30]
cmovne r9d, r10d
mov qword [rax + 8], rcx
mov dword [rax + 4], r9d
lea eax, [r8 + 1]
mov r8, rax
cmp rax, rdx
jb 0x14014d4d1
cmp rdx, 1
jne 0x14014d75b
lea rcx, [rdx*4]
call fcn.1400a5fa0
mov rcx, qword [rsp + 0x148]
xor edx, edx
mov rbp, rax
xor eax, eax
test rcx, rcx
je 0x14014d55e
mov r8, rax
shl r8, 4
mov r8d, dword [rsi + r8]
mov dword [rbp + rax*4], r8d
lea eax, [rdx + 1]
mov rdx, rax
cmp rax, rcx
jb 0x14014d543
mov rcx, rsi
call fcn.1400d2670
mov rax, qword [0x140207cf0]
mov edx, 0x3b0
lea r9, str.midx_pack_order
lea r8, [0x1401f3733]
lea rcx, str.midx.c
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call fcn.14008f750
mov rdx, qword [rsp + 0x148]
mov qword [rsp + 0x158], rbp
mov rax, rdx
shr rax, 0x3e
jne 0x14014d9a4
lea r8, [rdx*4]
lea r9, [0x14014a4d0]
mov edx, 0x52494458
mov rcx, rdi
call fcn.14019c160
jmp 0x14014c99a
mov eax, dword [rsp + 0x164]
lea r9, [0x14014acd0]
mov edx, 0x4c4f4646
mov rcx, rdi
lea r8, [rax*8]
call fcn.14019c160
jmp 0x14014c98c
mov rax, qword [rsp + 0x60]
mov rcx, rbp
mov ebx, dword [rax]
test ebx, ebx
je 0x14014d617
lea rcx, str.did_not_see_pack_file__s_to_drop
call sub.libintl_8.dll_libintl_gettext
mov rcx, rax
mov rdx, r15
add esi, 1
add r14d, 1
call fcn.1400a0b40
mov r13, qword [rsp + 0x118]
jmp 0x14014c6ba
mov r8d, 1
mov rdx, 0xffffffffffffffff
lea rcx, [0x1401f39d0]
call fcn.1400a08a0
mov rax, qword [0x1402078f0]
lea rcx, str.could_not_load_pack
mov eax, dword [rax]
test eax, eax
je 0x14014d668
call sub.libintl_8.dll_libintl_gettext
mov rcx, rax
call fcn.1400a0b40
mov dword [rsp + 0x6c], 1
mov rdx, qword [rsp + 0x118]
jmp 0x14014d053
mov rax, qword [0x140207cf0]
mov rdx, qword [rsp + 0x80]
mov rcx, qword [rax]
call fcn.14014a880
mov qword [rsp + 0x128], rax
jmp 0x14014bdda
lea rbx, [rax + 0xf0]
mov rax, qword [rsp + 0x60]
lea rcx, str.cannot_select_preferred_pack__s_with_no_objects
mov esi, dword [rax]
test esi, esi
je 0x14014d6c7
call sub.libintl_8.dll_libintl_gettext
mov rcx, rax
mov rdx, rbx
call fcn.1400a0b40
mov dword [rsp + 0x6c], 1
mov rdx, qword [rsp + 0x118]
jmp 0x14014d053
mov r8, rsi
mov edx, 0x40
lea rcx, [0x1401f3348]
call fcn.1400a08a0
mov rax, qword [rsp + 0x60]
lea rcx, str.unknown_preferred_pack:__s
mov r12d, dword [rax]
test r12d, r12d
je 0x14014d714
call sub.libintl_8.dll_libintl_gettext
mov rcx, rax
mov rdx, qword [rsp + 0x70]
call fcn.1400a0c10
mov rax, qword [rsp + 0x110]
mov edi, dword [rsp + 0x168]
mov qword [rsp + 0x48], rax
jmp 0x14014c132
mov rdx, r13
test r14d, r14d
je 0x14014c751
mov dword [rsp + 0x6c], 1
jmp 0x14014d053
test r14d, r14d
je 0x14014c75e
jmp 0x14014d743
lea r9, [0x14014abf0]
mov r8d, 0x10
mov rcx, rsi
call fcn.14007d390
mov rdx, qword [rsp + 0x148]
mov rax, rdx
shr rax, 0x3e
je 0x14014d522
mov r8, rdx
lea rcx, [0x1401f3348]
mov edx, 4
call fcn.1400a08a0
nop dword [rax]
xor edx, edx
xor ecx, ecx
xor r9d, r9d
mov r8, rsi
call fcn.14006d300
mov rdx, rsi
lea rcx, [0x14014aa10]
call fcn.140051b30
jmp 0x14014cdb2
cmp qword [rsp + 0x70], 0
je 0x14014d8f1
lea rax, [0x14014a4b0]
mov rdx, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x70]
xor r8d, r8d
mov qword [rsp + 0x20], rax
mov r9d, 0x20
call sub.msvcrt.dll_bsearch
test rax, rax
je 0x14014d8f1
xor edi, edi
xor ebp, ebp
xor ebx, ebx
xor esi, esi
jmp 0x14014c825
mov rax, qword [rsp + 0x60]
lea rcx, str.no_pack_files_to_index.
mov r10d, dword [rax]
test r10d, r10d
je 0x14014d668
jmp 0x14014d660
mov rcx, rsi
call fcn.14015a420
test ebx, ebx
je 0x14014d87c
mov r14, qword [rsp + 0x118]
jmp 0x14014c0c6
mov rax, qword [rsp + 0x60]
lea rcx, str.refusing_to_write_multi_pack_.bitmap_without_any_objects
mov r9d, dword [rax]
test r9d, r9d
je 0x14014d85e
call sub.libintl_8.dll_libintl_gettext
mov rcx, rax
call fcn.1400a0c10
jmp 0x14014c8cb
test edx, edx
je 0x14014d294
mov rax, qword [rsp + 0x48]
xor edi, edi
jmp 0x14014c145
mov rcx, qword [rsp + 0x80]
lea rax, str..bitmap
lea r8, [rsp + 0x180]
mov qword [rsp + 0x180], 0
lea rdx, [0x14014ad90]
mov qword [rsp + 0x188], rax
call fcn.140032bb0
mov rcx, qword [rsp + 0x180]
call fcn.1400d2670
jmp 0x14014d316
mov rax, qword [rsp + 0x60]
mov rbx, qword [rsp + 0xe0]
lea rcx, str.could_not_parse_line:__s
mov r8d, dword [rax]
test r8d, r8d
je 0x14014d8e9
call sub.libintl_8.dll_libintl_gettext
mov rcx, rax
mov rdx, rbx
call fcn.1400a08a0
xor edi, edi
xor ebx, ebx
xor esi, esi
jmp 0x14014c851
mov rax, qword [rsp + 0x60]
lea rcx, str.preferred_pack__s_is_expired
mov r11d, dword [rax]
test r11d, r11d
je 0x14014d918
call sub.libintl_8.dll_libintl_gettext
mov rcx, rax
mov rdx, qword [rsp + 0x70]
call fcn.1400a0c10
jmp 0x14014c839
lea r8, str.cannot_write_a_bitmap_without_any_objects
mov edx, 0x603
lea rcx, str.midx.c
call fcn.1400a0ca0
lea rcx, str.cannot_store_reverse_index_file
call fcn.14014ac30
mov rcx, rax
call fcn.1400a08a0
lea rcx, [0x1401f3ac3]
call fcn.14014ac30
mov rcx, rax
call fcn.1400a08a0
nop word [rax + rax]
mov rax, qword [rsp + 0x60]
mov rbx, qword [rsp + 0xe0]
lea rcx, str.malformed_line:__s
mov edx, dword [rax]
test edx, edx
je 0x14014d8e9
jmp 0x14014d8e1
mov edx, 0x10
lea rcx, [0x1401f3348]
call fcn.1400a08a0
mov r8d, 4
lea rcx, [0x1401f3348]
call fcn.1400a08a0
lea rcx, str.could_not_write_multi_pack_index
call fcn.14014ac30
mov rcx, rax
call fcn.1400a0930
call fcn.1401be670
nop
mov rcx, rsi
call fcn.1400d2670
mov rcx, r12
call fcn.1400d2670
mov rax, qword [0x140207cf0]
lea rcx, str.midx.c
lea r9, str.write_midx_bitmap
lea r8, [0x1401f3733]
mov edx, 0x4af
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call fcn.14008f750
mov rax, qword [rsp + 0x60]
lea rcx, str.could_not_write_multi_pack_bitmap
mov eax, dword [rax]
test eax, eax
je 0x14014d668
jmp 0x14014d660
mov r8d, 8
lea rcx, [0x1401f3348]
call fcn.1400a08a0
mov rbx, qword [rsp + 0xc0]
lea rcx, [0x1401f3968]
call fcn.14014ac30
mov rcx, rax
mov rdx, rbx
call fcn.1400a0930
nop word [rax + rax]
mov r8, rdx
lea rcx, [0x1401f3348]
mov edx, 0x20
call fcn.1400a08a0
mov rax, qword [rsp + 0x128]
lea rcx, str.could_not_open_index_for__s
mov rax, qword [rax + 0x80]
mov rbx, qword [rax + rsi]
mov rax, qword [0x1402078f0]
mov eax, dword [rax]
add rbx, 0xf0
test eax, eax
je 0x14014d8e9
jmp 0x14014d8e1
mov edi, dword [rsp + 0x168]
jmp 0x14014c132