Function at 0x140004550
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.0x14000458f
lea rcx, [0x14001ff90]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
test r9, r9
je 0x1400045ac
movzx eax, byte [r8 + r9 - 1]
cmp rax, 0x3d
je 0x1400045ac
cmp byte [rdi + rax], 0xff
je 0x140004e63
mov rax, qword [rsp + 0x60]
mov byte [rax + 8], 1
jmp 0x140004f9f
mov byte [rsp + 0x5e], dl
mov byte [rsp + 0x5f], r10b
mov eax, 0xa
jmp 0x140004603
mov byte [rsp + 0x5e], dl
mov byte [rsp + 0x5f], r10b
mov eax, 8
jmp 0x140004603
mov byte [rsp + 0x5e], dl
mov byte [rsp + 0x5f], r10b
mov eax, 0xc
jmp 0x140004603
mov byte [rsp + 0x5e], dl
mov byte [rsp + 0x5f], r10b
jmp 0x140004603
mov byte [rsp + 0x5e], dl
mov byte [rsp + 0x5f], r10b
mov eax, 0xb
mov r15, 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 0x14000479f
xor eax, eax
cmp r12, 8
jb 0x140004c12
add r12, 0xfffffffffffffff8
cmp r10, r12
jae 0x140004c12
mov qword [rsp + 0x68], r12
lea r11, [r10 + 8]
cmp r11, r9
ja 0x140005165
lea rsi, [rax + 8]
cmp rax, 0xfffffffffffffff7
ja 0x140005153
cmp rsi, rdx
ja 0x140005144
movzx esi, byte [r8 + r10]
movzx ebx, byte [rdi + rsi]
cmp rbx, 0xff
je 0x140004f8e
movzx esi, byte [r8 + r10 + 1]
movzx edx, byte [rdi + rsi]
cmp rdx, 0xff
je 0x140004f31
movzx esi, byte [r8 + r10 + 2]
movzx r13d, byte [rdi + rsi]
cmp r13, 0xff
je 0x140004f40
movzx esi, byte [r8 + r10 + 3]
movzx r14d, byte [rdi + rsi]
cmp r14, 0xff
je 0x140004f50
movzx esi, byte [r8 + r10 + 4]
movzx ecx, byte [rdi + rsi]
cmp rcx, 0xff
je 0x140004f60
mov r12, r15
movzx esi, byte [r8 + r10 + 5]
movzx r15d, byte [rdi + rsi]
cmp r15, 0xff
je 0x140004f70
movzx esi, byte [r8 + r10 + 6]
movzx ebp, byte [rdi + rsi]
cmp rbp, 0xff
je 0x140004f7d
movzx esi, byte [r8 + r10 + 7]
movzx r9d, byte [rdi + rsi]
cmp r9, 0xff
je 0x140004f8a
shl rbx, 0x3a
shl rdx, 0x34
or rdx, rbx
shl r13, 0x2e
shl r14, 0x28
or r14, r13
or r14, rdx
shl rcx, 0x22
shl r15, 0x1c
or r15, rcx
shl ebp, 0x16
or rbp, r15
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 r15, r12
dec r15
mov r10, r11
mov r12, qword [rsp + 0x68]
cmp r11, r12
mov r9, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x108]
jb 0x14000464d
jmp 0x140004c15
lea rax, [r12 - 0x20]
mov qword [rsp + 0x70], rax
xor eax, eax
xor esi, esi
lea r10, [rsi + 0x20]
cmp r10, r9
ja 0x140005098
cmp rax, 0xffffffffffffffe5
ja 0x140005080
lea r11, [rax + 0x1a]
cmp r11, rdx
ja 0x140005071
movzx r11d, byte [r8 + rsi]
movzx ebx, byte [rdi + r11]
cmp rbx, 0xff
je 0x140004edf
movzx r11d, byte [r8 + rsi + 1]
movzx edx, byte [rdi + r11]
cmp rdx, 0xff
je 0x140004e80
movzx r11d, byte [r8 + rsi + 2]
movzx ebp, byte [rdi + r11]
cmp rbp, 0xff
je 0x140004e8b
movzx r11d, byte [r8 + rsi + 3]
movzx r14d, byte [rdi + r11]
cmp r14, 0xff
je 0x140004e97
movzx r11d, byte [r8 + rsi + 4]
movzx ecx, byte [rdi + r11]
cmp rcx, 0xff
je 0x140004ea3
mov qword [rsp + 0x68], r15
movzx r11d, byte [r8 + rsi + 5]
movzx r15d, byte [rdi + r11]
cmp r15, 0xff
je 0x140004eaf
movzx r11d, byte [r8 + rsi + 6]
movzx r13d, byte [rdi + r11]
cmp r13, 0xff
je 0x140004ebb
movzx r11d, byte [r8 + rsi + 7]
movzx r9d, byte [rdi + r11]
cmp r9, 0xff
je 0x140004edb
shl rbx, 0x3a
shl rdx, 0x34
or rdx, rbx
shl rbp, 0x2e
shl r14, 0x28
or r14, rbp
or r14, rdx
shl rcx, 0x22
shl r15, 0x1c
or r15, rcx
shl r13d, 0x16
or r13, r15
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 r14d, byte [rdi + r11]
cmp r14, 0xff
je 0x140004ef5
movzx r11d, byte [r8 + rsi + 9]
movzx edx, byte [rdi + r11]
cmp rdx, 0xff
je 0x140004eff
movzx r11d, byte [r8 + rsi + 0xa]
movzx r15d, byte [rdi + r11]
cmp r15, 0xff
je 0x140004f09
movzx r11d, byte [r8 + rsi + 0xb]
movzx ebx, byte [rdi + r11]
cmp rbx, 0xff
je 0x140004f13
movzx r11d, byte [r8 + rsi + 0xc]
movzx ecx, byte [rdi + r11]
cmp rcx, 0xff
je 0x140004f1d
movzx r11d, byte [r8 + rsi + 0xd]
movzx r13d, byte [rdi + r11]
cmp r13, 0xff
je 0x140004f27
movzx r11d, byte [r8 + rsi + 0xe]
movzx r9d, byte [rdi + r11]
cmp r9, 0xff
je 0x140004f36
movzx r11d, byte [r8 + rsi + 0xf]
movzx ebp, byte [rdi + r11]
cmp rbp, 0xff
je 0x140004f46
shl r14, 0x3a
shl rdx, 0x34
or rdx, r14
shl r15, 0x2e
shl rbx, 0x28
or rbx, r15
or rbx, rdx
shl rcx, 0x22
shl r13, 0x1c
or r13, rcx
shl r9d, 0x16
or r9, r13
or r9, rbx
shl ebp, 0x10
or rbp, r9
bswap rbp
mov rcx, qword [rsp + 0x100]
mov qword [rcx + rax + 6], rbp
movzx r11d, byte [r8 + rsi + 0x10]
movzx r14d, byte [rdi + r11]
cmp r14, 0xff
je 0x140004f56
movzx r11d, byte [r8 + rsi + 0x11]
movzx edx, byte [rdi + r11]
cmp rdx, 0xff
je 0x140004f66
movzx r11d, byte [r8 + rsi + 0x12]
movzx r15d, byte [rdi + r11]
cmp r15, 0xff
je 0x140004f76
movzx r11d, byte [r8 + rsi + 0x13]
movzx ebx, byte [rdi + r11]
cmp rbx, 0xff
je 0x140004f83
movzx r11d, byte [r8 + rsi + 0x14]
movzx ecx, byte [rdi + r11]
cmp rcx, 0xff
je 0x140004fa8
movzx r11d, byte [r8 + rsi + 0x15]
movzx r13d, byte [rdi + r11]
cmp r13, 0xff
je 0x140004faf
movzx r11d, byte [r8 + rsi + 0x16]
movzx r9d, byte [rdi + r11]
cmp r9, 0xff
je 0x140004fb6
movzx r11d, byte [r8 + rsi + 0x17]
movzx ebp, byte [rdi + r11]
cmp rbp, 0xff
je 0x140004fbd
shl r14, 0x3a
shl rdx, 0x34
or rdx, r14
shl r15, 0x2e
shl rbx, 0x28
or rbx, r15
or rbx, rdx
shl rcx, 0x22
shl r13, 0x1c
or r13, rcx
shl r9d, 0x16
or r9, r13
or r9, rbx
shl ebp, 0x10
or rbp, r9
bswap rbp
mov rcx, qword [rsp + 0x100]
mov qword [rcx + rax + 0xc], rbp
movzx r11d, byte [r8 + rsi + 0x18]
movzx r14d, byte [rdi + r11]
cmp r14, 0xff
je 0x140004fc4
movzx r11d, byte [r8 + rsi + 0x19]
movzx edx, byte [rdi + r11]
cmp rdx, 0xff
je 0x140004fcb
movzx r11d, byte [r8 + rsi + 0x1a]
movzx r15d, byte [rdi + r11]
cmp r15, 0xff
je 0x140004fd2
movzx r11d, byte [r8 + rsi + 0x1b]
movzx ebx, byte [rdi + r11]
cmp rbx, 0xff
je 0x140004fd9
movzx r11d, byte [r8 + rsi + 0x1c]
movzx ecx, byte [rdi + r11]
cmp rcx, 0xff
je 0x140004fe0
movzx r11d, byte [r8 + rsi + 0x1d]
movzx r13d, byte [rdi + r11]
cmp r13, 0xff
je 0x140004fe7
movzx r11d, byte [r8 + rsi + 0x1e]
movzx r9d, byte [rdi + r11]
cmp r9, 0xff
je 0x140004fee
movzx r11d, byte [r8 + rsi + 0x1f]
movzx ebp, byte [rdi + r11]
cmp rbp, 0xff
je 0x140004ff5
shl r14, 0x3a
shl rdx, 0x34
or rdx, r14
shl r15, 0x2e
shl rbx, 0x28
or rbx, r15
or rbx, rdx
shl rcx, 0x22
shl r13, 0x1c
or r13, rcx
shl r9d, 0x16
or r9, r13
or r9, rbx
shl ebp, 0x10
or rbp, r9
bswap rbp
mov rcx, qword [rsp + 0x100]
mov qword [rcx + rax + 0x12], rbp
add rax, 0x18
mov r15, qword [rsp + 0x68]
add r15, 0xfffffffffffffffc
mov rsi, r10
cmp r10, qword [rsp + 0x70]
mov r9, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x108]
jbe 0x1400047ad
jmp 0x140004631
mov r11, r10
cmp r15, 2
jb 0x140004e14
dec r15
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 0x14000504d
lea r10, [rax + 6]
cmp rax, 0xfffffffffffffff9
ja 0x14000505f
cmp r10, rdx
ja 0x14000502e
cmp r9, r11
je 0x14000503d
movzx r14d, byte [r8 + r11]
movzx edx, byte [rdi + r14]
cmp rdx, 0xff
je 0x140004ec5
cmp qword [rsp + 0x70], r11
je 0x1400050aa
movzx r14d, byte [r8 + r11 + 1]
movzx esi, byte [rdi + r14]
cmp rsi, 0xff
je 0x140004e7b
lea rcx, [r9 + r12]
cmp rcx, 2
jbe 0x1400050c0
movzx r14d, byte [r8 + r11 + 2]
movzx r13d, byte [rdi + r14]
cmp r13, 0xff
je 0x140004e85
cmp qword [rsp + 0x90], r11
je 0x1400050d6
movzx r14d, byte [r8 + r11 + 3]
movzx ebx, byte [rdi + r14]
cmp rbx, 0xff
je 0x140004e91
mov qword [rsp + 0x68], r10
cmp rcx, 4
jbe 0x1400050ec
movzx r14d, byte [r8 + r11 + 4]
movzx ebp, byte [rdi + r14]
cmp rbp, 0xff
je 0x140004e9d
cmp qword [rsp + 0x88], r11
je 0x140005102
mov r10, r15
movzx r14d, byte [r8 + r11 + 5]
movzx r15d, byte [rdi + r14]
cmp r15, 0xff
je 0x140004ea9
cmp rcx, 6
jbe 0x140005118
movzx r14d, byte [r8 + r11 + 6]
movzx ecx, byte [rdi + r14]
cmp rcx, 0xff
je 0x140004eb5
cmp qword [rsp + 0x80], r11
je 0x14000512e
movzx r14d, byte [r8 + r11 + 7]
movzx r9d, byte [rdi + r14]
cmp r9, 0xff
je 0x140004ec1
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 r15, 0x1c
or r15, rbp
shl ecx, 0x16
or rcx, r15
shl r9d, 0x10
or r9, rcx
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 r15, r10
dec r15
mov r9, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x108]
jne 0x140004c55
jmp 0x140004e17
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 fcn.140003fd0
mov rax, rsi
jmp 0x14000501a
dec r9
mov rcx, qword [rsp + 0x60]
mov byte [rcx + 8], 0
mov byte [rcx + 9], al
mov qword [rcx + 0x10], r9
jmp 0x14000500e
inc r11
jmp 0x140004ec5
inc rsi
jmp 0x140004edf
add r11, 2
jmp 0x140004ec5
add rsi, 2
jmp 0x140004edf
add r11, 3
jmp 0x140004ec5
add rsi, 3
jmp 0x140004edf
add r11, 4
jmp 0x140004ec5
add rsi, 4
jmp 0x140004edf
add r11, 5
jmp 0x140004ec5
add rsi, 5
jmp 0x140004edf
add r11, 6
jmp 0x140004ec5
add rsi, 6
jmp 0x140004edf
add r11, 7
mov rax, qword [rsp + 0x60]
mov byte [rax + 8], 0
mov byte [rax + 9], r14b
mov qword [rax + 0x10], r11
jmp 0x140004f9f
add rsi, 7
mov rax, qword [rsp + 0x60]
mov byte [rax + 8], 0
mov byte [rax + 9], r11b
mov qword [rax + 0x10], rsi
jmp 0x140004f9f
mov eax, 8
jmp 0x140004ffa
mov eax, 9
jmp 0x140004ffa
mov eax, 0xa
jmp 0x140004ffa
mov eax, 0xb
jmp 0x140004ffa
mov eax, 0xc
jmp 0x140004ffa
mov eax, 0xd
jmp 0x140004ffa
inc r10
jmp 0x140004f8e
mov eax, 0xe
jmp 0x140004ffa
add r10, 2
jmp 0x140004f8e
mov eax, 0xf
jmp 0x140004ffa
add r10, 3
jmp 0x140004f8e
mov eax, 0x10
jmp 0x140004ffa
add r10, 4
jmp 0x140004f8e
mov eax, 0x11
jmp 0x140004ffa
add r10, 5
jmp 0x140004f8e
mov eax, 0x12
jmp 0x140004ffa
add r10, 6
jmp 0x140004f8e
mov eax, 0x13
jmp 0x140004ffa
add r10, 7
mov rax, qword [rsp + 0x60]
mov byte [rax + 8], 0
mov byte [rax + 9], sil
mov qword [rax + 0x10], r10
mov qword [rax], 2
jmp 0x140005015
mov eax, 0x14
jmp 0x140004ffa
mov eax, 0x15
jmp 0x140004ffa
mov eax, 0x16
jmp 0x140004ffa
mov eax, 0x17
jmp 0x140004ffa
mov eax, 0x18
jmp 0x140004ffa
mov eax, 0x19
jmp 0x140004ffa
mov eax, 0x1a
jmp 0x140004ffa
mov eax, 0x1b
jmp 0x140004ffa
mov eax, 0x1c
jmp 0x140004ffa
mov eax, 0x1d
jmp 0x140004ffa
mov eax, 0x1e
jmp 0x140004ffa
mov eax, 0x1f
add rax, rsi
mov rcx, qword [rsp + 0x60]
mov byte [rcx + 8], 0
mov byte [rcx + 9], r11b
mov qword [rcx + 0x10], rax
mov qword [rcx], 2
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, str._Users_zh_.cargo_registry_src_index.crates.io_6f17d22bba15001f_base64_0.21.7_src_engine_general_purpose_decode.rs
mov rcx, r10
call fcn.14001e810
lea r8, str._Users_zh_.cargo_registry_src_index.crates.io_6f17d22bba15001f_base64_0.21.7_src_engine_general_purpose_decode.rs
xor ecx, ecx
xor edx, edx
call fcn.14001e4f0
lea r8, str._Users_zh_.cargo_registry_src_index.crates.io_6f17d22bba15001f_base64_0.21.7_src_engine_general_purpose_decode.rs
mov rcx, r11
mov rdx, r9
call fcn.14001e7a0
lea r8, str._Users_zh_.cargo_registry_src_index.crates.io_6f17d22bba15001f_base64_0.21.7_src_engine_general_purpose_decode.rs
mov rcx, rax
mov rdx, r10
call fcn.14001e880
lea r8, str._Users_zh_.cargo_registry_src_index.crates.io_6f17d22bba15001f_base64_0.21.7_src_engine_general_purpose_decode.rs
mov rcx, r11
call fcn.14001e810
lea r8, str._Users_zh_.cargo_registry_src_index.crates.io_6f17d22bba15001f_base64_0.21.7_src_engine_general_purpose_decode.rs
mov edx, 0xa
mov rcx, 0xfffffffffffffff0
call fcn.14001e880
lea r8, str._Users_zh_.cargo_registry_src_index.crates.io_6f17d22bba15001f_base64_0.21.7_src_engine_general_purpose_decode.rs
mov rcx, r10
mov rdx, r9
call fcn.14001e810
lea r8, str._Users_zh_.cargo_registry_src_index.crates.io_6f17d22bba15001f_base64_0.21.7_src_engine_general_purpose_decode.rs
mov ecx, 1
mov edx, 1
call fcn.14001e4f0
lea r8, str._Users_zh_.cargo_registry_src_index.crates.io_6f17d22bba15001f_base64_0.21.7_src_engine_general_purpose_decode.rs
mov ecx, 2
mov edx, 2
call fcn.14001e4f0
lea r8, str._Users_zh_.cargo_registry_src_index.crates.io_6f17d22bba15001f_base64_0.21.7_src_engine_general_purpose_decode.rs
mov ecx, 3
mov edx, 3
call fcn.14001e4f0
lea r8, str._Users_zh_.cargo_registry_src_index.crates.io_6f17d22bba15001f_base64_0.21.7_src_engine_general_purpose_decode.rs
mov ecx, 4
mov edx, 4
call fcn.14001e4f0
lea r8, str._Users_zh_.cargo_registry_src_index.crates.io_6f17d22bba15001f_base64_0.21.7_src_engine_general_purpose_decode.rs
mov ecx, 5
mov edx, 5
call fcn.14001e4f0
lea r8, str._Users_zh_.cargo_registry_src_index.crates.io_6f17d22bba15001f_base64_0.21.7_src_engine_general_purpose_decode.rs
mov ecx, 6
mov edx, 6
call fcn.14001e4f0
lea r8, str._Users_zh_.cargo_registry_src_index.crates.io_6f17d22bba15001f_base64_0.21.7_src_engine_general_purpose_decode.rs
mov ecx, 7
mov edx, 7
call fcn.14001e4f0
lea r8, str._Users_zh_.cargo_registry_src_index.crates.io_6f17d22bba15001f_base64_0.21.7_src_engine_general_purpose_decode.rs
mov rcx, rsi
call fcn.14001e810
lea r8, str._Users_zh_.cargo_registry_src_index.crates.io_6f17d22bba15001f_base64_0.21.7_src_engine_general_purpose_decode.rs
mov rcx, rax
mov rdx, rsi
call fcn.14001e880
lea r8, str._Users_zh_.cargo_registry_src_index.crates.io_6f17d22bba15001f_base64_0.21.7_src_engine_general_purpose_decode.rs
mov rcx, r11
mov rdx, r9
call fcn.14001e810
int3