Function at 0x140169630
Capabilities:
Encode data using base64

Disassembly:
endbr64
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x108
lea rax, str.encodeFragment
lea rbp, str._home_admin_.nimble_pkgs2_zippy_0.10.11_12e761e18ccc0a1b0e931c74dd02bb4b74544d56_zippy_snappy.nim
mov rbx, qword [rsp + 0x178]
mov qword [rsp + 0x150], rcx
mov rcx, qword [0x1401e1380]
mov r12, r8
mov qword [rsp + 0x78], rax
xor eax, eax
mov qword [rsp + 0x158], rdx
mov qword [rsp + 0x168], r9
mov qword [rsp + 0x88], rbp
mov qword [rsp + 0x80], 0
mov word [rsp + 0x90], ax
call fcn.14019d400
mov rdx, qword [rax]
mov r14, rax
test rdx, rdx
je 0x140169b60
movzx eax, word [rdx + 0x22]
mov qword [rsp + 0x70], rdx
lea rdx, [rsp + 0x70]
mov qword [r14], rdx
add eax, 1
mov word [rsp + 0x92], ax
cmp ax, 0x7d0
je 0x140169b20
mov qword [rsp + 0x80], 0x14
mov r10, rbx
add r10, qword [rsp + 0x170]
jo 0x140169d6a
mov esi, 0x18
mov ecx, 0x100
jmp 0x140169715
add rcx, rcx
sub rsi, 1
jo 0x140169b30
cmp rcx, rbx
jge 0x140169723
cmp rcx, 0x3fff
jle 0x140169708
mov qword [rsp + 0x80], 0x1f
imul rcx, rcx, 2
jo 0x140169d6a
test rcx, rcx
js 0x140169d30
mov r8, rcx
mov rcx, qword [rsp + 0x180]
xor edx, edx
mov qword [rsp + 0x28], r10
call sub.msvcrt.dll_memset
cmp rbx, 0xe
mov r10, qword [rsp + 0x28]
jle 0x140169b80
mov qword [rsp + 0x80], 0x4d
mov rax, r10
add rax, 0xfffffffffffffff1
mov qword [rsp + 0x28], rax
jo 0x140169d6a
mov rbx, qword [rsp + 0x170]
mov qword [rsp + 0x80], 0x4e
add rbx, 1
jo 0x140169d6a
lea rax, str.read32
mov qword [rsp + 0x80], 0x50
mov qword [rsp + 0xd8], rax
lea rax, str._home_admin_.nimble_pkgs2_zippy_0.10.11_12e761e18ccc0a1b0e931c74dd02bb4b74544d56_zippy_internal.nim
mov qword [rsp + 0xe8], rax
xor eax, eax
mov word [rsp + 0xf0], ax
mov rax, qword [r14]
mov qword [rsp + 0xe0], 0
test rax, rax
je 0x140169e78
movzx edi, word [rax + 0x22]
lea r9, [rsp + 0xd0]
mov qword [rsp + 0xd0], rax
mov qword [r14], r9
lea edx, [rdi + 1]
mov word [rsp + 0xf2], dx
cmp dx, 0x7d0
je 0x140169d49
mov rax, r9
mov r8, rbx
mov ebx, dword [r12 + rbx]
mov qword [rsp + 0x48], r9
mov rcx, qword [str.__ae_]
mov qword [rsp + 0x40], r10
mov qword [rsp + 0xe0], 0xcf
mov rdi, qword [rax]
mov qword [rsp + 0x38], r8
mov qword [r14], rdi
call fcn.14019d400
cmp byte [rax], 0
mov r11, rax
jne 0x140169b44
mov r10, qword [rsp + 0x40]
mov ecx, esi
mov r9, qword [rsp + 0x48]
mov dword [rsp + 0x30], esi
imul ebx, ebx, 0x1e35a7bd
mov qword [rsp + 0x160], r12
mov rsi, qword [rsp + 0x170]
mov qword [rsp + 0x50], r10
mov r12, qword [rsp + 0x38]
mov r8, qword [rsp + 0x160]
shr ebx, cl
mov r15d, 0x20
mov qword [rsp + 0x58], rsi
mov rsi, r11
mov r13, r15
sar r13, 5
add r15, 1
jo 0x140169b09
mov qword [rsp + 0x80], 0x5c
add r13, r12
jo 0x140169d6a
mov rax, qword [rsp + 0x28]
cmp r13, rax
jg 0x140169eb2
lea rax, str.read32
mov rdx, qword [r14]
mov qword [rsp + 0x80], 0x60
mov qword [rsp + 0xd8], rax
lea rax, str._home_admin_.nimble_pkgs2_zippy_0.10.11_12e761e18ccc0a1b0e931c74dd02bb4b74544d56_zippy_internal.nim
mov qword [rsp + 0xe8], rax
xor eax, eax
mov qword [rsp + 0xe0], 0
mov word [rsp + 0xf0], ax
test rdx, rdx
je 0x140169d9e
movzx eax, word [rdx + 0x22]
mov qword [rsp + 0xd0], rdx
mov qword [r14], r9
add eax, 1
mov word [rsp + 0xf2], ax
cmp ax, 0x7d0
je 0x140169d77
mov rax, r9
mov qword [rsp + 0xe0], 0xcf
mov rdi, qword [rax]
mov edx, dword [r8 + r13]
mov qword [r14], rdi
cmp byte [rsi], 0
jne 0x140169b44
imul edx, edx, 0x1e35a7bd
movzx ecx, byte [rsp + 0x30]
mov qword [rsp + 0x80], 0x61
shr edx, cl
cmp ebx, 0x3fff
ja 0x140169e9e
mov rax, qword [rsp + 0x180]
lea rcx, [rax + rbx*2]
movzx eax, word [rcx]
add rax, qword [rsp + 0x170]
mov rbx, rax
jo 0x140169d6a
mov qword [rsp + 0x80], 0x62
mov r10, r12
sub r10, qword [rsp + 0x170]
jo 0x140169d6a
lea rdi, str.read32
mov word [rcx], r10w
mov r10, qword [r14]
mov qword [rsp + 0xd8], rdi
lea rdi, str._home_admin_.nimble_pkgs2_zippy_0.10.11_12e761e18ccc0a1b0e931c74dd02bb4b74544d56_zippy_internal.nim
mov qword [rsp + 0xe8], rdi
xor edi, edi
mov qword [rsp + 0x80], 0x64
mov qword [rsp + 0xe0], 0
mov word [rsp + 0xf0], di
test r10, r10
je 0x140169df5
movzx edi, word [r10 + 0x22]
mov qword [rsp + 0xd0], r10
mov qword [r14], r9
lea ecx, [rdi + 1]
mov word [rsp + 0xf2], cx
cmp cx, 0x7d0
je 0x140169dbc
mov rcx, r9
mov qword [rsp + 0xe0], 0xcf
mov rdi, qword [rcx]
mov r10d, dword [r8 + r12]
mov qword [r14], rdi
cmp byte [rsi], 0
jne 0x140169b44
lea rcx, str.read32
xor r11d, r11d
mov qword [rsp + 0xe0], 0
mov qword [rsp + 0xd8], rcx
lea rcx, str._home_admin_.nimble_pkgs2_zippy_0.10.11_12e761e18ccc0a1b0e931c74dd02bb4b74544d56_zippy_internal.nim
mov qword [rsp + 0xe8], rcx
mov word [rsp + 0xf0], r11w
test rdi, rdi
je 0x140169e58
movzx ecx, word [rdi + 0x22]
mov qword [rsp + 0xd0], rdi
mov qword [r14], r9
add ecx, 1
mov word [rsp + 0xf2], cx
cmp cx, 0x7d0
je 0x140169e15
mov rcx, r9
mov qword [rsp + 0xe0], 0xcf
mov rdi, qword [rcx]
mov eax, dword [r8 + rax]
mov qword [r14], rdi
cmp byte [rsi], 0
jne 0x140169b44
cmp r10d, eax
je 0x14016a028
mov r12, r13
mov r13, r15
mov ebx, edx
sar r13, 5
add r15, 1
jno 0x1401698b9
mov qword [rsp + 0x80], 0x5b
call fcn.1401145f0
mov rdi, qword [r14]
jmp 0x140169b44
call fcn.14010df50
jmp 0x1401696dc
mov qword [rsp + 0x80], 0x1d
call fcn.1401145f0
mov rdi, qword [r14]
mov rax, qword [rdi]
mov qword [r14], rax
add rsp, 0x108
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rsp + 0x70], 0
xor eax, eax
mov word [rsp + 0x92], ax
lea rax, [rsp + 0x70]
mov qword [r14], rax
jmp 0x1401696dc
mov qword [rsp + 0x80], 0x43
cmp r10, qword [rsp + 0x170]
jle 0x140169d41
xor eax, eax
mov rcx, r10
sub rcx, qword [rsp + 0x170]
mov qword [rsp + 0x80], 0x44
seto al
mov qword [rsp + 0x88], rbp
mov rbx, rcx
test rax, rax
jne 0x140169d6a
test rcx, rcx
jle 0x14016a1b8
mov rdx, qword [rsp + 0x170]
mov r8, qword [rsp + 0x158]
mov qword [rsp + 0x80], 0x23
jmp 0x140169c09
mov rdx, rax
add rdx, qword [rsp + 0x170]
jo 0x140169d6a
movzx edx, byte [r12 + rdx]
add rax, 1
add dword [r8 + rdx*4], 1
cmp rax, rcx
jne 0x140169bf8
mov rdi, qword [rsp + 0x158]
mov qword [rsp + 0x80], 0x44
add rax, qword [rdi + 0x4f0]
jo 0x140169d6a
mov qword [rdi + 0x4f0], rax
mov rax, qword [rsp + 0x168]
mov rsi, qword [rsp + 0x150]
mov rcx, qword [rax]
mov rdi, rax
jmp 0x140169ca6
cmp rcx, rax
jge 0x140169d18
mov rax, qword [rsi + 8]
mov word [rax + rcx*2 + 8], dx
mov rcx, qword [rdi]
mov qword [rsp + 0x80], 0x2e
add rcx, 1
jo 0x140169d6a
sub rbx, rdx
mov qword [rdi], rcx
mov qword [rsp + 0x80], 0x28
test rbx, rbx
jle 0x140169d41
mov rdx, rcx
mov rax, qword [rsi]
mov qword [rsp + 0x80], 0x29
add rdx, 1
jo 0x140169d6a
cmp rdx, rax
jle 0x140169cf7
mov qword [rsp + 0x80], 0x2a
imul rax, rax, 2
jo 0x140169d6a
mov edx, 2
mov rcx, rsi
cmp rax, rdx
cmovge rdx, rax
call fcn.14011bb60
mov rcx, qword [rdi]
mov rax, qword [rsi]
mov edx, 0x7fff
mov qword [rsp + 0x80], 0x2d
cmp rbx, rdx
cmovle rdx, rbx
test rcx, rcx
jns 0x140169c60
lea rdx, [rax - 1]
call fcn.140117b20
mov rdi, qword [r14]
jmp 0x140169b44
mov rcx, rdx
mov r14, r15
nop
movabs r8, 0x7fffffffffffffff
xor edx, edx
call fcn.140114130
mov rdi, qword [r14]
jmp 0x140169b44
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x30], r10
call fcn.14010df50
mov rax, qword [r14]
mov r9, qword [rsp + 0x38]
mov r10, qword [rsp + 0x30]
jmp 0x140169820
call fcn.1401145f0
mov rdi, qword [r14]
jmp 0x140169b44
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x160], r8
call fcn.14010df50
mov rax, qword [r14]
mov r9, qword [rsp + 0x38]
mov r8, qword [rsp + 0x160]
jmp 0x14016994f
xor ecx, ecx
mov qword [r14], r9
mov word [rsp + 0xf2], cx
mov qword [rsp + 0xd0], 0
jmp 0x14016994c
mov qword [rsp + 0x48], r9
mov qword [rsp + 0x160], r8
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x38], edx
call fcn.14010df50
mov rcx, qword [r14]
mov r9, qword [rsp + 0x48]
mov r8, qword [rsp + 0x160]
mov rax, qword [rsp + 0x40]
mov edx, dword [rsp + 0x38]
jmp 0x140169a49
xor r10d, r10d
mov qword [r14], r9
mov word [rsp + 0xf2], r10w
mov qword [rsp + 0xd0], 0
jmp 0x140169a46
mov qword [rsp + 0x60], r9
mov qword [rsp + 0x160], r8
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x40], r10d
mov dword [rsp + 0x38], edx
call fcn.14010df50
mov rcx, qword [r14]
mov r9, qword [rsp + 0x60]
mov r8, qword [rsp + 0x160]
mov rax, qword [rsp + 0x48]
mov r10d, dword [rsp + 0x40]
mov edx, dword [rsp + 0x38]
jmp 0x140169acf
xor r11d, r11d
mov qword [r14], r9
mov word [rsp + 0xf2], r11w
mov qword [rsp + 0xd0], 0
jmp 0x140169acc
xor edx, edx
lea r9, [rsp + 0xd0]
mov qword [rsp + 0xd0], 0
mov word [rsp + 0xf2], dx
mov qword [r14], r9
jmp 0x14016981d
mov ecx, ebx
mov edx, 0x3fff
call fcn.140117b20
mov rdi, qword [r14]
jmp 0x140169b44
mov r13, qword [rsp + 0x58]
mov r10, qword [rsp + 0x50]
mov r12, r8
cmp r13, r10
jge 0x14016a204
mov rax, r10
xor ebx, ebx
mov qword [rsp + 0x80], 0x44
sub rax, r13
mov qword [rsp + 0x88], rbp
seto bl
jo 0x140169d6a
test rax, rax
jle 0x14016a1e8
mov qword [rsp + 0x80], 0x23
mov rcx, qword [rsp + 0x158]
mov rdx, r13
jmp 0x140169f1b
mov rdx, r13
add rdx, rbx
jo 0x140169d6a
movzx edx, byte [r12 + rdx]
add rbx, 1
add dword [rcx + rdx*4], 1
cmp rax, rbx
jne 0x140169f0f
mov rdi, qword [rsp + 0x158]
mov rax, rbx
mov qword [rsp + 0x80], 0x44
add rax, qword [rdi + 0x4f0]
jo 0x140169d6a
mov qword [rdi + 0x4f0], rax
mov rax, qword [rsp + 0x168]
mov rsi, qword [rsp + 0x150]
mov rcx, qword [rax]
mov rdi, rax
jmp 0x140169faa
cmp rcx, rax
jge 0x140169d18
mov rax, qword [rsi + 8]
mov word [rax + rcx*2 + 8], dx
mov rcx, qword [rdi]
mov qword [rsp + 0x80], 0x2e
add rcx, 1
jo 0x140169d6a
sub rbx, rdx
mov qword [rdi], rcx
test rbx, rbx
jle 0x14016a204
mov rdx, rcx
mov rax, qword [rsi]
mov qword [rsp + 0x80], 0x29
add rdx, 1
jo 0x140169d6a
cmp rdx, rax
jle 0x140169ffb
mov qword [rsp + 0x80], 0x2a
imul rax, rax, 2
jo 0x140169d6a
mov edx, 2
mov rcx, rsi
cmp rax, rdx
cmovge rdx, rax
call fcn.14011bb60
mov rcx, qword [rdi]
mov rax, qword [rsi]
mov edx, 0x7fff
mov qword [rsp + 0x80], 0x2d
cmp rbx, rdx
cmovle rdx, rbx
test rcx, rcx
jns 0x140169f70
jmp 0x140169d18
mov r11, rsi
mov rsi, qword [rsp + 0x58]
mov rdx, r12
xor eax, eax
mov qword [rsp + 0x38], rbx
sub rdx, rsi
mov qword [rsp + 0x88], rbp
seto al
mov rbx, rdx
mov qword [rsp + 0x80], 0x67
test rax, rax
jne 0x140169d6a
test rdx, rdx
jle 0x14016a218
mov qword [rsp + 0x80], 0x23
mov r10, qword [rsp + 0x158]
mov rcx, rsi
jmp 0x14016a08e
mov rcx, rsi
add rcx, rax
jo 0x140169d6a
movzx ecx, byte [r8 + rcx]
add rax, 1
add dword [r10 + rcx*4], 1
cmp rax, rdx
jne 0x14016a082
mov rdi, qword [rsp + 0x158]
mov qword [rsp + 0x80], 0x67
add rax, qword [rdi + 0x4f0]
jo 0x140169d6a
mov qword [rdi + 0x4f0], rax
mov r13, r8
mov rdi, r11
mov r15, r9
mov rax, qword [rsp + 0x168]
mov rsi, qword [rsp + 0x168]
mov rcx, qword [rax]
mov rax, qword [rsp + 0x150]
jmp 0x14016a12a
cmp rcx, rdx
jge 0x14016ab7d
mov rdx, qword [rax + 8]
mov word [rdx + rcx*2 + 8], r8w
mov rcx, qword [rsi]
mov qword [rsp + 0x80], 0x2e
add rcx, 1
jo 0x140169d6a
sub rbx, r8
mov qword [rsi], rcx
test rbx, rbx
jle 0x14016aea5
mov r8, rcx
mov rdx, qword [rax]
mov qword [rsp + 0x80], 0x29
add r8, 1
jo 0x140169d6a
cmp rdx, r8
jge 0x14016a18b
mov qword [rsp + 0x80], 0x2a
imul rdx, rdx, 2
jo 0x140169d6a
mov ecx, 2
mov qword [rsp + 0x150], rax
cmp rdx, rcx
cmovl rdx, rcx
mov rcx, rax
call fcn.14011bb60
mov rax, qword [rsp + 0x150]
mov rcx, qword [rsi]
mov rdx, qword [rax]
mov r8d, 0x7fff
mov qword [rsp + 0x80], 0x2d
cmp rbx, r8
cmovle r8, rbx
test rcx, rcx
jns 0x14016a0ef
jmp 0x14016ab7d
mov rax, qword [rsp + 0x158]
add rcx, qword [rax + 0x4f0]
jo 0x140169d6a
mov qword [rax + 0x4f0], rcx
mov rdi, qword [r14]
mov qword [rsp + 0x80], 0x28
jmp 0x140169b44
mov rdi, qword [rsp + 0x158]
add rax, qword [rdi + 0x4f0]
jo 0x140169d6a
mov qword [rdi + 0x4f0], rax
mov qword [rsp + 0x80], 0x5f
mov rdi, qword [r14]
jmp 0x140169b44
mov rax, qword [rsp + 0x158]
add rdx, qword [rax + 0x4f0]
jo 0x140169d6a
mov qword [rax + 0x4f0], rdx
mov qword [rsp + 0x160], r8
mov rsi, qword [rsp + 0x150]
mov r15, r14
mov r13, r9
mov rdi, qword [rsp + 0x168]
mov r14, r11
mov rax, r12
add rax, 0x102
jo 0x14016ae89
mov rbx, qword [rsp + 0x50]
mov qword [rsp + 0x80], 0x6f
cmp rbx, rax
cmovle rax, rbx
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x38]
add rax, 4
mov qword [rsp + 0x58], rax
jo 0x14016ae79
mov rdx, r12
xor ebx, ebx
add rdx, 4
seto bl
test rbx, rbx
jne 0x14016ae79
lea rax, str.determineMatchLength
mov rcx, qword [r15]
xor r8d, r8d
mov word [rsp + 0xc0], 0
mov qword [rsp + 0xa8], rax
lea rax, str._home_admin_.nimble_pkgs2_zippy_0.10.11_12e761e18ccc0a1b0e931c74dd02bb4b74544d56_zippy_internal.nim
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xb0], r8
test rcx, rcx
je 0x14016ae55
movzx eax, word [rcx + 0x22]
mov qword [rsp + 0xa0], rcx
lea rcx, [rsp + 0xa0]
mov qword [r15], rcx
add eax, 1
mov word [rsp + 0xc2], ax
cmp ax, 0x7d0
jne 0x14016a320
mov qword [rsp + 0x48], rdx
call fcn.14010df50
mov rdx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0xb0], 0x102
sub rax, 8
mov qword [rsp + 0x60], rax
jo 0x14016ae1b
mov rax, r14
mov qword [rsp + 0x150], rsi
mov r14, rbx
mov rsi, r13
mov rbx, rax
mov r13, rdx
cmp qword [rsp + 0x60], r13
jl 0x14016ad99
lea rax, str.read64
mov rdx, qword [r15]
xor ecx, ecx
mov qword [rsp + 0xb0], 0x103
mov qword [rsp + 0xd8], rax
lea rax, str._home_admin_.nimble_pkgs2_zippy_0.10.11_12e761e18ccc0a1b0e931c74dd02bb4b74544d56_zippy_internal.nim
mov qword [rsp + 0xe8], rax
mov qword [rsp + 0xe0], rcx
mov word [rsp + 0xf0], 0
test rdx, rdx
je 0x14016ac50
movzx eax, word [rdx + 0x22]
mov qword [rsp + 0xd0], rdx
mov qword [r15], rsi
add eax, 1
mov word [rsp + 0xf2], ax
cmp ax, 0x7d0
jne 0x14016a3d1
call fcn.14010df50
mov rax, qword [rsp + 0x160]
mov qword [rsp + 0xe0], 0xd2
mov rax, qword [rax + r13]
mov qword [rsp + 0x48], rax
mov rax, qword [r15]
mov rax, qword [rax]
mov qword [r15], rax
cmp byte [rbx], 0
jne 0x14016ac37
mov rdx, qword [rsp + 0x58]
add rdx, r14
mov qword [rsp + 0x68], rdx
jo 0x14016a4f1
lea rdx, str.read64
mov word [rsp + 0xf0], 0
mov qword [rsp + 0xd8], rdx
lea rdx, str._home_admin_.nimble_pkgs2_zippy_0.10.11_12e761e18ccc0a1b0e931c74dd02bb4b74544d56_zippy_internal.nim
mov qword [rsp + 0xe8], rdx
xor edx, edx
mov qword [rsp + 0xe0], rdx
test rax, rax
je 0x14016a4d8
movzx edx, word [rax + 0x22]
mov qword [rsp + 0xd0], rax
mov qword [r15], rsi
add edx, 1
mov word [rsp + 0xf2], dx
cmp dx, 0x7d0
jne 0x14016a474
call fcn.14010df50
mov rax, qword [rsp + 0x160]
mov rdx, qword [rsp + 0x68]
mov qword [rsp + 0xe0], 0xd2
mov rcx, qword [rax + rdx]
mov rax, qword [r15]
mov rax, qword [rax]
mov qword [r15], rax
cmp byte [rbx], 0
mov r9, rax
jne 0x14016ac37
cmp qword [rsp + 0x48], rcx
jne 0x14016ac99
add r13, 8
jo 0x14016ac6c
mov qword [rsp + 0xb0], 0x109
mov rax, r14
add rax, 8
jo 0x14016a4f1
mov r14, rax
jmp 0x14016a357
xor eax, eax
mov qword [r15], rsi
mov word [rsp + 0xf2], 0
mov qword [rsp + 0xd0], rax
jmp 0x14016a474
mov rax, rbx
mov r13, rsi
mov rbx, r14
mov rsi, qword [rsp + 0x150]
mov r14, rax
call fcn.1401145f0
mov rax, qword [r15]
mov rdx, qword [rax]
mov qword [r15], rdx
cmp byte [r14], 0
jne 0x14016ac2c
add rbx, 4
mov qword [rsp + 0x40], rbx
jo 0x14016ae79
mov rax, r12
sub rax, qword [rsp + 0x38]
mov qword [rsp + 0x38], rax
jo 0x14016ac10
mov rbx, r12
add rbx, qword [rsp + 0x40]
jo 0x14016abf4
mov rax, qword [rdi]
mov rdx, qword [rsi]
mov qword [rsp + 0x80], 0x32
add rax, 3
jo 0x14016ae79
cmp rax, rdx
jle 0x14016a59c
mov qword [rsp + 0x80], 0x33
imul rdx, rdx, 2
jo 0x14016ae79
cmp rax, rdx
cmovge rdx, rax
test rdx, rdx
js 0x140169d29
mov rcx, rsi
call fcn.14011bb60
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x80], 0x36
add rcx, 0xfffffffffffffffd
jo 0x14016ae79
cmp rcx, 0xff
ja 0x14016abdf
mov rax, qword [0x1401e1550]
mov qword [rsp + 0x80], 0x37
movzx r12d, byte [rax + rcx]
mov rcx, qword [rsp + 0x38]
add rcx, 0xffffffffffffffff
jo 0x14016ae79
movzx ecx, cx
call fcn.140165d00
cmp byte [r14], 0
mov edx, eax
jne 0x14016abd4
lea eax, [r12 + 0x101]
mov qword [rsp + 0x80], 0x38
cmp ax, 0x11d
ja 0x14016abbc
mov rcx, qword [rsp + 0x158]
and eax, 0x3ff
mov qword [rsp + 0x80], 0x39
add dword [rcx + rax*4], 1
cmp dx, 0x1d
ja 0x14016aba4
mov rcx, qword [rsp + 0x158]
movzx eax, dx
mov qword [rsp + 0x80], 0x3d
add dword [rcx + rax*4 + 0x478], 1
mov rcx, qword [rdi]
test rcx, rcx
js 0x14016ab6f
cmp rcx, qword [rsi]
jge 0x14016ab6f
mov eax, r12d
mov r9, qword [rsi + 8]
shl eax, 8
or eax, edx
or ax, 0x8000
mov word [r9 + rcx*2 + 8], ax
mov rcx, qword [rdi]
mov qword [rsp + 0x80], 0x3e
add rcx, 1
jo 0x14016ae79
mov rax, qword [rsi]
test rcx, rcx
js 0x14016ab67
cmp rcx, rax
jge 0x14016ab67
mov rax, qword [rsi + 8]
movzx edx, word [rsp + 0x38]
mov word [rax + rcx*2 + 8], dx
mov rcx, qword [rdi]
mov qword [rsp + 0x80], 0x3f
add rcx, 2
jo 0x14016ae79
mov rax, qword [rsi]
test rcx, rcx
js 0x14016ab67
cmp rcx, rax
jge 0x14016ab67
mov rax, qword [rsi + 8]
movzx edx, word [rsp + 0x40]
mov word [rax + rcx*2 + 8], dx
mov rax, qword [rdi]
mov qword [rsp + 0x80], 0x72
add rax, 3
jo 0x14016ae79
mov qword [rdi], rax
mov rax, rbx
mov r12, rbx
mov qword [rsp + 0x80], 0x74
add rax, 0xffffffffffffffff
mov qword [rsp + 0x38], rax
jo 0x14016ae79
cmp qword [rsp + 0x28], rbx
jle 0x14016aa02
lea rax, str.read64
mov rdx, qword [r15]
mov qword [rsp + 0x80], 0x79
mov qword [rsp + 0xd8], rax
lea rax, str._home_admin_.nimble_pkgs2_zippy_0.10.11_12e761e18ccc0a1b0e931c74dd02bb4b74544d56_zippy_internal.nim
mov qword [rsp + 0xe8], rax
xor eax, eax
mov qword [rsp + 0xe0], rax
mov word [rsp + 0xf0], 0
test rdx, rdx
je 0x14016a9e6
movzx eax, word [rdx + 0x22]
mov qword [rsp + 0xd0], rdx
mov qword [r15], r13
add eax, 1
mov word [rsp + 0xf2], ax
cmp ax, 0x7d0
jne 0x14016a7bd
call fcn.14010df50
mov rax, qword [rsp + 0x160]
mov rdx, qword [rsp + 0x38]
mov qword [rsp + 0xe0], 0xd2
mov r10, qword [rax + rdx]
mov rax, qword [r15]
mov rdx, qword [rax]
mov qword [r15], rdx
cmp byte [r14], 0
jne 0x14016ac2c
mov r8, r10
imul edx, r10d, 0x1e35a7bd
mov r11d, dword [rsp + 0x30]
mov qword [rsp + 0x80], 0x7d
shr r8, 8
imul eax, r8d, 0x1e35a7bd
mov ecx, r11d
shr edx, cl
shr eax, cl
cmp edx, 0x3fff
ja 0x14016a9cf
mov rcx, rbx
sub rcx, qword [rsp + 0x170]
jo 0x14016ae79
mov r9, rcx
add r9, 0xffffffffffffffff
jo 0x14016ae79
mov r11, qword [rsp + 0x180]
mov qword [rsp + 0x80], 0x7e
mov word [r11 + rdx*2], r9w
cmp eax, 0x3fff
ja 0x14016a9b8
add rax, rax
add rax, qword [rsp + 0x180]
movzx edx, word [rax]
add rdx, qword [rsp + 0x170]
mov qword [rsp + 0x38], rdx
jo 0x14016ae79
lea r11, str.read32
mov qword [rsp + 0x80], 0x7f
mov qword [rsp + 0xd8], r11
lea r11, str._home_admin_.nimble_pkgs2_zippy_0.10.11_12e761e18ccc0a1b0e931c74dd02bb4b74544d56_zippy_internal.nim
mov qword [rsp + 0xe8], r11
xor r11d, r11d
mov qword [rsp + 0xe0], r11
mov r11, qword [r15]
mov word [rsp + 0xf0], 0
test r11, r11
je 0x14016a99b
movzx r9d, word [r11 + 0x22]
mov qword [rsp + 0xd0], r11
mov qword [r15], r13
add r9d, 1
mov word [rsp + 0xf2], r9w
cmp r9w, 0x7d0
jne 0x14016a930
mov qword [rsp + 0x68], r10
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x48], r8
mov qword [rsp + 0x40], rax
call fcn.14010df50
mov r10, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x48]
mov rax, qword [rsp + 0x40]
mov r11, qword [rsp + 0x160]
mov qword [rsp + 0xe0], 0xcf
mov r9d, dword [r11 + rdx]
mov rdx, qword [r15]
mov rdx, qword [rdx]
mov qword [r15], rdx
cmp byte [r14], 0
jne 0x14016ac2c
mov word [rax], cx
cmp r8d, r9d
je 0x14016a255
mov r11, r14
mov r14, r15
mov r15, rbx
mov rbx, r10
shr rbx, 0x10
movzx ecx, byte [rsp + 0x30]
mov r9, r13
mov rsi, r15
imul ebx, ebx, 0x1e35a7bd
mov r8, qword [rsp + 0x160]
lea r12, [r15 + 1]
shr ebx, cl
jmp 0x14016989a
xor r9d, r9d
mov qword [r15], r13
mov word [rsp + 0xf2], 0
mov qword [rsp + 0xd0], r9
jmp 0x14016a930
mov ecx, eax
mov edx, 0x3fff
mov r14, r15
call fcn.140117b20
mov rdi, qword [r15]
jmp 0x140169b44
mov ecx, edx
mov edx, 0x3fff
mov r14, r15
call fcn.140117b20
mov rdi, qword [r15]
jmp 0x140169b44
xor eax, eax
mov qword [r15], r13
mov word [rsp + 0xf2], 0
mov qword [rsp + 0xd0], rax
jmp 0x14016a7bd
mov r10, qword [rsp + 0x50]
mov r12, qword [rsp + 0x160]
mov r14, r15
mov rdi, rbx
cmp r10, rbx
jle 0x14016ab53
mov rdx, r10
mov qword [rsp + 0x88], rbp
mov qword [rsp + 0x80], 0x44
sub rdx, rbx
seto al
mov rbx, rdx
movzx eax, al
test rax, rax
jne 0x140169d6a
mov r8, qword [rsp + 0x158]
jmp 0x14016aa6e
mov rcx, rdi
add rcx, rax
jo 0x14016ab8b
movzx ecx, byte [r12 + rcx]
add rax, 1
add dword [r8 + rcx*4], 1
cmp rax, rdx
jl 0x14016aa54
mov rax, qword [rsp + 0x158]
add rdx, qword [rax + 0x4f0]
jo 0x140169d6a
mov qword [rax + 0x4f0], rdx
mov rsi, qword [rsp + 0x150]
mov rdi, qword [rsp + 0x168]
jmp 0x14016ab4a
mov rcx, qword [rdi]
mov rax, qword [rsi]
mov qword [rsp + 0x80], 0x29
mov rdx, rcx
add rdx, 1
jo 0x140169d6a
cmp rdx, rax
jle 0x14016aaf8
mov qword [rsp + 0x80], 0x2a
imul rax, rax, 2
jo 0x140169d6a
mov edx, 2
mov rcx, rsi
cmp rax, rdx
cmovge rdx, rax
call fcn.14011bb60
mov rcx, qword [rdi]
mov rax, qword [rsi]
mov edx, 0x7fff
mov qword [rsp + 0x80], 0x2d
cmp rbx, rdx
cmovle rdx, rbx
test rcx, rcx
js 0x140169d18
cmp rcx, rax
jge 0x140169d18
mov rax, qword [rsi + 8]
mov word [rax + rcx*2 + 8], dx
mov rax, qword [rdi]
mov qword [rsp + 0x80], 0x2e
add rax, 1
jo 0x140169d6a
mov qword [rdi], rax
sub rbx, rdx
test rbx, rbx
jg 0x14016aaa4
mov qword [rsp + 0x80], 0x78
mov rdi, qword [r14]
jmp 0x140169b44
mov r14, r15
jmp 0x140169d18
mov rax, qword [rsp + 0x150]
mov r14, r15
mov rdx, qword [rax]
sub rdx, 1
call fcn.140117b20
jmp 0x140169d41
mov qword [rsp + 0x80], 0x23
call fcn.1401145f0
mov rdi, qword [r14]
jmp 0x140169b44
movzx ecx, dx
mov edx, 0x1d
mov r14, r15
call fcn.140117b20
mov rdi, qword [r15]
jmp 0x140169b44
movzx ecx, ax
mov edx, 0x11d
mov r14, r15
call fcn.140117b20
mov rdi, qword [r15]
jmp 0x140169b44
mov rdi, qword [r15]
mov r14, r15
jmp 0x140169b44
mov edx, 0xff
mov r14, r15
call fcn.140117b20
mov rdi, qword [r15]
jmp 0x140169b44
mov qword [rsp + 0x80], 0x71
mov r14, r15
call fcn.1401145f0
mov rdi, qword [r15]
jmp 0x140169b44
mov qword [rsp + 0x80], 0x70
mov r14, r15
call fcn.1401145f0
mov rdi, qword [r15]
jmp 0x140169b44
mov r14, r15
mov rdi, rdx
jmp 0x140169b44
mov rdx, rbx
mov r13, rsi
mov rbx, r14
mov rsi, qword [rsp + 0x150]
mov r14, rdx
jmp 0x14016a50d
xor eax, eax
mov qword [r15], rsi
mov word [rsp + 0xf2], 0
mov qword [rsp + 0xd0], rax
jmp 0x14016a3d1
mov rax, rbx
mov r13, rsi
mov rbx, r14
mov qword [rsp + 0xb0], 0x108
mov r14, rax
mov rsi, qword [rsp + 0x150]
call fcn.1401145f0
mov rax, qword [r15]
jmp 0x14016a50d
mov word [rsp + 0xf0], 0
mov rax, rbx
mov rbx, r14
mov r13, rsi
mov r14, rax
lea rax, str.countTrailingZeroBits
mov qword [rsp + 0xb0], 0x105
mov rsi, qword [rsp + 0x150]
mov qword [rsp + 0xd8], rax
lea rax, str._usr_lib_nim_pure_bitops.nim
mov qword [rsp + 0xe8], rax
xor eax, eax
mov qword [rsp + 0xe0], rax
test r9, r9
je 0x14016ad80
movzx eax, word [r9 + 0x22]
mov qword [rsp + 0xd0], r9
mov qword [r15], r13
add eax, 1
mov word [rsp + 0xf2], ax
cmp ax, 0x7d0
jne 0x14016ad24
mov qword [rsp + 0x40], rcx
call fcn.14010df50
mov rcx, qword [rsp + 0x40]
mov rax, qword [r15]
mov rdx, qword [rsp + 0x48]
mov qword [rsp + 0xe0], 0x28f
mov rax, qword [rax]
xor rdx, rcx
tzcnt rdx, rdx
mov qword [r15], rax
cmp byte [r14], 0
movsxd rdx, edx
jne 0x14016a50d
mov qword [rsp + 0xb0], 0x106
sar rdx, 3
add rdx, rbx
jo 0x14016ae1b
mov qword [rsp + 0xb0], 0x107
mov rbx, rdx
jmp 0x14016a50d
xor eax, eax
mov qword [r15], r13
mov word [rsp + 0xf2], 0
mov qword [rsp + 0xd0], rax
jmp 0x14016ad24
mov rax, rbx
mov rdx, r13
mov rbx, r14
mov r13, rsi
mov r14, rax
mov rsi, qword [rsp + 0x150]
xor eax, eax
mov qword [rsp + 0xb0], 0x10a
mov rcx, qword [rsp + 0x160]
jmp 0x14016adf0
mov rax, qword [rsp + 0x58]
add rax, rbx
jo 0x14016ae0f
movzx eax, byte [rcx + rax]
cmp byte [rcx + rdx], al
jne 0x14016ae41
mov r8, rbx
add rdx, 1
mov eax, 1
add r8, 1
jo 0x14016ae28
mov rbx, r8
cmp qword [rsp + 0x40], rdx
jg 0x14016adc8
test al, al
je 0x14016ae4d
mov qword [rsp + 0xb0], 0x10e
mov rax, qword [r15]
jmp 0x14016a50d
mov qword [rsp + 0xb0], 0x10b
call fcn.1401145f0
mov rax, qword [r15]
jmp 0x14016a50d
mov qword [rsp + 0xb0], 0x10e
call fcn.1401145f0
mov rax, qword [r15]
jmp 0x14016a50d
mov qword [rsp + 0xb0], 0x10c
mov rax, qword [r15]
jmp 0x14016a50d
mov word [rsp + 0xc2], 0
xor eax, eax
mov qword [rsp + 0xa0], rax
lea rax, [rsp + 0xa0]
mov qword [r15], rax
jmp 0x14016a320
call fcn.1401145f0
mov r14, r15
mov rdi, qword [r15]
jmp 0x140169b44
mov qword [rsp + 0x80], 0x6e
mov r14, r15
call fcn.1401145f0
mov rdi, qword [r15]
jmp 0x140169b44
mov r11, rdi
mov r8, r13
mov r9, r15
jmp 0x14016a234