Function at 0x1400050c0
Capabilities:
Enumerate pe sections

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x98
mov qword [rsp + 0x60], rcx
lea rdi, [rdx + 0x43]
movzx r10d, byte [rdx + 1]
movzx edx, byte [rdx + 2]
mov eax, r9d
and eax, 7
cmp rax, 5
ja case.default.0x1400050ff
lea rcx, [0x140e5e308]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
test r9, r9
je 0x14000511c
movzx eax, byte [r8 + r9 - 1]
cmp rax, 0x3d
je 0x14000511c
cmp byte [rdi + rax], 0xff
je 0x1400059d3
mov rax, qword [rsp + 0x60]
mov byte [rax], 1
jmp 0x140005b72
mov byte [rsp + 0x5e], dl
mov byte [rsp + 0x5f], r10b
mov eax, 0xa
jmp 0x140005172
mov byte [rsp + 0x5e], dl
mov byte [rsp + 0x5f], r10b
mov eax, 8
jmp 0x140005172
mov byte [rsp + 0x5e], dl
mov byte [rsp + 0x5f], r10b
mov eax, 0xc
jmp 0x140005172
mov byte [rsp + 0x5e], dl
mov byte [rsp + 0x5f], r10b
jmp 0x140005172
mov byte [rsp + 0x5e], dl
mov byte [rsp + 0x5f], r10b
mov eax, 0xb
mov rbp, qword [rsp + 0x110]
mov rdx, qword [rsp + 0x108]
xor r10d, r10d
mov r12, r9
sub r12, rax
cmovb r12, r10
cmp r12, 0x20
mov qword [rsp + 0x78], r9
jae 0x14000530e
xor eax, eax
cmp r12, 8
jb 0x140005781
add r12, 0xfffffffffffffff8
cmp r10, r12
jae 0x140005781
mov qword [rsp + 0x68], r12
lea r11, [r10 + 8]
cmp r11, r9
ja 0x140005cc2
lea rsi, [rax + 8]
cmp rax, 0xfffffffffffffff7
ja 0x140005cb0
cmp rsi, rdx
ja 0x140005ca1
movzx esi, byte [r8 + r10]
movzx ebx, byte [rdi + rsi]
cmp rbx, 0xff
je 0x140005afb
movzx esi, byte [r8 + r10 + 1]
movzx edx, byte [rdi + rsi]
cmp rdx, 0xff
je 0x140005a9e
movzx esi, byte [r8 + r10 + 2]
movzx ecx, byte [rdi + rsi]
cmp rcx, 0xff
je 0x140005aad
movzx esi, byte [r8 + r10 + 3]
movzx r14d, byte [rdi + rsi]
cmp r14, 0xff
je 0x140005abd
movzx esi, byte [r8 + r10 + 4]
movzx r15d, byte [rdi + rsi]
cmp r15, 0xff
je 0x140005acd
movzx esi, byte [r8 + r10 + 5]
movzx r13d, byte [rdi + rsi]
cmp r13, 0xff
je 0x140005add
mov r12, rbp
movzx esi, byte [r8 + r10 + 6]
movzx ebp, byte [rdi + rsi]
cmp rbp, 0xff
je 0x140005aea
movzx esi, byte [r8 + r10 + 7]
movzx r9d, byte [rdi + rsi]
cmp r9, 0xff
je 0x140005af7
shl rbx, 0x3a
shl rdx, 0x34
or rdx, rbx
shl rcx, 0x2e
shl r14, 0x28
or r14, rcx
or r14, rdx
shl r15, 0x22
shl r13, 0x1c
or r13, r15
shl ebp, 0x16
or rbp, r13
or rbp, r14
shl r9d, 0x10
or r9, rbp
bswap r9
mov rcx, qword [rsp + 0x100]
mov qword [rcx + rax], r9
add rax, 6
mov rbp, r12
dec rbp
mov r10, r11
mov r12, qword [rsp + 0x68]
cmp r11, r12
mov r9, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x108]
jb 0x1400051bc
jmp 0x140005784
lea rax, [r12 - 0x20]
mov qword [rsp + 0x70], rax
xor eax, eax
xor esi, esi
lea r10, [rsi + 0x20]
cmp r10, r9
ja 0x140005bf5
cmp rax, 0xffffffffffffffe5
ja 0x140005bdd
lea r11, [rax + 0x1a]
cmp r11, rdx
ja 0x140005bce
movzx r11d, byte [r8 + rsi]
movzx ebx, byte [rdi + r11]
cmp rbx, 0xff
je 0x140005a4d
movzx r11d, byte [r8 + rsi + 1]
movzx edx, byte [rdi + r11]
cmp rdx, 0xff
je 0x1400059ef
movzx r11d, byte [r8 + rsi + 2]
movzx ecx, byte [rdi + r11]
cmp rcx, 0xff
je 0x1400059fa
movzx r11d, byte [r8 + rsi + 3]
movzx r14d, byte [rdi + r11]
cmp r14, 0xff
je 0x140005a06
movzx r11d, byte [r8 + rsi + 4]
movzx r15d, byte [rdi + r11]
cmp r15, 0xff
je 0x140005a12
mov qword [rsp + 0x68], rbp
movzx r11d, byte [r8 + rsi + 5]
movzx ebp, byte [rdi + r11]
cmp rbp, 0xff
je 0x140005a1e
movzx r11d, byte [r8 + rsi + 6]
movzx r13d, byte [rdi + r11]
cmp r13, 0xff
je 0x140005a2a
movzx r11d, byte [r8 + rsi + 7]
movzx r9d, byte [rdi + r11]
cmp r9, 0xff
je 0x140005a49
shl rbx, 0x3a
shl rdx, 0x34
or rdx, rbx
shl rcx, 0x2e
shl r14, 0x28
or r14, rcx
or r14, rdx
shl r15, 0x22
shl rbp, 0x1c
or rbp, r15
shl r13d, 0x16
or r13, rbp
or r13, r14
shl r9d, 0x10
or r9, r13
bswap r9
mov rcx, qword [rsp + 0x100]
mov qword [rcx + rax], r9
movzx r11d, byte [r8 + rsi + 8]
movzx ebx, byte [rdi + r11]
cmp rbx, 0xff
je 0x140005a62
movzx r11d, byte [r8 + rsi + 9]
movzx ecx, byte [rdi + r11]
cmp rcx, 0xff
je 0x140005a6c
movzx r11d, byte [r8 + rsi + 0xa]
movzx r14d, byte [rdi + r11]
cmp r14, 0xff
je 0x140005a76
movzx r11d, byte [r8 + rsi + 0xb]
movzx edx, byte [rdi + r11]
cmp rdx, 0xff
je 0x140005a80
movzx r11d, byte [r8 + rsi + 0xc]
movzx r9d, byte [rdi + r11]
cmp r9, 0xff
je 0x140005a8a
movzx r11d, byte [r8 + rsi + 0xd]
movzx r13d, byte [rdi + r11]
cmp r13, 0xff
je 0x140005a94
movzx r11d, byte [r8 + rsi + 0xe]
movzx r15d, byte [rdi + r11]
cmp r15, 0xff
je 0x140005aa3
movzx r11d, byte [r8 + rsi + 0xf]
movzx ebp, byte [rdi + r11]
cmp rbp, 0xff
je 0x140005ab3
shl rbx, 0x3a
shl rcx, 0x34
or rcx, rbx
shl r14, 0x2e
shl rdx, 0x28
or rdx, r14
or rdx, rcx
shl r9, 0x22
shl r13, 0x1c
or r13, r9
shl r15d, 0x16
or r15, r13
or r15, rdx
shl ebp, 0x10
or rbp, r15
bswap rbp
mov rcx, qword [rsp + 0x100]
mov qword [rcx + rax + 6], rbp
movzx r11d, byte [r8 + rsi + 0x10]
movzx ebx, byte [rdi + r11]
cmp rbx, 0xff
je 0x140005ac3
movzx r11d, byte [r8 + rsi + 0x11]
movzx ecx, byte [rdi + r11]
cmp rcx, 0xff
je 0x140005ad3
movzx r11d, byte [r8 + rsi + 0x12]
movzx r14d, byte [rdi + r11]
cmp r14, 0xff
je 0x140005ae3
movzx r11d, byte [r8 + rsi + 0x13]
movzx edx, byte [rdi + r11]
cmp rdx, 0xff
je 0x140005af0
movzx r11d, byte [r8 + rsi + 0x14]
movzx r9d, byte [rdi + r11]
cmp r9, 0xff
je 0x140005b0d
movzx r11d, byte [r8 + rsi + 0x15]
movzx r13d, byte [rdi + r11]
cmp r13, 0xff
je 0x140005b14
movzx r11d, byte [r8 + rsi + 0x16]
movzx r15d, byte [rdi + r11]
cmp r15, 0xff
je 0x140005b1b
movzx r11d, byte [r8 + rsi + 0x17]
movzx ebp, byte [rdi + r11]
cmp rbp, 0xff
je 0x140005b22
shl rbx, 0x3a
shl rcx, 0x34
or rcx, rbx
shl r14, 0x2e
shl rdx, 0x28
or rdx, r14
or rdx, rcx
shl r9, 0x22
shl r13, 0x1c
or r13, r9
shl r15d, 0x16
or r15, r13
or r15, rdx
shl ebp, 0x10
or rbp, r15
bswap rbp
mov rcx, qword [rsp + 0x100]
mov qword [rcx + rax + 0xc], rbp
movzx r11d, byte [r8 + rsi + 0x18]
movzx ebx, byte [rdi + r11]
cmp rbx, 0xff
je 0x140005b29
movzx r11d, byte [r8 + rsi + 0x19]
movzx ecx, byte [rdi + r11]
cmp rcx, 0xff
je 0x140005b30
movzx r11d, byte [r8 + rsi + 0x1a]
movzx r14d, byte [rdi + r11]
cmp r14, 0xff
je 0x140005b37
movzx r11d, byte [r8 + rsi + 0x1b]
movzx edx, byte [rdi + r11]
cmp rdx, 0xff
je 0x140005b3e
movzx r11d, byte [r8 + rsi + 0x1c]
movzx r9d, byte [rdi + r11]
cmp r9, 0xff
je 0x140005b45
movzx r11d, byte [r8 + rsi + 0x1d]
movzx r13d, byte [rdi + r11]
cmp r13, 0xff
je 0x140005b4c
movzx r11d, byte [r8 + rsi + 0x1e]
movzx r15d, byte [rdi + r11]
cmp r15, 0xff
je 0x140005b53
movzx r11d, byte [r8 + rsi + 0x1f]
movzx ebp, byte [rdi + r11]
cmp rbp, 0xff
je 0x140005b5a
shl rbx, 0x3a
shl rcx, 0x34
or rcx, rbx
shl r14, 0x2e
shl rdx, 0x28
or rdx, r14
or rdx, rcx
shl r9, 0x22
shl r13, 0x1c
or r13, r9
shl r15d, 0x16
or r15, r13
or r15, rdx
shl ebp, 0x10
or rbp, r15
bswap rbp
mov rcx, qword [rsp + 0x100]
mov qword [rcx + rax + 0x12], rbp
add rax, 0x18
mov rbp, qword [rsp + 0x68]
add rbp, 0xfffffffffffffffc
mov rsi, r10
cmp r10, qword [rsp + 0x70]
mov r9, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x108]
jbe 0x14000531c
jmp 0x1400051a0
mov r11, r10
cmp rbp, 2
jb 0x140005984
dec rbp
lea rcx, [r9 - 7]
mov qword [rsp + 0x80], rcx
mov r12, r11
neg r12
lea rcx, [r9 - 5]
mov qword [rsp + 0x88], rcx
lea rcx, [r9 - 3]
mov qword [rsp + 0x90], rcx
lea rcx, [r9 - 1]
mov qword [rsp + 0x70], rcx
cmp r11, r9
ja 0x140005baa
lea r10, [rax + 6]
cmp rax, 0xfffffffffffffff9
ja 0x140005bbc
cmp r10, rdx
ja 0x140005b8b
cmp r9, r11
je 0x140005b9a
movzx r14d, byte [r8 + r11]
movzx edx, byte [rdi + r14]
cmp rdx, 0xff
je 0x140005a34
cmp qword [rsp + 0x70], r11
je 0x140005c07
movzx r14d, byte [r8 + r11 + 1]
movzx esi, byte [rdi + r14]
cmp rsi, 0xff
je 0x1400059ea
lea r15, [r9 + r12]
cmp r15, 2
jbe 0x140005c1d
movzx r14d, byte [r8 + r11 + 2]
movzx r13d, byte [rdi + r14]
cmp r13, 0xff
je 0x1400059f4
mov qword [rsp + 0x68], r10
cmp qword [rsp + 0x90], r11
je 0x140005c33
movzx r14d, byte [r8 + r11 + 3]
movzx ebx, byte [rdi + r14]
cmp rbx, 0xff
je 0x140005a00
cmp r15, 4
jbe 0x140005c49
mov r10, rbp
movzx r14d, byte [r8 + r11 + 4]
movzx ebp, byte [rdi + r14]
cmp rbp, 0xff
je 0x140005a0c
cmp qword [rsp + 0x88], r11
je 0x140005c5f
movzx r14d, byte [r8 + r11 + 5]
movzx ecx, byte [rdi + r14]
cmp rcx, 0xff
je 0x140005a18
cmp r15, 6
jbe 0x140005c75
movzx r14d, byte [r8 + r11 + 6]
movzx r15d, byte [rdi + r14]
cmp r15, 0xff
je 0x140005a24
cmp qword [rsp + 0x80], r11
je 0x140005c8b
movzx r14d, byte [r8 + r11 + 7]
movzx r9d, byte [rdi + r14]
cmp r9, 0xff
je 0x140005a30
shl rdx, 0x3a
shl rsi, 0x34
or rsi, rdx
shl r13, 0x2e
or r13, rsi
shl rbx, 0x28
or rbx, r13
shl rbp, 0x22
or rbp, rbx
shl rcx, 0x1c
or rcx, rbp
shl r15d, 0x16
or r15, rcx
shl r9d, 0x10
or r9, r15
bswap r9
mov rcx, qword [rsp + 0x100]
mov dword [rcx + rax], r9d
shr r9, 0x20
mov word [rcx + rax + 4], r9w
add r11, 8
add r12, 0xfffffffffffffff8
mov rsi, qword [rsp + 0x68]
mov rax, rsi
mov rbp, r10
dec rbp
mov r9, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x108]
jne 0x1400057c4
jmp 0x140005987
mov rsi, rax
movzx eax, byte [rsp + 0x5e]
mov byte [rsp + 0x48], al
movzx eax, byte [rsp + 0x5f]
mov byte [rsp + 0x40], al
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rdx
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x20], rax
mov rsi, qword [rsp + 0x60]
mov rcx, rsi
mov rdx, r8
mov r8, r9
mov r9, r11
call sym.base64::engine::general_purpose::decode_suffix::decode_suffix::h5be4d44ba51994b2
mov rax, rsi
jmp 0x140005b77
dec r9
mov rcx, qword [rsp + 0x60]
mov byte [rcx], 0
mov byte [rcx + 1], al
mov qword [rcx + 8], r9
jmp 0x140005b72
inc r11
jmp 0x140005a34
inc rsi
jmp 0x140005a4d
add r11, 2
jmp 0x140005a34
add rsi, 2
jmp 0x140005a4d
add r11, 3
jmp 0x140005a34
add rsi, 3
jmp 0x140005a4d
add r11, 4
jmp 0x140005a34
add rsi, 4
jmp 0x140005a4d
add r11, 5
jmp 0x140005a34
add rsi, 5
jmp 0x140005a4d
add r11, 6
jmp 0x140005a34
add rsi, 6
jmp 0x140005a4d
add r11, 7
mov rax, qword [rsp + 0x60]
mov byte [rax], 0
mov byte [rax + 1], r14b
mov qword [rax + 8], r11
jmp 0x140005b72
add rsi, 7
mov rax, qword [rsp + 0x60]
mov byte [rax], 0
mov byte [rax + 1], r11b
mov qword [rax + 8], rsi
jmp 0x140005b72
mov eax, 8
jmp 0x140005b5f
mov eax, 9
jmp 0x140005b5f
mov eax, 0xa
jmp 0x140005b5f
mov eax, 0xb
jmp 0x140005b5f
mov eax, 0xc
jmp 0x140005b5f
mov eax, 0xd
jmp 0x140005b5f
inc r10
jmp 0x140005afb
mov eax, 0xe
jmp 0x140005b5f
add r10, 2
jmp 0x140005afb
mov eax, 0xf
jmp 0x140005b5f
add r10, 3
jmp 0x140005afb
mov eax, 0x10
jmp 0x140005b5f
add r10, 4
jmp 0x140005afb
mov eax, 0x11
jmp 0x140005b5f
add r10, 5
jmp 0x140005afb
mov eax, 0x12
jmp 0x140005b5f
add r10, 6
jmp 0x140005afb
mov eax, 0x13
jmp 0x140005b5f
add r10, 7
mov rax, qword [rsp + 0x60]
mov byte [rax], 0
mov byte [rax + 1], sil
mov qword [rax + 8], r10
jmp 0x140005b72
mov eax, 0x14
jmp 0x140005b5f
mov eax, 0x15
jmp 0x140005b5f
mov eax, 0x16
jmp 0x140005b5f
mov eax, 0x17
jmp 0x140005b5f
mov eax, 0x18
jmp 0x140005b5f
mov eax, 0x19
jmp 0x140005b5f
mov eax, 0x1a
jmp 0x140005b5f
mov eax, 0x1b
jmp 0x140005b5f
mov eax, 0x1c
jmp 0x140005b5f
mov eax, 0x1d
jmp 0x140005b5f
mov eax, 0x1e
jmp 0x140005b5f
mov eax, 0x1f
add rax, rsi
mov rcx, qword [rsp + 0x60]
mov byte [rcx], 0
mov byte [rcx + 1], r11b
mov qword [rcx + 8], rax
mov rax, qword [rsp + 0x60]
add rsp, 0x98
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r8, [0x140e5e400]
mov rcx, r10
call sym.core::slice::index::slice_end_index_len_fail::h7e191f7c4936449e
lea r8, [0x140e5e430]
xor ecx, ecx
xor edx, edx
call sym.core::panicking::panic_bounds_check::h050a8a4b45d1b13d
lea r8, [0x140e5e418]
mov rcx, r11
mov rdx, r9
call sym.core::slice::index::slice_start_index_len_fail::h733f111d48d4a008
lea r8, [0x140e5e400]
mov rcx, rax
mov rdx, r10
call sym.core::slice::index::slice_index_order_fail::h7c1404c7a5fbabfb
lea r8, [0x140e5e3b8]
mov rcx, r11
call sym.core::slice::index::slice_end_index_len_fail::h7e191f7c4936449e
lea r8, [0x140e5e3b8]
mov edx, 0xa
mov rcx, 0xfffffffffffffff0
call sym.core::slice::index::slice_index_order_fail::h7c1404c7a5fbabfb
lea r8, [0x140e5e3a0]
mov rcx, r10
mov rdx, r9
call sym.core::slice::index::slice_end_index_len_fail::h7e191f7c4936449e
lea r8, [0x140e5e448]
mov ecx, 1
mov edx, 1
call sym.core::panicking::panic_bounds_check::h050a8a4b45d1b13d
lea r8, [0x140e5e460]
mov ecx, 2
mov edx, 2
call sym.core::panicking::panic_bounds_check::h050a8a4b45d1b13d
lea r8, [0x140e5e478]
mov ecx, 3
mov edx, 3
call sym.core::panicking::panic_bounds_check::h050a8a4b45d1b13d
lea r8, [0x140e5e490]
mov ecx, 4
mov edx, 4
call sym.core::panicking::panic_bounds_check::h050a8a4b45d1b13d
lea r8, [0x140e5e4a8]
mov ecx, 5
mov edx, 5
call sym.core::panicking::panic_bounds_check::h050a8a4b45d1b13d
lea r8, [0x140e5e4c0]
mov ecx, 6
mov edx, 6
call sym.core::panicking::panic_bounds_check::h050a8a4b45d1b13d
lea r8, [0x140e5e4d8]
mov ecx, 7
mov edx, 7
call sym.core::panicking::panic_bounds_check::h050a8a4b45d1b13d
lea r8, [0x140e5e3e8]
mov rcx, rsi
call sym.core::slice::index::slice_end_index_len_fail::h7e191f7c4936449e
lea r8, [0x140e5e3e8]
mov rcx, rax
mov rdx, rsi
call sym.core::slice::index::slice_index_order_fail::h7c1404c7a5fbabfb
lea r8, [0x140e5e3d0]
mov rcx, r11
mov rdx, r9
call sym.core::slice::index::slice_end_index_len_fail::h7e191f7c4936449e
int3