Function at 0x4320e8
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x68
mov rsi, rcx
test rcx, rcx
je 0x432fba
mov rax, qword [rcx]
test rax, rax
je 0x432fba
imul rax, rax, 3
jo 0x432163
cqo
mov r8d, 4
idiv r8
add rax, 6
mov rcx, rax
jns 0x43213b
movabs r8, 0x7fffffffffffffff
xor edx, edx
jmp 0x432f96
mov rdx, rax
xor ecx, ecx
call fcn.0043ea3a
mov rdx, qword [rsi]
movabs r8, 0x2000000100002400
mov qword [rsp + 0x38], rax
mov r15, rdx
mov rax, r15
sub rax, 1
jno 0x432168
call fcn.0044097b
cmp rax, rdx
jge 0x432172
test rax, rax
jns 0x43217a
dec rdx
mov rcx, rax
jmp 0x4321f2
mov cl, byte [rsi + rax + 0x10]
cmp cl, 0x3d
ja 0x43219f
mov rbx, r8
shr rbx, cl
mov rcx, rbx
not rcx
mov ebx, ecx
and bl, 1
mov byte [rsp + 0x4f], bl
jne 0x4321a4
mov r15, rax
jmp 0x43215a
mov byte [rsp + 0x4f], 1
mov rax, r15
sub rax, 4
mov qword [rsp + 0x50], rax
jo 0x432163
mov qword [rsp + 0x30], 0
xor ebx, ebx
lea r12, [0x0045fb20]
cmp qword [rsp + 0x50], rbx
jge 0x4321df
mov rax, rbx
xor edi, edi
sub rax, r15
seto dil
jno 0x4327f8
jmp 0x432163
mov rdx, qword [rsi]
test rbx, rbx
js 0x4321ec
cmp rdx, rbx
jg 0x4321f7
dec rdx
mov rcx, rbx
call fcn.00441535
movzx ecx, byte [rsi + rbx + 0x10]
mov al, byte [rsp + 0x4f]
cmp cl, 0x20
ja 0x432217
mov eax, 0x400009
shl rax, 0xa
shr rax, cl
not rax
and eax, 1
test al, al
jne 0x432226
add rbx, 1
jno 0x4321e2
jmp 0x432163
mov al, byte [r12 + rcx]
mov byte [rsp + 0x40], al
inc al
jne 0x432347
mov rcx, qword [0x004673b0]
mov edx, 0x30
call fcn.0043e9c9
mov rdx, qword [rsi]
mov rbp, rax
mov rax, qword [0x004675e0]
mov qword [rbp], rax
lea rax, [0x0045f65d]
mov qword [rbp + 0x10], rax
cmp rbx, rdx
jge 0x4321ec
movzx ecx, byte [rsi + rbx + 0x10]
call fcn.0044146e
mov rcx, rbx
mov r13, rax
call fcn.0044146e
xor edx, edx
mov r14, rax
test r13, r13
je 0x43228b
mov rdx, qword [r13]
xor eax, eax
test r14, r14
je 0x432295
mov rax, qword [r14]
lea rcx, [rdx + rax + 0x38]
call fcn.0043e9f1
lea rdx, [0x0045fae0]
mov rdi, rax
mov rcx, rax
call fcn.00409420
mov dl, byte [rsi + rbx + 0x10]
mov rax, qword [rdi]
mov rcx, rdi
mov byte [rdi + rax + 0x10], dl
lea rdx, [0x0045fac0]
mov byte [rdi + rax + 0x11], 0
inc rax
mov qword [rdi], rax
call fcn.00409420
mov rdx, r13
mov rcx, rdi
call fcn.004152d9
lea rdx, [0x0045faa0]
mov rcx, rdi
call fcn.00409420
mov rdx, r14
mov rcx, rdi
call fcn.004152d9
lea rdx, [0x0045fa80]
mov rcx, rdi
call fcn.00409420
lea rcx, [rbp + 0x18]
mov rdx, rdi
call fcn.00407bf9
lea rcx, [rbp + 8]
xor edx, edx
call fcn.00407bf9
lea r9, str.base64.nim
lea r8, str.decode
mov rcx, rbp
mov qword [rsp + 0x20], 0xe9
lea rdx, [0x0045f65d]
call fcn.0044073e
xor edi, edi
add rbx, 1
seto dil
jo 0x432163
mov rdx, qword [rsi]
test rbx, rbx
js 0x4321ec
cmp rbx, rdx
jge 0x4321ec
movzx eax, byte [rsi + rbx + 0x10]
mov al, byte [r12 + rax]
mov byte [rsp + 0x4d], al
inc al
jne 0x432494
mov rcx, qword [0x004673b0]
mov edx, 0x30
call fcn.0043e9c9
mov rdx, qword [rsi]
mov rbp, rax
mov rax, qword [0x004675e0]
mov qword [rbp], rax
lea rax, [0x0045f65d]
mov qword [rbp + 0x10], rax
cmp rbx, rdx
jge 0x4321ec
movzx ecx, byte [rsi + rbx + 0x10]
call fcn.0044146e
mov rcx, rbx
mov r13, rax
call fcn.0044146e
mov r14, rax
xor eax, eax
test r13, r13
je 0x4323da
mov rax, qword [r13]
test r14, r14
je 0x4323e2
mov rdi, qword [r14]
lea rcx, [rdi + rax + 0x38]
call fcn.0043e9f1
lea rdx, [0x0045fae0]
mov rdi, rax
mov rcx, rax
call fcn.00409420
mov dl, byte [rsi + rbx + 0x10]
mov rax, qword [rdi]
mov rcx, rdi
mov byte [rdi + rax + 0x10], dl
lea rdx, [0x0045fac0]
mov byte [rdi + rax + 0x11], 0
inc rax
mov qword [rdi], rax
call fcn.00409420
mov rdx, r13
mov rcx, rdi
call fcn.004152d9
lea rdx, [0x0045faa0]
mov rcx, rdi
call fcn.00409420
mov rdx, r14
mov rcx, rdi
call fcn.004152d9
lea rdx, [0x0045fa80]
mov rcx, rdi
call fcn.00409420
lea rcx, [rbp + 0x18]
mov rdx, rdi
call fcn.00407bf9
lea rcx, [rbp + 8]
xor edx, edx
call fcn.00407bf9
lea r9, str.base64.nim
lea r8, str.decode
mov rcx, rbp
mov qword [rsp + 0x20], 0xe9
lea rdx, [0x0045f65d]
call fcn.0044073e
xor edi, edi
add rbx, 1
seto dil
jo 0x432163
mov rdx, qword [rsi]
test rbx, rbx
js 0x4321ec
cmp rbx, rdx
jge 0x4321ec
movzx eax, byte [rsi + rbx + 0x10]
mov al, byte [r12 + rax]
mov byte [rsp + 0x4e], al
inc al
jne 0x4325e1
mov rcx, qword [0x004673b0]
mov edx, 0x30
call fcn.0043e9c9
mov rdx, qword [rsi]
mov rbp, rax
mov rax, qword [0x004675e0]
mov qword [rbp], rax
lea rax, [0x0045f65d]
mov qword [rbp + 0x10], rax
cmp rbx, rdx
jge 0x4321ec
movzx ecx, byte [rsi + rbx + 0x10]
call fcn.0044146e
mov rcx, rbx
mov r13, rax
call fcn.0044146e
mov r14, rax
xor eax, eax
test r13, r13
je 0x432527
mov rax, qword [r13]
test r14, r14
je 0x43252f
mov rdi, qword [r14]
lea rcx, [rdi + rax + 0x38]
call fcn.0043e9f1
lea rdx, [0x0045fae0]
mov rdi, rax
mov rcx, rax
call fcn.00409420
mov dl, byte [rsi + rbx + 0x10]
mov rax, qword [rdi]
mov rcx, rdi
mov byte [rdi + rax + 0x10], dl
lea rdx, [0x0045fac0]
mov byte [rdi + rax + 0x11], 0
inc rax
mov qword [rdi], rax
call fcn.00409420
mov rdx, r13
mov rcx, rdi
call fcn.004152d9
lea rdx, [0x0045faa0]
mov rcx, rdi
call fcn.00409420
mov rdx, r14
mov rcx, rdi
call fcn.004152d9
lea rdx, [0x0045fa80]
mov rcx, rdi
call fcn.00409420
lea rcx, [rbp + 0x18]
mov rdx, rdi
call fcn.00407bf9
lea rcx, [rbp + 8]
xor edx, edx
call fcn.00407bf9
lea r9, str.base64.nim
lea r8, str.decode
mov rcx, rbp
mov qword [rsp + 0x20], 0xe9
lea rdx, [0x0045f65d]
call fcn.0044073e
xor edi, edi
add rbx, 1
seto dil
jo 0x432163
mov rdx, qword [rsi]
test rbx, rbx
js 0x4321ec
cmp rdx, rbx
jle 0x4321ec
movzx eax, byte [rsi + rbx + 0x10]
mov r14b, byte [r12 + rax]
cmp r14b, 0xff
jne 0x432736
mov rcx, qword [0x004673b0]
mov edx, 0x30
call fcn.0043e9c9
mov rdx, qword [rsi]
mov rbp, rax
mov rax, qword [0x004675e0]
mov qword [rbp], rax
lea rax, [0x0045f65d]
mov qword [rbp + 0x10], rax
cmp rbx, rdx
jge 0x4321ec
movzx ecx, byte [rsi + rbx + 0x10]
call fcn.0044146e
mov rcx, rbx
mov r13, rax
call fcn.0044146e
mov r8, rax
xor eax, eax
test r13, r13
je 0x432672
mov rax, qword [r13]
test r8, r8
je 0x43267a
mov rdi, qword [r8]
lea rcx, [rdi + rax + 0x38]
mov qword [rsp + 0x58], r8
call fcn.0043e9f1
lea rdx, [0x0045fae0]
mov rdi, rax
mov rcx, rax
call fcn.00409420
mov dl, byte [rsi + rbx + 0x10]
mov rax, qword [rdi]
mov rcx, rdi
mov byte [rdi + rax + 0x10], dl
lea rdx, [0x0045fac0]
mov byte [rdi + rax + 0x11], 0
inc rax
mov qword [rdi], rax
call fcn.00409420
mov rdx, r13
mov rcx, rdi
call fcn.004152d9
lea rdx, [0x0045faa0]
mov rcx, rdi
call fcn.00409420
mov r8, qword [rsp + 0x58]
mov rcx, rdi
mov rdx, r8
call fcn.004152d9
lea rdx, [0x0045fa80]
mov rcx, rdi
call fcn.00409420
lea rcx, [rbp + 0x18]
mov rdx, rdi
call fcn.00407bf9
lea rcx, [rbp + 8]
xor edx, edx
call fcn.00407bf9
lea r9, str.base64.nim
lea r8, str.decode
mov rcx, rbp
mov qword [rsp + 0x20], 0xe9
lea rdx, [0x0045f65d]
call fcn.0044073e
add rbx, 1
jo 0x432163
cmp qword [rsp + 0x38], 0
je 0x43275c
mov rax, qword [rsp + 0x38]
mov rdx, qword [rax]
cmp qword [rsp + 0x30], rdx
jl 0x432765
jmp 0x432add
or rdx, 0xffffffffffffffff
jmp 0x432f45
movzx eax, byte [rsp + 0x4d]
mov cl, byte [rsp + 0x40]
mov r10, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x38]
mov r8, rax
shl ecx, 2
sar r8, 4
or ecx, r8d
mov byte [rdi + r10 + 0x10], cl
mov rcx, r10
inc rcx
js 0x432163
cmp rcx, r10
jb 0x432163
test rcx, rcx
js 0x4327d4
cmp rcx, rdx
jge 0x4327d4
movzx r8d, byte [rsp + 0x4e]
shl rax, 4
mov rdi, qword [rsp + 0x38]
mov r9, r8
sar r9, 2
or eax, r9d
mov byte [rdi + rcx + 0x10], al
mov rax, qword [rsp + 0x30]
lea rcx, [rax + 2]
cmp rcx, rdx
jl 0x4327dc
dec rdx
jmp 0x4321f2
shl r8, 6
mov rax, qword [rsp + 0x38]
add qword [rsp + 0x30], 3
or r14d, r8d
mov byte [rax + rcx + 0x10], r14b
jmp 0x4321c4
mov ecx, 4
cqo
idiv rcx
mov rax, rdx
sar rax, 0x3f
xor rdx, rax
sub rdx, rax
cmp rdx, 2
je 0x432824
cmp rdx, 3
jne 0x432f9b
jmp 0x432b38
mov rdx, qword [rsi]
test rbx, rbx
js 0x4321ec
cmp rbx, rdx
jge 0x4321ec
movzx eax, byte [rsi + rbx + 0x10]
lea rbp, [0x0045fb20]
mov r12b, byte [rbp + rax]
cmp r12b, 0xff
jne 0x432966
mov rcx, qword [0x004673b0]
mov edx, 0x30
call fcn.0043e9c9
mov rdx, qword [rsi]
mov r13, rax
mov rax, qword [0x004675e0]
mov qword [r13], rax
lea rax, [0x0045f65d]
mov qword [r13 + 0x10], rax
cmp rbx, rdx
jge 0x4321ec
movzx ecx, byte [rsi + rbx + 0x10]
call fcn.0044146e
mov rcx, rbx
mov r14, rax
call fcn.0044146e
mov r15, rax
xor eax, eax
test r14, r14
je 0x4328ac
mov rax, qword [r14]
test r15, r15
je 0x4328b4
mov rdi, qword [r15]
lea rcx, [rdi + rax + 0x38]
call fcn.0043e9f1
lea rdx, [0x0045fae0]
mov rdi, rax
mov rcx, rax
call fcn.00409420
mov dl, byte [rsi + rbx + 0x10]
mov rax, qword [rdi]
mov rcx, rdi
mov byte [rdi + rax + 0x10], dl
lea rdx, [0x0045fac0]
mov byte [rdi + rax + 0x11], 0
inc rax
mov qword [rdi], rax
call fcn.00409420
mov rdx, r14
mov rcx, rdi
call fcn.004152d9
lea rdx, [0x0045faa0]
mov rcx, rdi
call fcn.00409420
mov rdx, r15
mov rcx, rdi
call fcn.004152d9
lea rdx, [0x0045fa80]
mov rcx, rdi
call fcn.00409420
lea rcx, [r13 + 0x18]
mov rdx, rdi
call fcn.00407bf9
lea rcx, [r13 + 8]
xor edx, edx
call fcn.00407bf9
lea r9, str.base64.nim
lea r8, str.decode
mov rcx, r13
mov qword [rsp + 0x20], 0xe9
lea rdx, [0x0045f65d]
call fcn.0044073e
xor edi, edi
add rbx, 1
seto dil
jo 0x432163
mov rdx, qword [rsi]
test rbx, rbx
js 0x4321ec
cmp rbx, rdx
jge 0x4321ec
movzx eax, byte [rsi + rbx + 0x10]
mov bpl, byte [rbp + rax]
cmp bpl, 0xff
jne 0x432ab1
mov rcx, qword [0x004673b0]
mov edx, 0x30
call fcn.0043e9c9
mov rdx, qword [rsi]
mov r13, rax
mov rax, qword [0x004675e0]
mov qword [r13], rax
lea rax, [0x0045f65d]
mov qword [r13 + 0x10], rax
cmp rbx, rdx
jge 0x4321ec
movzx ecx, byte [rsi + rbx + 0x10]
call fcn.0044146e
mov rcx, rbx
mov r14, rax
call fcn.0044146e
mov r15, rax
xor eax, eax
test r14, r14
je 0x4329f7
mov rax, qword [r14]
test r15, r15
je 0x4329ff
mov rdi, qword [r15]
lea rcx, [rdi + rax + 0x38]
call fcn.0043e9f1
lea rdx, [0x0045fae0]
mov rdi, rax
mov rcx, rax
call fcn.00409420
mov dl, byte [rsi + rbx + 0x10]
mov rax, qword [rdi]
mov rcx, rdi
mov byte [rdi + rax + 0x10], dl
lea rdx, [0x0045fac0]
mov byte [rdi + rax + 0x11], 0
inc rax
mov qword [rdi], rax
call fcn.00409420
mov rdx, r14
mov rcx, rdi
call fcn.004152d9
lea rdx, [0x0045faa0]
mov rcx, rdi
call fcn.00409420
mov rdx, r15
mov rcx, rdi
call fcn.004152d9
lea rdx, [0x0045fa80]
mov rcx, rdi
call fcn.00409420
lea rcx, [r13 + 0x18]
mov rdx, rdi
call fcn.00407bf9
lea rcx, [r13 + 8]
xor edx, edx
call fcn.00407bf9
lea r9, str.base64.nim
lea r8, str.decode
mov rcx, r13
mov qword [rsp + 0x20], 0xe9
lea rdx, [0x0045f65d]
call fcn.0044073e
add rbx, 1
jo 0x432163
or rdx, 0xffffffffffffffff
cmp qword [rsp + 0x38], 0
je 0x432f45
mov rax, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x30]
cmp rsi, qword [rax]
jl 0x432ae5
mov rdx, qword [rax]
dec rdx
jmp 0x432f45
mov rax, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x30]
shl r12d, 2
shr bpl, 4
or ebp, r12d
mov byte [rax + rsi + 0x10], bpl
mov rax, rsi
inc rax
js 0x432163
cmp rax, rsi
jb 0x432163
mov qword [rsp + 0x30], rax
test rax, rax
jns 0x432f9b
movabs r8, 0x7fffffffffffffff
xor edx, edx
mov rcx, qword [rsp + 0x30]
jmp 0x432f96
mov rdx, qword [rsi]
test rbx, rbx
js 0x4321ec
cmp rdx, rbx
jle 0x4321ec
movzx eax, byte [rsi + rbx + 0x10]
lea r12, [0x0045fb20]
mov r13b, byte [r12 + rax]
cmp r13b, 0xff
jne 0x432c79
mov rcx, qword [0x004673b0]
mov edx, 0x30
call fcn.0043e9c9
mov rdx, qword [rsi]
mov rbp, rax
mov rax, qword [0x004675e0]
mov qword [rbp], rax
lea rax, [0x0045f65d]
mov qword [rbp + 0x10], rax
cmp rbx, rdx
jge 0x4321ec
movzx ecx, byte [rsi + rbx + 0x10]
call fcn.0044146e
mov rcx, rbx
mov r14, rax
call fcn.0044146e
mov r15, rax
xor eax, eax
test r14, r14
je 0x432bbf
mov rax, qword [r14]
test r15, r15
je 0x432bc7
mov rdi, qword [r15]
lea rcx, [rdi + rax + 0x38]
call fcn.0043e9f1
lea rdx, [0x0045fae0]
mov rdi, rax
mov rcx, rax
call fcn.00409420
mov dl, byte [rsi + rbx + 0x10]
mov rax, qword [rdi]
mov rcx, rdi
mov byte [rdi + rax + 0x10], dl
lea rdx, [0x0045fac0]
mov byte [rdi + rax + 0x11], 0
inc rax
mov qword [rdi], rax
call fcn.00409420
mov rdx, r14
mov rcx, rdi
call fcn.004152d9
lea rdx, [0x0045faa0]
mov rcx, rdi
call fcn.00409420
mov rdx, r15
mov rcx, rdi
call fcn.004152d9
lea rdx, [0x0045fa80]
mov rcx, rdi
call fcn.00409420
lea rcx, [rbp + 0x18]
mov rdx, rdi
call fcn.00407bf9
lea rcx, [rbp + 8]
xor edx, edx
call fcn.00407bf9
lea r9, str.base64.nim
lea r8, str.decode
mov rcx, rbp
mov qword [rsp + 0x20], 0xe9
lea rdx, [0x0045f65d]
call fcn.0044073e
xor edi, edi
add rbx, 1
seto dil
jo 0x432163
test rbx, rbx
js 0x432c93
cmp rbx, qword [rsi]
jl 0x432c9b
mov rdx, qword [rsi]
jmp 0x4321ec
movzx eax, byte [rsi + rbx + 0x10]
movzx ebp, byte [r12 + rax]
cmp bpl, 0xff
jne 0x432dca
mov rcx, qword [0x004673b0]
mov edx, 0x30
call fcn.0043e9c9
mov rdx, qword [rsi]
mov r14, rax
mov rax, qword [0x004675e0]
mov qword [r14], rax
lea rax, [0x0045f65d]
mov qword [r14 + 0x10], rax
cmp rbx, rdx
jge 0x4321ec
movzx ecx, byte [rsi + rbx + 0x10]
call fcn.0044146e
mov rcx, rbx
mov r15, rax
call fcn.0044146e
mov r8, rax
xor eax, eax
test r15, r15
je 0x432d06
mov rax, qword [r15]
test r8, r8
je 0x432d0e
mov rdi, qword [r8]
lea rcx, [rdi + rax + 0x38]
mov qword [rsp + 0x40], r8
call fcn.0043e9f1
lea rdx, [0x0045fae0]
mov rdi, rax
mov rcx, rax
call fcn.00409420
mov dl, byte [rsi + rbx + 0x10]
mov rax, qword [rdi]
mov rcx, rdi
mov byte [rdi + rax + 0x10], dl
lea rdx, [0x0045fac0]
mov byte [rdi + rax + 0x11], 0
inc rax
mov qword [rdi], rax
call fcn.00409420
mov rdx, r15
mov rcx, rdi
call fcn.004152d9
lea rdx, [0x0045faa0]
mov rcx, rdi
call fcn.00409420
mov r8, qword [rsp + 0x40]
mov rcx, rdi
mov rdx, r8
call fcn.004152d9
lea rdx, [0x0045fa80]
mov rcx, rdi
call fcn.00409420
lea rcx, [r14 + 0x18]
mov rdx, rdi
call fcn.00407bf9
lea rcx, [r14 + 8]
xor edx, edx
call fcn.00407bf9
lea r9, str.base64.nim
lea r8, str.decode
mov rcx, r14
mov qword [rsp + 0x20], 0xe9
lea rdx, [0x0045f65d]
call fcn.0044073e
xor edi, edi
add rbx, 1
seto dil
jo 0x432163
mov rdx, qword [rsi]
test rbx, rbx
js 0x4321ec
cmp rbx, rdx
jge 0x4321ec
movzx eax, byte [rsi + rbx + 0x10]
mov r12b, byte [r12 + rax]
cmp r12b, 0xff
jne 0x432f1d
mov rcx, qword [0x004673b0]
mov edx, 0x30
call fcn.0043e9c9
mov rdx, qword [rsi]
mov r14, rax
mov rax, qword [0x004675e0]
mov qword [r14], rax
lea rax, [0x0045f65d]
mov qword [r14 + 0x10], rax
cmp rbx, rdx
jge 0x4321ec
movzx ecx, byte [rsi + rbx + 0x10]
call fcn.0044146e
mov rcx, rbx
mov r15, rax
call fcn.0044146e
mov r8, rax
xor eax, eax
test r15, r15
je 0x432e59
mov rax, qword [r15]
test r8, r8
je 0x432e61
mov rdi, qword [r8]
lea rcx, [rdi + rax + 0x38]
mov qword [rsp + 0x40], r8
call fcn.0043e9f1
lea rdx, [0x0045fae0]
mov rdi, rax
mov rcx, rax
call fcn.00409420
mov dl, byte [rsi + rbx + 0x10]
mov rax, qword [rdi]
mov rcx, rdi
mov byte [rdi + rax + 0x10], dl
lea rdx, [0x0045fac0]
mov byte [rdi + rax + 0x11], 0
inc rax
mov qword [rdi], rax
call fcn.00409420
mov rdx, r15
mov rcx, rdi
call fcn.004152d9
lea rdx, [0x0045faa0]
mov rcx, rdi
call fcn.00409420
mov r8, qword [rsp + 0x40]
mov rcx, rdi
mov rdx, r8
call fcn.004152d9
lea rdx, [0x0045fa80]
mov rcx, rdi
call fcn.00409420
lea rcx, [r14 + 0x18]
mov rdx, rdi
call fcn.00407bf9
lea rcx, [r14 + 8]
xor edx, edx
call fcn.00407bf9
lea r9, str.base64.nim
lea r8, str.decode
mov rcx, r14
mov qword [rsp + 0x20], 0xe9
lea rdx, [0x0045f65d]
call fcn.0044073e
add rbx, 1
jo 0x432163
or rdx, 0xffffffffffffffff
cmp qword [rsp + 0x38], 0
je 0x432f45
mov rax, qword [rsp + 0x38]
mov rax, qword [rax]
add rdx, rax
cmp qword [rsp + 0x30], rax
jl 0x432f4f
mov rcx, qword [rsp + 0x30]
jmp 0x4321f2
mov rbx, qword [rsp + 0x30]
mov rcx, rbp
shl r13d, 2
mov rsi, qword [rsp + 0x38]
sar rcx, 4
or r13d, ecx
lea rcx, [rbx + 1]
mov byte [rsi + rbx + 0x10], r13b
cmp rax, rcx
jle 0x4321f2
shl rbp, 4
shr r12b, 2
mov rax, qword [rsp + 0x38]
add qword [rsp + 0x30], 2
or ebp, r12d
mov byte [rax + rcx + 0x10], bpl
jmp 0x432f9b
call fcn.004400b2
mov rdx, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp fcn.0043ea3a
xor eax, eax
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret