Function at 0x6da00930
Capabilities:
Encode data using base64

Disassembly:
push rbx
sub rsp, 0x30
mov rdx, qword [rdx]
mov rbx, rcx
mov rax, qword [0x6db6d1b0]
mov qword [rsp + 0x28], rax
xor eax, eax
call fcn.6da00600
mov rcx, qword [rsp + 0x28]
xor rcx, qword [0x6db6d1b0]
mov rax, rbx
jne 0x6da00925
add rsp, 0x30
pop rbx
ret
call fcn.6da2ca50
nop
nop dword [rax + rax]
push rbp
sub rsp, 0xe0
lea r10, [0x6dac9ea0]
lea r11, [0x6db607ac]
lea r9, [rsp + 0x60]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x90], r10
mov qword [rsp + 0x98], r11
lea r10, [rsp + 0xe0]
lea r11, [0x6da00e77]
mov rcx, r9
mov qword [rsp + 0x38], r8
mov qword [rsp + 0xa0], r10
mov qword [rsp + 0xc8], r9
mov qword [rsp + 0xa8], r11
mov qword [rsp + 0xb0], rsp
call fcn.6da36720
mov rcx, qword [rsp + 0x28]
lea rdx, [0x6db20f20]
lea r8, [rsp + 0xd7]
mov r10, qword [0x6db6d1b0]
mov qword [rsp + 0xd8], r10
xor r10d, r10d
mov dword [rsp + 0x68], 0xffffffff
call fcn.6da8a760
mov rax, qword [rsp + 0x38]
movabs rdx, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x28]
mov dword [rsp + 0x68], 1
add rax, 2
mul rdx
shr rdx, 1
shl rdx, 2
call fcn.6da8a470
mov rdx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x38]
add rax, rdx
cmp rdx, rax
mov qword [rsp + 0x50], rax
jae 0x6da00b24
mov dword [rsp + 0x58], 0
mov dword [rsp + 0x38], 0
jmp 0x6da00a51
cmp ecx, 2
je 0x6da00bf0
test ecx, ecx
je 0x6da00b54
mov rax, qword [rsp + 0x50]
cmp qword [rsp + 0x30], rax
je 0x6da00b16
add qword [rsp + 0x30], 1
mov ecx, dword [rsp + 0x38]
mov rax, qword [rsp + 0x30]
cmp ecx, 1
movzx eax, byte [rax - 1]
mov byte [rsp + 0x40], al
jne 0x6da00a30
sar eax, 4
or eax, dword [rsp + 0x58]
lea rdx, str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_
cdqe
movzx eax, byte [rdx + rax]
mov byte [rsp + 0x58], al
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
lea rcx, [rdx + 1]
cmp rcx, qword [rax - 0x10]
mov qword [rsp + 0x38], rcx
ja 0x6da00aa9
mov r8d, dword [rax - 8]
test r8d, r8d
jle 0x6da00acc
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x28]
mov dword [rsp + 0x68], 1
call fcn.6da8a470
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
movzx ecx, byte [rsp + 0x58]
mov byte [rax + rdx], cl
mov rax, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x38]
mov dword [rsp + 0x38], 2
mov rax, qword [rax]
mov dword [rax - 8], 0
mov qword [rax - 0x18], rdx
mov byte [rax + rdx], 0
mov eax, dword [rsp + 0x40]
and eax, 0xf
shl eax, 2
mov dword [rsp + 0x58], eax
mov rax, qword [rsp + 0x50]
cmp qword [rsp + 0x30], rax
jne 0x6da00a51
mov r10d, dword [rsp + 0x38]
test r10d, r10d
jne 0x6da00cfb
mov rcx, qword [rsp + 0xc8]
call fcn.6da36780
mov rdx, qword [rsp + 0xd8]
xor rdx, qword [0x6db6d1b0]
mov rax, qword [rsp + 0x28]
jne 0x6da00e72
add rsp, 0xe0
pop rbp
ret
sar eax, 2
lea rdx, str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_
cdqe
movzx eax, byte [rdx + rax]
mov byte [rsp + 0x58], al
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
lea rcx, [rdx + 1]
cmp rcx, qword [rax - 0x10]
mov qword [rsp + 0x38], rcx
ja 0x6da00b8c
mov r9d, dword [rax - 8]
test r9d, r9d
jle 0x6da00baf
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x28]
mov dword [rsp + 0x68], 1
call fcn.6da8a470
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
movzx ecx, byte [rsp + 0x58]
mov byte [rax + rdx], cl
mov rax, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x38]
mov dword [rsp + 0x38], 1
mov rax, qword [rax]
mov dword [rax - 8], 0
mov qword [rax - 0x18], rdx
mov byte [rax + rdx], 0
mov eax, dword [rsp + 0x40]
and eax, 3
mov dword [rsp + 0x58], eax
shl dword [rsp + 0x58], 4
jmp 0x6da00a41
sar eax, 6
or eax, dword [rsp + 0x58]
lea rdx, str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_
cdqe
movzx eax, byte [rdx + rax]
mov byte [rsp + 0x5f], al
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
lea rcx, [rdx + 1]
cmp rcx, qword [rax - 0x10]
mov qword [rsp + 0x38], rcx
ja 0x6da00c2a
mov ecx, dword [rax - 8]
test ecx, ecx
jle 0x6da00c4d
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x28]
mov dword [rsp + 0x68], 1
call fcn.6da8a470
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
movzx ecx, byte [rsp + 0x5f]
mov byte [rax + rdx], cl
mov rdx, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x38]
mov rax, qword [rdx]
mov qword [rax - 0x18], rcx
mov dword [rax - 8], 0
mov byte [rax + rcx], 0
mov rax, qword [rsp + 0x40]
lea rcx, str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_
and eax, 0x3f
movzx eax, byte [rcx + rax]
mov byte [rsp + 0x40], al
mov rax, qword [rdx]
mov rdx, qword [rax - 0x18]
lea rcx, [rdx + 1]
cmp rcx, qword [rax - 0x10]
mov qword [rsp + 0x38], rcx
ja 0x6da00ca7
mov r11d, dword [rax - 8]
test r11d, r11d
jle 0x6da00cca
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x28]
mov dword [rsp + 0x68], 1
call fcn.6da8a470
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
movzx ecx, byte [rsp + 0x40]
mov byte [rax + rdx], cl
mov rax, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x38]
mov dword [rsp + 0x38], 0
mov rax, qword [rax]
mov dword [rax - 8], 0
mov qword [rax - 0x18], rdx
mov byte [rax + rdx], 0
jmp 0x6da00a41
movsxd rax, dword [rsp + 0x58]
lea rdx, str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_
movzx eax, byte [rdx + rax]
mov byte [rsp + 0x40], al
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
lea rcx, [rdx + 1]
cmp rcx, qword [rax - 0x10]
mov qword [rsp + 0x30], rcx
jbe 0x6da00e52
mov rdx, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x28]
mov dword [rsp + 0x68], 1
call fcn.6da8a470
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
movzx ecx, byte [rsp + 0x40]
mov byte [rax + rdx], cl
mov rdx, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rdx]
mov qword [rax - 0x18], rcx
mov dword [rax - 8], 0
mov byte [rax + rcx], 0
mov rax, qword [rdx]
mov rdx, qword [rax - 0x18]
lea rcx, [rdx + 1]
cmp rcx, qword [rax - 0x10]
mov qword [rsp + 0x30], rcx
jbe 0x6da00e40
mov rdx, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x28]
mov dword [rsp + 0x68], 1
call fcn.6da8a470
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
mov byte [rax + rdx], 0x3d
mov rax, qword [rsp + 0x28]
cmp dword [rsp + 0x38], 1
mov rdx, qword [rsp + 0x30]
mov rax, qword [rax]
mov dword [rax - 8], 0
mov qword [rax - 0x18], rdx
mov byte [rax + rdx], 0
jne 0x6da00b24
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
lea rcx, [rdx + 1]
cmp rcx, qword [rax - 0x10]
mov qword [rsp + 0x30], rcx
jbe 0x6da00e65
mov rdx, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x28]
mov dword [rsp + 0x68], 1
call fcn.6da8a470
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
mov byte [rax + rdx], 0x3d
mov rax, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
mov rax, qword [rax]
mov dword [rax - 8], 0
mov qword [rax - 0x18], rdx
mov byte [rax + rdx], 0
jmp 0x6da00b24
mov r8d, dword [rax - 8]
test r8d, r8d
jg 0x6da00d8f
jmp 0x6da00db2
mov r9d, dword [rax - 8]
test r9d, r9d
jg 0x6da00d2e
nop
jmp 0x6da00d51
mov ecx, dword [rax - 8]
test ecx, ecx
jg 0x6da00df8
nop dword [rax]
jmp 0x6da00e1b
call fcn.6da2ca50
mov r8, qword [rsp + 0x28]
mov rax, qword [rsp + 0x70]
lea rdx, [rsp + 0xd7]
mov rcx, qword [r8]
mov qword [rsp + 0x30], rax
sub rcx, 0x18
call fcn.6da89110
mov rcx, qword [rsp + 0x30]
mov dword [rsp + 0x68], 0xffffffff
call fcn.6da36a30
nop
nop dword [rax]
push rbx
sub rsp, 0x30
mov rdx, qword [rdx]
mov rbx, rcx
mov rax, qword [0x6db6d1b0]
mov qword [rsp + 0x28], rax
xor eax, eax
mov r8, qword [rdx - 0x18]
call 0x6da00930
mov rcx, qword [rsp + 0x28]
xor rcx, qword [0x6db6d1b0]
mov rax, rbx
jne 0x6da00ee9
add rsp, 0x30
pop rbx
ret
call fcn.6da2ca50
nop
nop
push rbp
sub rsp, 0xf0
lea r10, [0x6dac9ea0]
lea r11, [0x6db607cc]
lea r9, [rsp + 0x70]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0xa0], r10
mov qword [rsp + 0xa8], r11
lea r10, [rsp + 0xf0]
lea r11, [0x6da01639]
mov rcx, r9
mov qword [rsp + 0x38], r8
mov qword [rsp + 0xb0], r10
mov qword [rsp + 0xd8], r9
mov qword [rsp + 0xb8], r11
mov qword [rsp + 0xc0], rsp
call fcn.6da36720
mov rcx, qword [rsp + 0x28]
lea rdx, [0x6db20f20]
lea r8, [rsp + 0xe7]
mov r10, qword [0x6db6d1b0]
mov qword [rsp + 0xe8], r10
xor r10d, r10d
mov dword [rsp + 0x78], 0xffffffff
call fcn.6da8a760
mov rax, qword [rsp + 0x38]
movabs rdx, 0xcccccccccccccccd
mov rcx, qword [rsp + 0x28]
mov dword [rsp + 0x78], 1
add rax, 4
mul rdx
shr rdx, 2
shl rdx, 3
call fcn.6da8a470
mov rdx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x38]
add rax, rdx
cmp rdx, rax
mov qword [rsp + 0x60], rax
jae 0x6da0115f
mov dword [rsp + 0x58], 0
mov dword [rsp + 0x50], 0
nop
add qword [rsp + 0x30], 1
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax - 1]
mov byte [rsp + 0x40], al
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x50]
cmp eax, 4
ja case.default.0x6da01022
lea rcx, [0x6db20f94]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov eax, dword [rsp + 0x38]
lea rdx, str.abcdefghijklmnopqrstuvwxyz234567
mov qword [rsp + 0x50], rdx
sar eax, 7
or eax, dword [rsp + 0x58]
cdqe
movzx eax, byte [rdx + rax]
mov byte [rsp + 0x6f], al
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
lea rcx, [rdx + 1]
cmp rcx, qword [rax - 0x10]
mov qword [rsp + 0x58], rcx
ja 0x6da01069
mov r8d, dword [rax - 8]
test r8d, r8d
jle 0x6da0108c
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x28]
mov dword [rsp + 0x78], 1
call fcn.6da8a470
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
movzx ecx, byte [rsp + 0x6f]
mov byte [rax + rdx], cl
mov rdx, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x58]
mov rax, qword [rdx]
mov qword [rax - 0x18], rcx
mov dword [rax - 8], 0
mov byte [rax + rcx], 0
mov eax, dword [rsp + 0x38]
mov rcx, qword [rsp + 0x50]
sar eax, 2
and eax, 0x1f
movzx eax, byte [rcx + rax]
mov byte [rsp + 0x50], al
mov rax, qword [rdx]
mov rdx, qword [rax - 0x18]
lea rcx, [rdx + 1]
cmp rcx, qword [rax - 0x10]
mov qword [rsp + 0x38], rcx
ja 0x6da010e4
mov ecx, dword [rax - 8]
test ecx, ecx
jle 0x6da01107
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x28]
mov dword [rsp + 0x78], 1
call fcn.6da8a470
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
movzx ecx, byte [rsp + 0x50]
mov dword [rsp + 0x50], 4
mov byte [rax + rdx], cl
mov rax, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x38]
mov rax, qword [rax]
mov dword [rax - 8], 0
mov qword [rax - 0x18], rdx
mov byte [rax + rdx], 0
mov eax, dword [rsp + 0x40]
and eax, 3
shl eax, 3
mov dword [rsp + 0x58], eax
mov rax, qword [rsp + 0x60]
cmp qword [rsp + 0x30], rax
jne 0x6da00ff0
mov r9d, dword [rsp + 0x50]
test r9d, r9d
jne 0x6da01514
mov rcx, qword [rsp + 0xd8]
call fcn.6da36780
mov rdx, qword [rsp + 0xe8]
xor rdx, qword [0x6db6d1b0]
mov rax, qword [rsp + 0x28]
jne 0x6da01671
add rsp, 0xf0
pop rbp
ret
mov eax, dword [rsp + 0x38]
lea rdx, str.abcdefghijklmnopqrstuvwxyz234567
sar eax, 3
cdqe
movzx eax, byte [rdx + rax]
mov byte [rsp + 0x50], al
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
lea rcx, [rdx + 1]
cmp rcx, qword [rax - 0x10]
mov qword [rsp + 0x38], rcx
ja 0x6da011ca
mov ecx, dword [rax - 8]
test ecx, ecx
jle 0x6da011ed
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x28]
mov dword [rsp + 0x78], 1
call fcn.6da8a470
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
movzx ecx, byte [rsp + 0x50]
mov dword [rsp + 0x50], 1
mov byte [rax + rdx], cl
mov rax, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x38]
mov rax, qword [rax]
mov dword [rax - 8], 0
mov qword [rax - 0x18], rdx
mov byte [rax + rdx], 0
mov eax, dword [rsp + 0x40]
and eax, 7
shl eax, 2
mov dword [rsp + 0x58], eax
jmp case.default.0x6da01022
mov eax, dword [rsp + 0x38]
lea rdx, str.abcdefghijklmnopqrstuvwxyz234567
sar eax, 4
or eax, dword [rsp + 0x58]
cdqe
movzx eax, byte [rdx + rax]
mov byte [rsp + 0x50], al
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
lea rcx, [rdx + 1]
cmp rcx, qword [rax - 0x10]
mov qword [rsp + 0x38], rcx
ja 0x6da01270
mov r9d, dword [rax - 8]
test r9d, r9d
jle 0x6da01293
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x28]
mov dword [rsp + 0x78], 1
call fcn.6da8a470
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
movzx ecx, byte [rsp + 0x50]
mov dword [rsp + 0x50], 3
mov byte [rax + rdx], cl
mov rax, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x38]
mov rax, qword [rax]
mov dword [rax - 8], 0
mov qword [rax - 0x18], rdx
mov byte [rax + rdx], 0
mov eax, dword [rsp + 0x40]
and eax, 0xf
add eax, eax
mov dword [rsp + 0x58], eax
jmp case.default.0x6da01022
mov eax, dword [rsp + 0x38]
lea rcx, str.abcdefghijklmnopqrstuvwxyz234567
mov qword [rsp + 0x50], rcx
sar eax, 6
or eax, dword [rsp + 0x58]
cdqe
movzx eax, byte [rcx + rax]
mov byte [rsp + 0x6f], al
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
lea rcx, [rdx + 1]
cmp rcx, qword [rax - 0x10]
mov qword [rsp + 0x58], rcx
ja 0x6da01316
mov r11d, dword [rax - 8]
test r11d, r11d
jle 0x6da01339
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x28]
mov dword [rsp + 0x78], 1
call fcn.6da8a470
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
movzx ecx, byte [rsp + 0x6f]
mov byte [rax + rdx], cl
mov rdx, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x58]
mov rax, qword [rdx]
mov qword [rax - 0x18], rcx
mov dword [rax - 8], 0
mov byte [rax + rcx], 0
mov eax, dword [rsp + 0x38]
mov rcx, qword [rsp + 0x50]
sar eax, 1
and eax, 0x1f
movzx eax, byte [rcx + rax]
mov byte [rsp + 0x50], al
mov rax, qword [rdx]
mov rdx, qword [rax - 0x18]
lea rcx, [rdx + 1]
cmp rcx, qword [rax - 0x10]
mov qword [rsp + 0x38], rcx
ja 0x6da01392
mov r10d, dword [rax - 8]
test r10d, r10d
jle 0x6da013b5
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x28]
mov dword [rsp + 0x78], 1
call fcn.6da8a470
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
movzx ecx, byte [rsp + 0x50]
mov dword [rsp + 0x50], 2
mov byte [rax + rdx], cl
mov rax, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x38]
mov rax, qword [rax]
mov dword [rax - 8], 0
mov qword [rax - 0x18], rdx
mov byte [rax + rdx], 0
mov eax, dword [rsp + 0x40]
and eax, 1
mov dword [rsp + 0x58], eax
shl dword [rsp + 0x58], 4
jmp case.default.0x6da01022
mov eax, dword [rsp + 0x38]
lea rdx, str.abcdefghijklmnopqrstuvwxyz234567
mov qword [rsp + 0x50], rdx
sar eax, 5
or eax, dword [rsp + 0x58]
cdqe
movzx eax, byte [rdx + rax]
mov byte [rsp + 0x6f], al
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
lea rcx, [rdx + 1]
cmp rcx, qword [rax - 0x10]
mov qword [rsp + 0x38], rcx
ja 0x6da01445
mov r11d, dword [rax - 8]
test r11d, r11d
jle 0x6da01468
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x28]
mov dword [rsp + 0x78], 1
call fcn.6da8a470
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
movzx ecx, byte [rsp + 0x6f]
mov byte [rax + rdx], cl
mov rdx, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x38]
mov rax, qword [rdx]
mov qword [rax - 0x18], rcx
mov dword [rax - 8], 0
mov byte [rax + rcx], 0
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x50]
and eax, 0x1f
movzx eax, byte [rcx + rax]
mov byte [rsp + 0x50], al
mov rax, qword [rdx]
mov rdx, qword [rax - 0x18]
lea rcx, [rdx + 1]
cmp rcx, qword [rax - 0x10]
mov qword [rsp + 0x38], rcx
ja 0x6da014c0
mov r10d, dword [rax - 8]
test r10d, r10d
jle 0x6da014e3
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x28]
mov dword [rsp + 0x78], 1
call fcn.6da8a470
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
movzx ecx, byte [rsp + 0x50]
mov dword [rsp + 0x50], 0
mov byte [rax + rdx], cl
mov rax, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x38]
mov rax, qword [rax]
mov dword [rax - 8], 0
mov qword [rax - 0x18], rdx
mov byte [rax + rdx], 0
jmp case.default.0x6da01022
movsxd rax, dword [rsp + 0x58]
lea rdx, str.abcdefghijklmnopqrstuvwxyz234567
movzx eax, byte [rdx + rax]
mov byte [rsp + 0x38], al
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
lea rcx, [rdx + 1]
cmp rcx, qword [rax - 0x10]
mov qword [rsp + 0x30], rcx
ja 0x6da0154c
mov r8d, dword [rax - 8]
test r8d, r8d
jle 0x6da0156f
mov rdx, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x28]
mov dword [rsp + 0x78], 1
call fcn.6da8a470
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
movzx ecx, byte [rsp + 0x38]
mov byte [rax + rdx], cl
mov rax, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
mov rax, qword [rax]
mov qword [rax - 0x18], rdx
mov dword [rax - 8], 0
mov byte [rax + rdx], 0
movsxd rdx, dword [rsp + 0x50]
lea rax, [0x6db21520]
mov eax, dword [rax + rdx*4]
test eax, eax
mov dword [rsp + 0x50], eax
jle 0x6da0115f
mov dword [rsp + 0x38], 0
nop word cs:[rax + rax]
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
lea rcx, [rdx + 1]
cmp rcx, qword [rax - 0x10]
mov qword [rsp + 0x30], rcx
ja 0x6da015e2
mov ecx, dword [rax - 8]
test ecx, ecx
jle 0x6da01605
mov rdx, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x28]
mov dword [rsp + 0x78], 1
call fcn.6da8a470
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
mov rdx, qword [rax - 0x18]
mov byte [rax + rdx], 0x3d
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
add dword [rsp + 0x38], 1
mov rax, qword [rax]
mov dword [rax - 8], 0
mov qword [rax - 0x18], rcx
mov byte [rax + rcx], 0
mov eax, dword [rsp + 0x50]
cmp dword [rsp + 0x38], eax
jne 0x6da015c0
jmp 0x6da0115f
call fcn.6da2ca50
nop
nop word [rax + rax]
push rbx
sub rsp, 0x30
mov rdx, qword [rdx]
mov rbx, rcx
mov rax, qword [0x6db6d1b0]
mov qword [rsp + 0x28], rax
xor eax, eax
mov r8, qword [rdx - 0x18]
call 0x6da00ef0
mov rcx, qword [rsp + 0x28]
xor rcx, qword [0x6db6d1b0]
mov rax, rbx
jne 0x6da016b9
add rsp, 0x30
pop rbx
ret
call fcn.6da2ca50
nop
nop
push rdi
push rsi
push rbx
sub rsp, 0x30
mov rax, qword [0x6db6d1b0]
mov qword [rsp + 0x28], rax
xor eax, eax
mov rbx, rcx
mov rsi, rdx
call fcn.6d9fff40
test al, al
jne 0x6da01700
xor eax, eax
mov rdi, qword [rsp + 0x28]
xor rdi, qword [0x6db6d1b0]
jne 0x6da0174c
add rsp, 0x30
pop rbx
pop rsi
pop rdi
ret
mov qword [rsp + 0x20], 0
mov rdi, qword [sym.imp.msvcrt.dll__errno]
call rdi
mov rcx, qword [rbx]
lea rdx, [rsp + 0x20]
mov dword [rax], 0
mov r8d, 0xa
call sub.msvcrt.dll_strtol
test rsi, rsi
je 0x6da01732
mov dword [rsi], eax
mov rax, qword [rsp + 0x20]
test rax, rax
je 0x6da016e4
cmp byte [rax], 0
jne 0x6da016e4
call rdi
mov eax, dword [rax]
test eax, eax
sete al
jmp 0x6da016e6
call fcn.6da2ca50
nop
nop word cs:[rax + rax]
push rbp
sub rsp, 0xe0
lea rax, [0x6dac9ea0]
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x80], rax
lea rax, [0x6db607f8]
mov qword [rsp + 0x28], r8
mov qword [rsp + 0xa0], rsp
mov qword [rsp + 0x88], rax
lea rax, [rsp + 0xe0]
mov qword [rsp + 0x90], rax
lea rax, [0x6da01b5c]
mov qword [rsp + 0x98], rax
lea rax, [rsp + 0x50]
mov rcx, rax
mov qword [rsp + 0x38], rax
call fcn.6da36720
mov rcx, qword [rsp + 0x20]
mov r8, 0xffffffffffffffff
mov edx, 0x3a
mov rax, qword [0x6db6d1b0]
mov qword [rsp + 0xd8], rax
xor eax, eax
call fcn.6da55090
cmp rax, 0xffffffffffffffff
mov qword [rsp + 0x30], rax
je 0x6da01912
mov rdx, qword [rsp + 0x20]
mov rax, qword [rdx]
mov r9d, dword [rax - 8]
test r9d, r9d
js 0x6da0182d
mov rcx, rdx
mov dword [rsp + 0x58], 0xffffffff
call fcn.6da889b0
mov rax, qword [rsp + 0x20]
mov rax, qword [rax]
mov rdx, qword [rsp + 0x30]
mov byte [rsp + 0x40], 0
sub rdx, 1
cmp byte [rax], 0x5b
mov qword [rsp + 0xb8], rdx
je 0x6da01a70
mov r8, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0x20]
mov edx, 0x3a
call fcn.6da55090
cmp byte [rsp + 0x40], 0
jne 0x6da0187c
cmp qword [rsp + 0x30], 0
je 0x6da0187c
cmp rax, 0xffffffffffffffff
jne 0x6da01912
mov rax, qword [rsp + 0x30]
lea r8, [rax + 1]
mov rax, qword [rsp + 0x20]
mov rax, qword [rax]
cmp r8, qword [rax - 0x18]
ja 0x6da01b48
lea rax, [rsp + 0xd0]
mov rdx, qword [rsp + 0x20]
mov r9, 0xffffffffffffffff
mov dword [rsp + 0x58], 0xffffffff
mov rcx, rax
mov qword [rsp + 0x40], rax
call fcn.6da8a840
mov rcx, qword [rsp + 0x40]
lea rdx, [rsp + 0xcc]
mov dword [rsp + 0x58], 1
call 0x6da016c0
test al, al
mov byte [rsp + 0xb8], 0
jne 0x6da01990
mov rcx, qword [rsp + 0xd0]
mov eax, 0xffffffff
lock xadd dword [rcx - 8], eax
test eax, eax
jle 0x6da01b10
cmp byte [rsp + 0xb8], 0
jne 0x6da01ab0
mov rax, qword [rsp + 0x20]
mov rax, qword [rax]
cmp qword [rax - 0x18], 0
je 0x6da01947
mov ecx, dword [rax - 8]
test ecx, ecx
js 0x6da01942
mov rcx, qword [rsp + 0x20]
mov dword [rsp + 0x58], 0xffffffff
call fcn.6da889b0
mov rax, qword [rsp + 0x20]
mov rax, qword [rax]
cmp byte [rax], 0x5b
je 0x6da019b0
mov rdx, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x28]
mov dword [rsp + 0x58], 0xffffffff
call fcn.6da89a20
mov rcx, qword [rsp + 0x38]
call fcn.6da36780
mov rax, qword [rsp + 0xd8]
xor rax, qword [0x6db6d1b0]
jne 0x6da01b43
add rsp, 0xe0
pop rbp
ret
mov eax, dword [rsp + 0xcc]
sub eax, 1
cmp eax, 0xfffe
setbe byte [rsp + 0xb8]
jmp 0x6da018ea
mov rdx, qword [rax - 0x18]
sub rdx, 1
mov qword [rsp + 0x30], rdx
mov edx, dword [rax - 8]
test edx, edx
js 0x6da019de
mov rcx, qword [rsp + 0x20]
mov dword [rsp + 0x58], 0xffffffff
call fcn.6da889b0
mov rax, qword [rsp + 0x20]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x30]
cmp byte [rax + rcx], 0x5d
jne 0x6da01947
mov rax, qword [rax - 0x18]
test rax, rax
lea r9, [rax - 2]
je 0x6da01b48
lea rax, [rsp + 0xd0]
mov rdx, qword [rsp + 0x20]
mov r8d, 1
mov dword [rsp + 0x58], 0xffffffff
mov rcx, rax
mov qword [rsp + 0x20], rax
call fcn.6da8a840
mov rdx, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x28]
mov dword [rsp + 0x58], 3
call fcn.6da89340
mov rcx, qword [rsp + 0xd0]
mov eax, 0xffffffff
lock xadd dword [rcx - 8], eax
test eax, eax
jg 0x6da0195e
lea rdx, [rsp + 0xcc]
sub rcx, 0x18
call fcn.6da89100
jmp 0x6da0195e
mov r8d, dword [rax - 8]
test r8d, r8d
js 0x6da01a93
mov rcx, qword [rsp + 0x20]
mov dword [rsp + 0x58], 0xffffffff
call fcn.6da889b0
mov rax, qword [rsp + 0x20]
mov rax, qword [rax]
mov rdx, qword [rsp + 0x30]
cmp byte [rax + rdx - 1], 0x5d
sete byte [rsp + 0x40]
jmp 0x6da0184c
mov rdx, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x40]
xor r8d, r8d
mov r9, qword [rsp + 0x30]
mov dword [rsp + 0x58], 0xffffffff
call fcn.6da8a840
mov rdx, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x20]
mov dword [rsp + 0x58], 2
call fcn.6da89340
mov rcx, qword [rsp + 0xd0]
mov eax, 0xffffffff
lock xadd dword [rcx - 8], eax
test eax, eax
jle 0x6da01b30
mov eax, dword [rsp + 0xcc]
mov rdx, qword [rsp + 0x48]
mov dword [rdx], eax
jmp 0x6da01912
lea rdx, [rsp + 0xcb]
sub rcx, 0x18
call fcn.6da89100
jmp 0x6da01904
lea rdx, [rsp + 0xcb]
sub rcx, 0x18
call fcn.6da89100
jmp 0x6da01afc
call fcn.6da2ca50
lea rcx, [0x6db20fa8]
mov dword [rsp + 0x58], 0xffffffff
call fcn.6dac2890
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov eax, dword [rsp + 0x58]
test eax, eax
je 0x6da01b7a
sub eax, 1
je 0x6da01b7a
sub eax, 1
je 0x6da01ba5
ud2
lea rdx, [rsp + 0xcb]
mov rax, qword [rsp + 0xd0]
lea rcx, [rax - 0x18]
call fcn.6da89110
mov rcx, qword [rsp + 0x20]
mov dword [rsp + 0x58], 0xffffffff
call fcn.6da36a30
lea rdx, [rsp + 0xcc]
jmp 0x6da01b82