Function at 0x140012c00
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x88
mov rsi, rcx
test rcx, rcx
je 0x140013b29
mov rax, qword [rcx]
test rax, rax
je 0x140013b29
imul rbx, rax, 3
jo 0x140014b26
test rbx, rbx
lea rax, [rbx + 3]
cmovns rax, rbx
sar rax, 2
add rax, 6
mov r12, rax
js 0x140013c48
movabs rdi, 0xdffffffeffffdbff
mov rdx, r12
xor ecx, ecx
call sym.setLengthStr
mov qword [rsp + 0x38], rax
mov rax, qword [rsi]
mov rbp, rax
mov rbx, rbp
xor r12d, r12d
sub rbx, 1
jo 0x140014aad
mov rdx, qword [rsi]
test rbx, rbx
js 0x140012c8d
cmp rbx, rdx
jl 0x140012c99
sub rdx, 1
mov rcx, rbx
call sym.raiseIndexError2
movzx eax, byte [rsi + rbx + 0x10]
cmp al, 0x3d
jbe 0x140012f90
mov qword [rsp + 0x78], rbp
sub rbp, 4
mov qword [rsp + 0x50], rbp
jo 0x140014aef
cmp qword [rsp + 0x50], 0
js 0x14001407f
lea rax, [0x140023cc0]
cmp qword [rsp + 0x38], 0
mov qword [rsp + 0x48], 0
movabs r13, 0xfffffffeffffdbff
mov qword [rsp + 0x40], rax
setne byte [rsp + 0x5f]
xor ebx, ebx
nop word [rax + rax]
mov rdx, qword [rsi]
test rbx, rbx
js 0x140012d05
cmp rbx, rdx
jl 0x140012d11
sub rdx, 1
mov rcx, rbx
call sym.raiseIndexError2
movzx eax, byte [rsi + rbx + 0x10]
cmp al, 0x20
jbe 0x140012f70
mov rdx, qword [rsi]
test rbx, rbx
js 0x140013750
cmp rbx, rdx
jl 0x1400134f0
sub rdx, 1
mov rcx, rbx
call sym.raiseIndexError2
movzx eax, byte [rsi + rbx + 0x10]
mov rdi, qword [rsp + 0x40]
movzx eax, byte [rdi + rax]
cmp al, 0xff
je 0x140013501
shl eax, 2
mov byte [rsp + 0x5e], al
add rbx, 1
jo 0x140014b1c
mov rdx, qword [rsi]
test rbx, rbx
js 0x140013258
cmp rbx, rdx
jge 0x140013258
movzx eax, byte [rsi + rbx + 0x10]
mov rdi, qword [rsp + 0x40]
movzx edi, byte [rdi + rax]
cmp rdi, 0xff
je 0x140013acd
mov rbp, rdi
shl edi, 4
sar rbp, 4
add rbx, 1
jo 0x140014b08
mov rdx, qword [rsi]
test rbx, rbx
js 0x140012fc0
cmp rbx, rdx
jge 0x140012fc0
movzx eax, byte [rsi + rbx + 0x10]
mov rcx, qword [rsp + 0x40]
movzx eax, byte [rcx + rax]
cmp rax, 0xff
je 0x140013a9f
mov r14, rax
mov r15d, eax
sar r14, 2
shl r15d, 6
add rbx, 1
jo 0x140014b12
mov rdx, qword [rsi]
test rbx, rbx
js 0x1400137b8
cmp rbx, rdx
jl 0x140012e0e
sub rdx, 1
mov rcx, rbx
call sym.raiseIndexError2
movzx eax, byte [rsi + rbx + 0x10]
mov rcx, qword [rsp + 0x40]
movzx r12d, byte [rcx + rax]
cmp r12b, 0xff
je 0x140013820
or r12d, r15d
add rbx, 1
mov r15, rbx
jo 0x140013730
mov rax, qword [rsp + 0x48]
test rax, rax
js 0x1400134c0
cmp byte [rsp + 0x5f], 0
je 0x1400134c0
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rcx]
cmp rdx, rax
jle 0x1400134d4
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x38]
or bpl, byte [rsp + 0x5e]
mov byte [rcx + rax + 0x10], bpl
mov rbp, rax
add rbp, 1
jo 0x140014b44
mov rax, qword [rsp + 0x38]
mov rdx, qword [rax]
test rbp, rbp
js 0x140012e94
cmp rbp, rdx
jl 0x140012ea0
sub rdx, 1
mov rcx, rbp
call sym.raiseIndexError2
mov rax, qword [rsp + 0x38]
or edi, r14d
mov byte [rax + rbp + 0x10], dil
mov rdi, rbp
add rdi, 1
jo 0x140014b3a
mov rax, qword [rsp + 0x38]
mov rdx, qword [rax]
test rdi, rdi
js 0x140012ecc
cmp rdi, rdx
jl 0x140012ed8
sub rdx, 1
mov rcx, rdi
call sym.raiseIndexError2
mov rax, qword [rsp + 0x38]
mov byte [rax + rdi + 0x10], r12b
add rdi, 1
mov qword [rsp + 0x48], rdi
jo 0x140013740
cmp qword [rsp + 0x50], r15
jge 0x140012cf8
mov rdi, rbx
sub rdi, qword [rsp + 0x78]
jo 0x140014b30
mov rdx, rdi
sar rdx, 0x3f
shr rdx, 0x3e
lea rax, [rdi + rdx]
and eax, 3
sub rax, rdx
mov rdx, rax
neg rdx
cmovns rax, rdx
cmp rax, 2
je 0x140013b3f
cmp rax, 3
je 0x140013c61
cmp qword [rsp + 0x48], 0
js 0x140013c2d
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x38]
add rsp, 0x88
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp sym.setLengthStr
bt r13, rax
jb 0x140012d1e
add rbx, 1
jno 0x140012cf8
call sym.raiseOverflow
jmp 0x140012cf8
bt rdi, rax
jb 0x140012ca6
test r12, r12
jne 0x140012fb0
mov rbp, rbx
jmp 0x140012c70
call sym.raiseOverflow
jmp 0x140012f9f
mov rcx, rbx
sub rdx, 1
call sym.raiseIndexError2
movzx eax, byte [rsi + rbx + 0x10]
mov rcx, qword [rsp + 0x40]
movzx eax, byte [rcx + rax]
cmp rax, 0xff
jne 0x140012dd9
mov rcx, qword [0x14007e940]
mov edx, 0x30
lea r12, str.ValueError
call sym.newObj
mov r14, rax
mov rax, qword [0x14007e980]
mov qword [r14 + 0x10], r12
mov qword [r14], rax
test rbx, rbx
js 0x140013b12
mov rax, qword [rsi]
cmp rbx, rax
jl 0x140013040
lea rdx, [rax - 1]
mov rcx, rbx
call sym.raiseIndexError2
mov rax, qword [rsi]
cmp rbx, rax
jl 0x140013040
lea rdx, [rax - 1]
mov rcx, rbx
call sym.raiseIndexError2
movzx ecx, byte [rsi + rbx + 0x10]
call sym.dollar___systemZdollars_3
mov rcx, rbx
mov qword [rsp + 0x60], rax
call sym.dollar___systemZdollars_3
mov r10, qword [rsp + 0x60]
xor ecx, ecx
mov r9, rax
test r10, r10
je 0x140013069
mov rcx, qword [r10]
test r9, r9
je 0x140013071
add rcx, qword [r9]
add rcx, 0x38
mov qword [rsp + 0x68], r9
mov qword [rsp + 0x60], r10
call sym.rawNewString
mov r8d, 0x60
mov r10, qword [rsp + 0x60]
movabs rdx, 0x2064696c61766e49
mov r15, rax
mov rax, qword [rax]
mov r9, qword [rsp + 0x68]
movabs rcx, 0x6620343665736162
test r10, r10
lea rax, [r15 + rax + 0x10]
mov qword [rax], rdx
movabs rdx, 0x68632074616d726f
mov qword [rax + 8], rcx
movabs rcx, 0x2072657463617261
mov qword [rax + 0x10], rdx
mov qword [rax + 0x18], rcx
mov word [rax + 0x20], r8w
mov rax, qword [r15]
lea rdx, [rax + 0x21]
mov qword [r15], rdx
movzx ecx, byte [rsi + rbx + 0x10]
lea rdx, [rax + 0x22]
mov byte [r15 + rax + 0x31], cl
movabs rcx, 0x2064726f282060
mov qword [r15], rdx
mov qword [r15 + rax + 0x32], rcx
mov rdx, qword [r15]
lea rax, [rdx + 7]
mov qword [r15], rax
je 0x14001313c
mov rax, qword [r10]
lea rcx, [r15 + rdx + 0x17]
lea rdx, [r10 + 0x10]
lea r8, [rax + 1]
call sym.memcpy
mov r10, qword [rsp + 0x60]
mov r9, qword [rsp + 0x68]
mov rax, qword [r10]
add rax, qword [r15]
mov qword [r15], rax
movabs rcx, 0x636f6c2074612029
lea rax, [r15 + rax + 0x10]
mov qword [rax], rcx
mov ecx, 0x206e
mov dword [rax + 8], 0x6f697461
mov word [rax + 0xc], cx
mov byte [rax + 0xe], 0
mov rdx, qword [r15]
lea rax, [rdx + 0xe]
mov qword [r15], rax
test r9, r9
je 0x140013199
mov rax, qword [r9]
lea rcx, [r15 + rdx + 0x1e]
lea rdx, [r9 + 0x10]
mov qword [rsp + 0x60], r9
lea r8, [rax + 1]
call sym.memcpy
mov r9, qword [rsp + 0x60]
mov rax, qword [r9]
add rax, qword [r15]
mov qword [r15], rax
mov r8d, 0x2e
mov word [r15 + rax + 0x10], r8w
add qword [r15], 1
add qword [r15 - 0x10], 8
mov rax, qword [r14 + 0x18]
test rax, rax
je 0x1400131e0
mov rcx, qword [rax - 0x10]
lea r8, [rax - 0x10]
lea rdx, [rcx - 8]
mov qword [rax - 0x10], rdx
cmp rdx, 7
ja 0x1400131e0
mov rax, qword [str.___t_]
mov rdx, r8
lea rcx, [rax + 0x18]
call sym.addZCT__system_5314
mov rax, qword [r14 + 8]
mov qword [r14 + 0x18], r15
test rax, rax
je 0x140013216
mov rcx, qword [rax - 0x10]
lea r8, [rax - 0x10]
lea rdx, [rcx - 8]
mov qword [rax - 0x10], rdx
cmp rdx, 7
ja 0x140013216
mov rax, qword [str.___t_]
mov rdx, r8
lea rcx, [rax + 0x18]
call sym.addZCT__system_5314
mov qword [r14 + 8], 0
mov rcx, r14
mov rdx, r12
lea r9, str.base64.nim
mov qword [rsp + 0x20], 0xe9
lea r8, str.decode
mov r15d, 0xffffffc0
mov r14d, 0x3f
call sym.raiseExceptionEx
jmp 0x140012de7
sub rdx, 1
mov rcx, rbx
call sym.raiseIndexError2
movzx eax, byte [rsi + rbx + 0x10]
mov rdi, qword [rsp + 0x40]
movzx edi, byte [rdi + rax]
cmp rdi, 0xff
jne 0x140012d96
mov rcx, qword [0x14007e940]
mov edx, 0x30
lea r12, str.ValueError
call sym.newObj
mov r14, rax
mov rax, qword [0x14007e980]
mov qword [r14 + 0x10], r12
mov qword [r14], rax
test rbx, rbx
js 0x140013afb
mov rax, qword [rsi]
cmp rbx, rax
jl 0x1400132d9
lea rdx, [rax - 1]
mov rcx, rbx
call sym.raiseIndexError2
mov rax, qword [rsi]
cmp rbx, rax
jl 0x1400132d9
lea rdx, [rax - 1]
mov rcx, rbx
call sym.raiseIndexError2
movzx ecx, byte [rsi + rbx + 0x10]
call sym.dollar___systemZdollars_3
mov rcx, rbx
mov r15, rax
call sym.dollar___systemZdollars_3
xor ecx, ecx
mov rbp, rax
test r15, r15
je 0x1400132fb
mov rcx, qword [r15]
test rbp, rbp
je 0x140013304
add rcx, qword [rbp]
add rcx, 0x38
call sym.rawNewString
mov r10d, 0x60
movabs rdx, 0x2064696c61766e49
movabs rcx, 0x6620343665736162
mov rdi, rax
mov rax, qword [rax]
lea rax, [rdi + rax + 0x10]
mov qword [rax], rdx
movabs rdx, 0x68632074616d726f
mov qword [rax + 8], rcx
movabs rcx, 0x2072657463617261
mov qword [rax + 0x10], rdx
mov qword [rax + 0x18], rcx
mov word [rax + 0x20], r10w
mov rax, qword [rdi]
lea rdx, [rax + 0x21]
mov qword [rdi], rdx
movzx ecx, byte [rsi + rbx + 0x10]
lea rdx, [rax + 0x22]
mov byte [rdi + rax + 0x31], cl
movabs rcx, 0x2064726f282060
mov qword [rdi], rdx
mov qword [rdi + rax + 0x32], rcx
mov rdx, qword [rdi]
lea rax, [rdx + 7]
mov qword [rdi], rax
test r15, r15
je 0x1400133b0
mov rax, qword [r15]
lea rcx, [rdi + rdx + 0x17]
lea rdx, [r15 + 0x10]
lea r8, [rax + 1]
call sym.memcpy
mov rax, qword [r15]
add rax, qword [rdi]
mov qword [rdi], rax
lea rax, [rdi + rax + 0x10]
mov r9d, 0x206e
movabs rcx, 0x636f6c2074612029
mov qword [rax], rcx
mov dword [rax + 8], 0x6f697461
mov word [rax + 0xc], r9w
mov byte [rax + 0xe], 0
mov rdx, qword [rdi]
lea rax, [rdx + 0xe]
mov qword [rdi], rax
test rbp, rbp
je 0x140013407
mov rax, qword [rbp]
lea rcx, [rdi + rdx + 0x1e]
lea rdx, [rbp + 0x10]
lea r8, [rax + 1]
call sym.memcpy
mov rax, qword [rbp]
add rax, qword [rdi]
mov qword [rdi], rax
mov ecx, 0x2e
mov word [rdi + rax + 0x10], cx
add qword [rdi], 1
add qword [rdi - 0x10], 8
mov rax, qword [r14 + 0x18]
test rax, rax
je 0x14001344c
mov rcx, qword [rax - 0x10]
lea r8, [rax - 0x10]
lea rdx, [rcx - 8]
mov qword [rax - 0x10], rdx
cmp rdx, 7
ja 0x14001344c
mov rax, qword [str.___t_]
mov rdx, r8
lea rcx, [rax + 0x18]
call sym.addZCT__system_5314
mov rax, qword [r14 + 8]
mov qword [r14 + 0x18], rdi
test rax, rax
je 0x140013482
mov rdi, qword [rax - 0x10]
lea r8, [rax - 0x10]
lea rdx, [rdi - 8]
mov qword [rax - 0x10], rdx
cmp rdx, 7
ja 0x140013482
mov rax, qword [str.___t_]
mov rdx, r8
lea rcx, [rax + 0x18]
call sym.addZCT__system_5314
mov rdx, r12
mov rcx, r14
mov edi, 0xfffffff0
mov ebp, 0xf
mov qword [r14 + 8], 0
lea r9, str.base64.nim
lea r8, str.decode
mov qword [rsp + 0x20], 0xe9
call sym.raiseExceptionEx
jmp 0x140012da0
mov rax, qword [rsp + 0x38]
mov rdx, 0xffffffffffffffff
test rax, rax
je 0x1400134d8
mov rdx, qword [rax]
sub rdx, 1
mov rcx, qword [rsp + 0x48]
call sym.raiseIndexError2
jmp 0x140012e61
mov rdi, qword [rsp + 0x40]
movzx eax, byte [rdi + rax]
cmp al, 0xff
jne 0x140012d55
mov rcx, qword [0x14007e940]
mov edx, 0x30
lea r12, str.ValueError
call sym.newObj
mov r14, rax
mov rax, qword [0x14007e980]
mov qword [r14 + 0x10], r12
mov qword [r14], rax
mov rax, qword [rsi]
cmp rbx, rax
jl 0x140013552
lea rdx, [rax - 1]
mov rcx, rbx
call sym.raiseIndexError2
mov rax, qword [rsi]
cmp rbx, rax
jl 0x140013552
lea rdx, [rax - 1]
mov rcx, rbx
call sym.raiseIndexError2
movzx ecx, byte [rsi + rbx + 0x10]
call sym.dollar___systemZdollars_3
mov rcx, rbx
mov r15, rax
call sym.dollar___systemZdollars_3
xor ecx, ecx
mov rbp, rax
test r15, r15
je 0x140013574
mov rcx, qword [r15]
test rbp, rbp
je 0x14001357d
add rcx, qword [rbp]
add rcx, 0x38
call sym.rawNewString
movabs rdx, 0x2064696c61766e49
movabs rcx, 0x6620343665736162
mov rdi, rax
mov rax, qword [rax]
lea rax, [rdi + rax + 0x10]
mov qword [rax], rdx
movabs rdx, 0x68632074616d726f
mov qword [rax + 8], rcx
movabs rcx, 0x2072657463617261
mov qword [rax + 0x10], rdx
mov edx, 0x60
mov word [rax + 0x20], dx
mov qword [rax + 0x18], rcx
mov rax, qword [rdi]
lea rdx, [rax + 0x21]
mov qword [rdi], rdx
movzx ecx, byte [rsi + rbx + 0x10]
lea rdx, [rax + 0x22]
mov byte [rdi + rax + 0x31], cl
movabs rcx, 0x2064726f282060
mov qword [rdi], rdx
mov qword [rdi + rax + 0x32], rcx
mov rdx, qword [rdi]
lea rax, [rdx + 7]
mov qword [rdi], rax
test r15, r15
je 0x140013627
mov rax, qword [r15]
lea rcx, [rdi + rdx + 0x17]
lea rdx, [r15 + 0x10]
lea r8, [rax + 1]
call sym.memcpy
mov rax, qword [r15]
add rax, qword [rdi]
mov qword [rdi], rax
lea rax, [rdi + rax + 0x10]
mov r11d, 0x206e
movabs rcx, 0x636f6c2074612029
mov qword [rax], rcx
mov dword [rax + 8], 0x6f697461
mov word [rax + 0xc], r11w
mov byte [rax + 0xe], 0
mov rdx, qword [rdi]
lea rax, [rdx + 0xe]
mov qword [rdi], rax
test rbp, rbp
je 0x14001367e
mov rax, qword [rbp]
lea rcx, [rdi + rdx + 0x1e]
lea rdx, [rbp + 0x10]
lea r8, [rax + 1]
call sym.memcpy
mov rax, qword [rbp]
add rax, qword [rdi]
mov qword [rdi], rax
mov edx, 0x2e
mov word [rdi + rax + 0x10], dx
add qword [rdi], 1
add qword [rdi - 0x10], 8
mov rax, qword [r14 + 0x18]
test rax, rax
je 0x1400136c3
mov rcx, qword [rax - 0x10]
lea r8, [rax - 0x10]
lea rdx, [rcx - 8]
mov qword [rax - 0x10], rdx
cmp rdx, 7
ja 0x1400136c3
mov rax, qword [str.___t_]
mov rdx, r8
lea rcx, [rax + 0x18]
call sym.addZCT__system_5314
mov rax, qword [r14 + 8]
mov qword [r14 + 0x18], rdi
test rax, rax
je 0x1400136f9
mov rdi, qword [rax - 0x10]
lea r8, [rax - 0x10]
lea rdx, [rdi - 8]
mov qword [rax - 0x10], rdx
cmp rdx, 7
ja 0x1400136f9
mov rax, qword [str.___t_]
mov rdx, r8
lea rcx, [rax + 0x18]
call sym.addZCT__system_5314
mov qword [r14 + 8], 0
lea r9, str.base64.nim
mov rdx, r12
mov rcx, r14
mov qword [rsp + 0x20], 0xe9
lea r8, str.decode
call sym.raiseExceptionEx
mov byte [rsp + 0x5e], 0xfc
jmp 0x140012d5c
call sym.raiseOverflow
jmp 0x140012e37
call sym.raiseOverflow
jmp 0x140012ef1
sub rdx, 1
mov rcx, rbx
call sym.raiseIndexError2
movzx eax, byte [rsi + rbx + 0x10]
mov rdi, qword [rsp + 0x40]
movzx eax, byte [rdi + rax]
cmp al, 0xff
jne 0x140012d55
mov rcx, qword [0x14007e940]
mov edx, 0x30
lea r12, str.ValueError
call sym.newObj
mov rcx, rbx
mov r14, rax
mov rax, qword [0x14007e980]
mov qword [r14 + 0x10], r12
mov qword [r14], rax
mov rax, qword [rsi]
lea rdx, [rax - 1]
call sym.raiseIndexError2
mov rax, qword [rsi]
jmp 0x140013546
mov rcx, rbx
sub rdx, 1
call sym.raiseIndexError2
movzx eax, byte [rsi + rbx + 0x10]
mov rcx, qword [rsp + 0x40]
movzx r12d, byte [rcx + rax]
cmp r12b, 0xff
jne 0x140012e27
mov rcx, qword [0x14007e940]
mov edx, 0x30
lea r12, str.ValueError
call sym.newObj
mov rcx, rbx
mov r15, rax
mov rax, qword [0x14007e980]
mov qword [r15 + 0x10], r12
mov qword [r15], rax
mov rax, qword [rsi]
lea rdx, [rax - 1]
call sym.raiseIndexError2
mov rax, qword [rsi]
jmp 0x140013865
mov rcx, qword [0x14007e940]
mov edx, 0x30
lea r12, str.ValueError
call sym.newObj
mov r15, rax
mov rax, qword [0x14007e980]
mov qword [r15 + 0x10], r12
mov qword [r15], rax
mov rax, qword [rsi]
cmp rbx, rax
jl 0x140013871
lea rdx, [rax - 1]
mov rcx, rbx
call sym.raiseIndexError2
mov rax, qword [rsi]
cmp rbx, rax
jl 0x140013871
lea rdx, [rax - 1]
mov rcx, rbx
call sym.raiseIndexError2
movzx ecx, byte [rsi + rbx + 0x10]
call sym.dollar___systemZdollars_3
mov rcx, rbx
mov qword [rsp + 0x60], rax
call sym.dollar___systemZdollars_3
mov r11, qword [rsp + 0x60]
xor ecx, ecx
mov r10, rax
test r11, r11
je 0x14001389a
mov rcx, qword [r11]
test r10, r10
je 0x1400138a2
add rcx, qword [r10]
add rcx, 0x38
mov qword [rsp + 0x68], r10
mov qword [rsp + 0x60], r11
call sym.rawNewString
mov r11, qword [rsp + 0x60]
mov r10, qword [rsp + 0x68]
movabs rdx, 0x2064696c61766e49
movabs rcx, 0x6620343665736162
mov r9, rax
mov rax, qword [rax]
test r11, r11
lea rax, [r9 + rax + 0x10]
mov qword [rax], rdx
movabs rdx, 0x68632074616d726f
mov qword [rax + 8], rcx
movabs rcx, 0x2072657463617261
mov qword [rax + 0x10], rdx
mov edx, 0x60
mov word [rax + 0x20], dx
mov qword [rax + 0x18], rcx
mov rax, qword [r9]
lea rdx, [rax + 0x21]
mov qword [r9], rdx
movzx ecx, byte [rsi + rbx + 0x10]
lea rdx, [rax + 0x22]
mov byte [r9 + rax + 0x31], cl
movabs rcx, 0x2064726f282060
mov qword [r9], rdx
mov qword [r9 + rax + 0x32], rcx
mov rdx, qword [r9]
lea rax, [rdx + 7]
mov qword [r9], rax
je 0x14001397a
mov rax, qword [r11]
lea rcx, [r9 + rdx + 0x17]
lea rdx, [r11 + 0x10]
mov qword [rsp + 0x70], r10
mov qword [rsp + 0x68], r9
lea r8, [rax + 1]
call sym.memcpy
mov r9, qword [rsp + 0x68]
mov r11, qword [rsp + 0x60]
mov r10, qword [rsp + 0x70]
mov rax, qword [r11]
add rax, qword [r9]
mov qword [r9], rax
lea rax, [r9 + rax + 0x10]
mov r11d, 0x206e
movabs rcx, 0x636f6c2074612029
mov qword [rax], rcx
mov dword [rax + 8], 0x6f697461
mov word [rax + 0xc], r11w
mov byte [rax + 0xe], 0
mov rdx, qword [r9]
lea rax, [rdx + 0xe]
mov qword [r9], rax
test r10, r10
je 0x1400139e3
mov rax, qword [r10]
lea rcx, [r9 + rdx + 0x1e]
lea rdx, [r10 + 0x10]
mov qword [rsp + 0x68], r9
mov qword [rsp + 0x60], r10
lea r8, [rax + 1]
call sym.memcpy
mov r9, qword [rsp + 0x68]
mov r10, qword [rsp + 0x60]
mov rax, qword [r10]
add rax, qword [r9]
mov qword [r9], rax
mov r10d, 0x2e
mov word [r9 + rax + 0x10], r10w
add qword [r9], 1
add qword [r9 - 0x10], 8
mov rax, qword [r15 + 0x18]
test rax, rax
je 0x140013a34
mov rcx, qword [rax - 0x10]
lea r8, [rax - 0x10]
lea rdx, [rcx - 8]
mov qword [rax - 0x10], rdx
cmp rdx, 7
ja 0x140013a34
mov rax, qword [str.___t_]
mov rdx, r8
mov qword [rsp + 0x60], r9
lea rcx, [rax + 0x18]
call sym.addZCT__system_5314
mov r9, qword [rsp + 0x60]
mov rax, qword [r15 + 8]
mov qword [r15 + 0x18], r9
test rax, rax
je 0x140013a6a
mov rcx, qword [rax - 0x10]
lea r8, [rax - 0x10]
lea rdx, [rcx - 8]
mov qword [rax - 0x10], rdx
cmp rdx, 7
ja 0x140013a6a
mov rax, qword [str.___t_]
mov rdx, r8
lea rcx, [rax + 0x18]
call sym.addZCT__system_5314
mov qword [r15 + 8], 0
mov rdx, r12
mov rcx, r15
lea r9, str.base64.nim
mov qword [rsp + 0x20], 0xe9
lea r8, str.decode
mov r12d, 0xffffffff
call sym.raiseExceptionEx
jmp 0x140012e2a
mov rcx, qword [0x14007e940]
mov edx, 0x30
lea r12, str.ValueError
call sym.newObj
mov r14, rax
mov rax, qword [0x14007e980]
mov qword [r14 + 0x10], r12
mov qword [r14], rax
jmp 0x140013018
mov rcx, qword [0x14007e940]
mov edx, 0x30
lea r12, str.ValueError
call sym.newObj
mov r14, rax
mov rax, qword [0x14007e980]
mov qword [r14 + 0x10], r12
mov qword [r14], rax
jmp 0x1400132b1
mov rax, qword [rsi]
mov rcx, rbx
lea rdx, [rax - 1]
call sym.raiseIndexError2
mov rax, qword [rsi]
jmp 0x1400132cd
mov rax, qword [rsi]
mov rcx, rbx
lea rdx, [rax - 1]
call sym.raiseIndexError2
mov rax, qword [rsi]
jmp 0x140013034
xor eax, eax
add rsp, 0x88
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rsi]
cmp rbx, rax
jl 0x140013b53
lea rdx, [rax - 1]
mov rcx, rbx
call sym.raiseIndexError2
lea rax, [0x140023cc0]
mov rdi, rax
mov qword [rsp + 0x40], rax
movzx eax, byte [rsi + rbx + 0x10]
movzx ebp, byte [rdi + rax]
cmp bpl, 0xff
je 0x1400142f4
shl ebp, 2
mov rdi, rbx
add rdi, 1
js 0x140014ae5
cmp rdi, rbx
jb 0x140014ae5
mov rax, qword [rsi]
test rdi, rdi
js 0x14001427d
cmp rdi, rax
jl 0x140013bab
lea rdx, [rax - 1]
mov rcx, rdi
call sym.raiseIndexError2
movzx eax, byte [rsi + rdi + 0x10]
mov rcx, qword [rsp + 0x40]
movzx eax, byte [rcx + rax]
cmp rax, 0xff
je 0x14001408f
sar rax, 4
mov ebx, eax
add rdi, 1
jo 0x140014adb
mov rax, qword [rsp + 0x38]
test rax, rax
je 0x140013df2
mov rdi, qword [rsp + 0x48]
test rdi, rdi
js 0x140013df2
mov rax, qword [rax]
cmp rax, rdi
jle 0x140013e06
mov rax, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x38]
or ebx, ebp
mov byte [rdi + rax + 0x10], bl
add rax, 1
mov qword [rsp + 0x48], rax
jno 0x140012f3d
call sym.raiseOverflow
cmp qword [rsp + 0x48], 0
jns 0x140012f49
mov rcx, qword [rsp + 0x48]
xor edx, edx
movabs r8, 0x7fffffffffffffff
call sym.raiseRangeErrorI
jmp 0x140012f49
movabs r8, 0x7fffffffffffffff
xor edx, edx
mov rcx, rax
call sym.raiseRangeErrorI
jmp 0x140012c51
mov rax, qword [rsi]
cmp rbx, rax
jl 0x140013c75
lea rdx, [rax - 1]
mov rcx, rbx
call sym.raiseIndexError2
lea rax, [0x140023cc0]
mov rdi, rax
mov qword [rsp + 0x40], rax
movzx eax, byte [rsi + rbx + 0x10]
movzx ebp, byte [rdi + rax]
cmp bpl, 0xff
je 0x140014860
lea eax, [rbp*4]
mov byte [rsp + 0x50], al
mov r13, rbx
add r13, 1
js 0x140014abd
cmp r13, rbx
jb 0x140014abd
mov rax, qword [rsi]
test r13, r13
js 0x140013e19
cmp r13, rax
jge 0x140013e19
movzx eax, byte [rsi + r13 + 0x10]
mov rdi, qword [rsp + 0x40]
movzx edi, byte [rdi + rax]
cmp rdi, 0xff
je 0x140014592
mov eax, edi
mov r14, rdi
shl eax, 4
sar r14, 4
mov byte [rsp + 0x5e], al
mov rbx, r13
add rbx, 1
jo 0x140014ac7
mov rax, qword [rsi]
test rbx, rbx
js 0x1400145c0
cmp rbx, rax
jl 0x140013d23
lea rdx, [rax - 1]
mov rcx, rbx
call sym.raiseIndexError2
movzx eax, byte [rsi + rbx + 0x10]
mov rdi, qword [rsp + 0x40]
movzx eax, byte [rdi + rax]
cmp rax, 0xff
je 0x14001480b
sar rax, 2
mov esi, eax
add rbx, 1
jo 0x140014ad1
mov rdi, qword [rsp + 0x48]
test rdi, rdi
js 0x140013dcb
mov rax, qword [rsp + 0x38]
test rax, rax
je 0x140013dcb
mov rax, qword [rax]
cmp rax, rdi
jle 0x140013ddf
mov rax, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x38]
or r14b, byte [rsp + 0x50]
mov byte [rdi + rax + 0x10], r14b
add rax, 1
mov rbx, rax
jo 0x140014af9
mov rax, qword [rsp + 0x38]
mov rax, qword [rax]
test rbx, rbx
js 0x140013d9c
cmp rbx, rax
jl 0x140013da8
lea rdx, [rax - 1]
mov rcx, rbx
call sym.raiseIndexError2
mov rax, qword [rsp + 0x38]
or sil, byte [rsp + 0x5e]
mov byte [rax + rbx + 0x10], sil
add rbx, 1
mov qword [rsp + 0x48], rbx
jno 0x140012f3d
jmp 0x140013c1c
mov rax, qword [rsp + 0x38]
mov rdx, 0xffffffffffffffff
test rax, rax
je 0x140013de3
mov rax, qword [rax]
lea rdx, [rax - 1]
mov rcx, qword [rsp + 0x48]
call sym.raiseIndexError2
jmp 0x140013d69
mov rax, qword [rsp + 0x38]
mov rdx, 0xffffffffffffffff
test rax, rax
je 0x140013e0a
mov rax, qword [rax]
lea rdx, [rax - 1]
mov rcx, qword [rsp + 0x48]
call sym.raiseIndexError2
jmp 0x140013bfd
lea rdx, [rax - 1]
mov rcx, r13
call sym.raiseIndexError2
movzx eax, byte [rsi + r13 + 0x10]
mov rdi, qword [rsp + 0x40]
movzx edi, byte [rdi + rax]
cmp rdi, 0xff
jne 0x140013ce9
mov rcx, qword [0x14007e940]
mov edx, 0x30
lea r12, str.ValueError
call sym.newObj
mov r14, rax
mov rax, qword [0x14007e980]
mov qword [r14 + 0x10], r12
mov qword [r14], rax
test r13, r13
js 0x140014a8f
mov rax, qword [rsi]
cmp r13, rax
jl 0x140013e9b
lea rdx, [rax - 1]
mov rcx, r13
call sym.raiseIndexError2
mov rax, qword [rsi]
cmp r13, rax
jl 0x140013e9b
lea rdx, [rax - 1]
mov rcx, r13
call sym.raiseIndexError2
movzx ecx, byte [rsi + r13 + 0x10]
call sym.dollar___systemZdollars_3
mov rcx, r13
mov rdi, rax
call sym.dollar___systemZdollars_3
mov r15, rax
xor eax, eax
test rdi, rdi
je 0x140013ebe
mov rax, qword [rdi]
test r15, r15
je 0x140013ec6
add rax, qword [r15]
lea rcx, [rax + 0x38]
call sym.rawNewString
mov r10d, 0x60
movabs rdx, 0x2064696c61766e49
movabs rcx, 0x6620343665736162
mov rbx, rax
mov rax, qword [rax]
lea rax, [rbx + rax + 0x10]
mov qword [rax], rdx
movabs rdx, 0x68632074616d726f
mov qword [rax + 8], rcx
movabs rcx, 0x2072657463617261
mov qword [rax + 0x10], rdx
mov qword [rax + 0x18], rcx
mov word [rax + 0x20], r10w
mov rax, qword [rbx]
lea rdx, [rax + 0x21]
mov qword [rbx], rdx
movzx ecx, byte [rsi + r13 + 0x10]
lea rdx, [rax + 0x22]
mov byte [rbx + rax + 0x31], cl
movabs rcx, 0x2064726f282060
mov qword [rbx], rdx
mov qword [rbx + rax + 0x32], rcx
mov rdx, qword [rbx]
lea rax, [rdx + 7]
mov qword [rbx], rax
test rdi, rdi
je 0x140013f73
mov rax, qword [rdi]
lea rcx, [rbx + rdx + 0x17]
lea rdx, [rdi + 0x10]
lea r8, [rax + 1]
call sym.memcpy
mov rax, qword [rdi]
add rax, qword [rbx]
mov qword [rbx], rax
lea rax, [rbx + rax + 0x10]
mov r9d, 0x206e
movabs rdi, 0x636f6c2074612029
mov qword [rax], rdi
mov dword [rax + 8], 0x6f697461
mov word [rax + 0xc], r9w
mov byte [rax + 0xe], 0
mov rdx, qword [rbx]
lea rax, [rdx + 0xe]
mov qword [rbx], rax
test r15, r15
je 0x140013fc8
mov rax, qword [r15]
lea rcx, [rbx + rdx + 0x1e]
lea rdx, [r15 + 0x10]
lea r8, [rax + 1]
call sym.memcpy
mov rax, qword [r15]
add rax, qword [rbx]
mov qword [rbx], rax
mov r15d, 0x2e
mov word [rbx + rax + 0x10], r15w
add qword [rbx], 1
add qword [rbx - 0x10], 8
mov rax, qword [r14 + 0x18]
test rax, rax
je 0x14001400f
mov rdi, qword [rax - 0x10]
lea r8, [rax - 0x10]
lea rdx, [rdi - 8]
mov qword [rax - 0x10], rdx
cmp rdx, 7
ja 0x14001400f
mov rax, qword [str.___t_]
mov rdx, r8
lea rcx, [rax + 0x18]
call sym.addZCT__system_5314
mov rdx, qword [r14 + 8]
mov qword [r14 + 0x18], rbx
test rdx, rdx
je 0x140014045
mov rax, qword [rdx - 0x10]
lea r8, [rdx - 0x10]
sub rax, 8
mov qword [rdx - 0x10], rax
cmp rax, 7
ja 0x140014045
mov rax, qword [str.___t_]
mov rdx, r8
lea rcx, [rax + 0x18]
call sym.addZCT__system_5314
mov qword [r14 + 8], 0
mov rcx, r14
mov rdx, r12
lea r9, str.base64.nim
mov qword [rsp + 0x20], 0xe9
lea r8, str.decode
mov r14d, 0xf
call sym.raiseExceptionEx
mov byte [rsp + 0x5e], 0xf0
jmp 0x140013cf9
mov qword [rsp + 0x48], 0
xor ebx, ebx
jmp 0x140012efc
mov rcx, qword [0x14007e940]
mov edx, 0x30
lea r12, str.ValueError
call sym.newObj
mov r13, rax
mov rax, qword [0x14007e980]
mov qword [r13 + 0x10], r12
mov qword [r13], rax
mov rax, qword [rsi]
cmp rdi, rax
jge 0x140014569
movzx ecx, byte [rsi + rdi + 0x10]
call sym.dollar___systemZdollars_3
mov rcx, rdi
mov r15, rax
call sym.dollar___systemZdollars_3
mov r14, rax
xor eax, eax
test r15, r15
je 0x1400140e7
mov rax, qword [r15]
test r14, r14
je 0x1400140ef
add rax, qword [r14]
lea rcx, [rax + 0x38]
call sym.rawNewString
movabs rcx, 0x6620343665736162
movabs rdx, 0x2064696c61766e49
mov rbx, rax
mov rax, qword [rax]
lea rax, [rbx + rax + 0x10]
mov qword [rax + 8], rcx
movabs rcx, 0x2072657463617261
mov qword [rax], rdx
movabs rdx, 0x68632074616d726f
mov qword [rax + 0x18], rcx
mov ecx, 0x60
mov qword [rax + 0x10], rdx
mov word [rax + 0x20], cx
mov rax, qword [rbx]
lea rdx, [rax + 0x21]
mov qword [rbx], rdx
movzx ecx, byte [rsi + rdi + 0x10]
lea rdx, [rax + 0x22]
movabs rsi, 0x2064726f282060
mov byte [rbx + rax + 0x31], cl
mov qword [rbx], rdx
mov qword [rbx + rax + 0x32], rsi
mov rdx, qword [rbx]
lea rax, [rdx + 7]
mov qword [rbx], rax
test r15, r15
je 0x140014199
mov rax, qword [r15]
lea rcx, [rbx + rdx + 0x17]
lea rdx, [r15 + 0x10]
lea r8, [rax + 1]
call sym.memcpy
mov rax, qword [r15]
add rax, qword [rbx]
mov qword [rbx], rax
lea rax, [rbx + rax + 0x10]
mov edx, 0x206e
movabs rsi, 0x636f6c2074612029
mov qword [rax], rsi
mov dword [rax + 8], 0x6f697461
mov word [rax + 0xc], dx
mov byte [rax + 0xe], 0
mov rdx, qword [rbx]
lea rax, [rdx + 0xe]
mov qword [rbx], rax
test r14, r14
je 0x1400141ec
mov rax, qword [r14]
lea rcx, [rbx + rdx + 0x1e]
lea rdx, [r14 + 0x10]
lea r8, [rax + 1]
call sym.memcpy
mov rax, qword [r14]
add rax, qword [rbx]
mov qword [rbx], rax
mov esi, 0x2e
mov word [rbx + rax + 0x10], si
add qword [rbx], 1
add qword [rbx - 0x10], 8
mov rax, qword [r13 + 0x18]
test rax, rax
je 0x140014222
mov rsi, qword [rax - 0x10]
lea r8, [rax - 0x10]
lea rdx, [rsi - 8]
mov qword [rax - 0x10], rdx
cmp rdx, 7
jbe 0x140014551
mov rdx, qword [r13 + 8]
mov qword [r13 + 0x18], rbx
test rdx, rdx
je 0x140014249
mov rax, qword [rdx - 0x10]
lea r8, [rdx - 0x10]
sub rax, 8
mov qword [rdx - 0x10], rax
cmp rax, 7
jbe 0x140014539
mov qword [r13 + 8], 0
lea r9, str.base64.nim
mov rdx, r12
mov rcx, r13
mov qword [rsp + 0x20], 0xe9
lea r8, str.decode
mov ebx, 0xf
call sym.raiseExceptionEx
jmp 0x140013bcb
movabs rcx, 0x8000000000000000
lea rdx, [rax - 1]
call sym.raiseIndexError2
mov rcx, qword [rsp + 0x40]
movabs rax, 0x8000000000000010
movzx eax, byte [rsi + rax]
movzx eax, byte [rcx + rax]
cmp rax, 0xff
jne 0x140013bc5
mov rcx, qword [0x14007e940]
mov edx, 0x30
lea r12, str.ValueError
call sym.newObj
mov rcx, rdi
mov r13, rax
mov rax, qword [0x14007e980]
mov qword [r13 + 0x10], r12
mov qword [r13], rax
mov rax, qword [rsi]
lea rdx, [rax - 1]
call sym.raiseIndexError2
mov rax, qword [rsi]
jmp 0x140014581
mov rcx, qword [0x14007e940]
mov edx, 0x30
lea r12, str.ValueError
call sym.newObj
mov r13, rax
mov rax, qword [0x14007e980]
mov qword [r13 + 0x10], r12
mov qword [r13], rax
mov rax, qword [rsi]
cmp rax, rbx
jle 0x140014510
movzx ecx, byte [rsi + rbx + 0x10]
call sym.dollar___systemZdollars_3
mov rcx, rbx
mov r14, rax
call sym.dollar___systemZdollars_3
mov rbp, rax
xor eax, eax
test r14, r14
je 0x14001434c
mov rax, qword [r14]
test rbp, rbp
je 0x140014355
add rax, qword [rbp]
lea rcx, [rax + 0x38]
call sym.rawNewString
mov r9d, 0x60
movabs rdx, 0x2064696c61766e49
movabs rcx, 0x6620343665736162
mov rdi, rax
mov rax, qword [rax]
lea rax, [rdi + rax + 0x10]
mov qword [rax], rdx
movabs rdx, 0x68632074616d726f
mov qword [rax + 8], rcx
movabs rcx, 0x2072657463617261
mov qword [rax + 0x10], rdx
mov qword [rax + 0x18], rcx
mov word [rax + 0x20], r9w
mov rax, qword [rdi]
lea rdx, [rax + 0x21]
mov qword [rdi], rdx
movzx ecx, byte [rsi + rbx + 0x10]
lea rdx, [rax + 0x22]
mov byte [rdi + rax + 0x31], cl
movabs rcx, 0x2064726f282060
mov qword [rdi], rdx
mov qword [rdi + rax + 0x32], rcx
mov rdx, qword [rdi]
lea rax, [rdx + 7]
mov qword [rdi], rax
test r14, r14
je 0x140014401
mov rax, qword [r14]
lea rcx, [rdi + rdx + 0x17]
lea rdx, [r14 + 0x10]
lea r8, [rax + 1]
call sym.memcpy
mov rax, qword [r14]
add rax, qword [rdi]
mov qword [rdi], rax
lea rax, [rdi + rax + 0x10]
mov r8d, 0x206e
movabs rcx, 0x636f6c2074612029
mov qword [rax], rcx
mov dword [rax + 8], 0x6f697461
mov word [rax + 0xc], r8w
mov byte [rax + 0xe], 0
mov rdx, qword [rdi]
lea rax, [rdx + 0xe]
mov qword [rdi], rax
test rbp, rbp
je 0x140014458
mov rax, qword [rbp]
lea rcx, [rdi + rdx + 0x1e]
lea rdx, [rbp + 0x10]
lea r8, [rax + 1]
call sym.memcpy
mov rax, qword [rbp]
add rax, qword [rdi]
mov qword [rdi], rax
mov r11d, 0x2e
mov word [rdi + rax + 0x10], r11w
add qword [rdi], 1
add qword [rdi - 0x10], 8
mov rax, qword [r13 + 0x18]
test rax, rax
je 0x14001448c
mov rcx, qword [rax - 0x10]
lea r8, [rax - 0x10]
lea rdx, [rcx - 8]
mov qword [rax - 0x10], rdx
cmp rdx, 7
jbe 0x1400144f8
mov rdx, qword [r13 + 8]
mov qword [r13 + 0x18], rdi
test rdx, rdx
je 0x1400144af
mov rax, qword [rdx - 0x10]
lea r8, [rdx - 0x10]
sub rax, 8
mov qword [rdx - 0x10], rax
cmp rax, 7
jbe 0x1400144e3
mov qword [r13 + 8], 0
lea r9, str.base64.nim
mov rdx, r12
mov rcx, r13
mov qword [rsp + 0x20], 0xe9
lea r8, str.decode
mov ebp, 0xfffffffc
call sym.raiseExceptionEx
jmp 0x140013b78
mov rax, qword [str.___t_]
mov rdx, r8
lea rcx, [rax + 0x18]
call sym.addZCT__system_5314
jmp 0x1400144af
mov rax, qword [str.___t_]
mov rdx, r8
lea rcx, [rax + 0x18]
call sym.addZCT__system_5314
jmp 0x14001448c
lea rdx, [rax - 1]
mov rcx, rbx
call sym.raiseIndexError2
mov rax, qword [rsi]
cmp rax, rbx
jg 0x14001432a
lea rdx, [rax - 1]
mov rcx, rbx
call sym.raiseIndexError2
jmp 0x14001432a
mov rax, qword [str.___t_]
mov rdx, r8
lea rcx, [rax + 0x18]
call sym.addZCT__system_5314
jmp 0x140014249
mov rax, qword [str.___t_]
mov rdx, r8
lea rcx, [rax + 0x18]
call sym.addZCT__system_5314
jmp 0x140014222
lea rdx, [rax - 1]
mov rcx, rdi
call sym.raiseIndexError2
mov rax, qword [rsi]
cmp rdi, rax
jl 0x1400140c5
lea rdx, [rax - 1]
mov rcx, rdi
call sym.raiseIndexError2
jmp 0x1400140c5
mov rcx, qword [0x14007e940]
mov edx, 0x30
lea r12, str.ValueError
call sym.newObj
mov r14, rax
mov rax, qword [0x14007e980]
mov qword [r14 + 0x10], r12
mov qword [r14], rax
jmp 0x140013e73
lea rdx, [rax - 1]
mov rcx, rbx
call sym.raiseIndexError2
movzx eax, byte [rsi + rbx + 0x10]
mov rdi, qword [rsp + 0x40]
movzx eax, byte [rdi + rax]
cmp rax, 0xff
jne 0x140013d3d
mov rcx, qword [0x14007e940]
mov edx, 0x30
lea r12, str.ValueError
call sym.newObj
mov rcx, rbx
mov r13, rax
mov rax, qword [0x14007e980]
mov qword [r13 + 0x10], r12
mov qword [r13], rax
mov rax, qword [rsi]
lea rdx, [rax - 1]
call sym.raiseIndexError2
mov rax, qword [rsi]
lea rdx, [rax - 1]
mov rcx, rbx
call sym.raiseIndexError2
movzx ecx, byte [rsi + rbx + 0x10]
call sym.dollar___systemZdollars_3
mov rcx, rbx
mov rbp, rax
call sym.dollar___systemZdollars_3
mov rdi, rax
xor eax, eax
test rbp, rbp
je 0x140014651
mov rax, qword [rbp]
test rdi, rdi
je 0x140014659
add rax, qword [rdi]
lea rcx, [rax + 0x38]
call sym.rawNewString
mov r8d, 0x60
movabs rdx, 0x2064696c61766e49
movabs rcx, 0x6620343665736162
mov r15, rax
mov rax, qword [rax]
lea rax, [r15 + rax + 0x10]
mov qword [rax], rdx
movabs rdx, 0x68632074616d726f
mov qword [rax + 8], rcx
movabs rcx, 0x2072657463617261
mov qword [rax + 0x10], rdx
mov qword [rax + 0x18], rcx
mov word [rax + 0x20], r8w
mov rax, qword [r15]
lea rdx, [rax + 0x21]
mov qword [r15], rdx
movzx ecx, byte [rsi + rbx + 0x10]
lea rdx, [rax + 0x22]
movabs rsi, 0x2064726f282060
mov byte [r15 + rax + 0x31], cl
mov qword [r15], rdx
mov qword [r15 + rax + 0x32], rsi
mov rdx, qword [r15]
lea rax, [rdx + 7]
mov qword [r15], rax
test rbp, rbp
je 0x140014708
mov rax, qword [rbp]
lea rcx, [r15 + rdx + 0x17]
lea rdx, [rbp + 0x10]
lea r8, [rax + 1]
call sym.memcpy
mov rax, qword [rbp]
add rax, qword [r15]
mov qword [r15], rax
lea rax, [r15 + rax + 0x10]
mov ecx, 0x206e
movabs rsi, 0x636f6c2074612029
mov qword [rax], rsi
mov dword [rax + 8], 0x6f697461
mov word [rax + 0xc], cx
mov byte [rax + 0xe], 0
mov rdx, qword [r15]
lea rax, [rdx + 0xe]
mov qword [r15], rax
test rdi, rdi
je 0x14001475b
mov rax, qword [rdi]
lea rcx, [r15 + rdx + 0x1e]
lea rdx, [rdi + 0x10]
lea r8, [rax + 1]
call sym.memcpy
mov rax, qword [rdi]
add rax, qword [r15]
mov qword [r15], rax
mov edx, 0x2e
mov word [r15 + rax + 0x10], dx
add qword [r15], 1
add qword [r15 - 0x10], 8
mov rax, qword [r13 + 0x18]
test rax, rax
je 0x1400147a1
mov rdi, qword [rax - 0x10]
lea r8, [rax - 0x10]
lea rdx, [rdi - 8]
mov qword [rax - 0x10], rdx
cmp rdx, 7
ja 0x1400147a1
mov rax, qword [str.___t_]
mov rdx, r8
lea rcx, [rax + 0x18]
call sym.addZCT__system_5314
mov rdx, qword [r13 + 8]
mov qword [r13 + 0x18], r15
test rdx, rdx
je 0x1400147d7
mov rax, qword [rdx - 0x10]
lea r8, [rdx - 0x10]
sub rax, 8
mov qword [rdx - 0x10], rax
cmp rax, 7
ja 0x1400147d7
mov rax, qword [str.___t_]
mov rdx, r8
lea rcx, [rax + 0x18]
call sym.addZCT__system_5314
mov qword [r13 + 8], 0
lea r9, str.base64.nim
mov rdx, r12
mov rcx, r13
mov qword [rsp + 0x20], 0xe9
lea r8, str.decode
mov esi, 0x3f
call sym.raiseExceptionEx
jmp 0x140013d43
mov rcx, qword [0x14007e940]
mov edx, 0x30
lea r12, str.ValueError
call sym.newObj
mov r13, rax
mov rax, qword [0x14007e980]
mov qword [r13 + 0x10], r12
mov qword [r13], rax
mov rax, qword [rsi]
cmp rbx, rax
jl 0x14001462e
lea rdx, [rax - 1]
mov rcx, rbx
call sym.raiseIndexError2
mov rax, qword [rsi]
cmp rbx, rax
jge 0x140014622
jmp 0x14001462e
mov rcx, qword [0x14007e940]
mov edx, 0x30
lea r12, str.ValueError
call sym.newObj
mov r13, rax
mov rax, qword [0x14007e980]
mov qword [r13 + 0x10], r12
mov qword [r13], rax
mov rax, qword [rsi]
cmp rax, rbx
jg 0x1400148b2
lea rdx, [rax - 1]
mov rcx, rbx
call sym.raiseIndexError2
mov rax, qword [rsi]
cmp rax, rbx
jg 0x1400148b2
lea rdx, [rax - 1]
mov rcx, rbx
call sym.raiseIndexError2
movzx ecx, byte [rsi + rbx + 0x10]
call sym.dollar___systemZdollars_3
mov rcx, rbx
mov r14, rax
call sym.dollar___systemZdollars_3
mov rbp, rax
xor eax, eax
test r14, r14
je 0x1400148d4
mov rax, qword [r14]
test rbp, rbp
je 0x1400148dd
add rax, qword [rbp]
lea rcx, [rax + 0x38]
mov r15d, 0x60
call sym.rawNewString
movabs rdx, 0x2064696c61766e49
movabs rcx, 0x6620343665736162
mov rdi, rax
mov rax, qword [rax]
lea rax, [rdi + rax + 0x10]
mov qword [rax], rdx
movabs rdx, 0x68632074616d726f
mov qword [rax + 8], rcx
movabs rcx, 0x2072657463617261
mov qword [rax + 0x10], rdx
mov qword [rax + 0x18], rcx
mov word [rax + 0x20], r15w
mov rax, qword [rdi]
lea rdx, [rax + 0x21]
mov qword [rdi], rdx
movzx ecx, byte [rsi + rbx + 0x10]
lea rdx, [rax + 0x22]
mov byte [rdi + rax + 0x31], cl
movabs rcx, 0x2064726f282060
mov qword [rdi], rdx
mov qword [rdi + rax + 0x32], rcx
mov rdx, qword [rdi]
lea rax, [rdx + 7]
mov qword [rdi], rax
test r14, r14
je 0x140014989
mov rax, qword [r14]
lea rcx, [rdi + rdx + 0x17]
lea rdx, [r14 + 0x10]
lea r8, [rax + 1]
call sym.memcpy
mov rax, qword [r14]
add rax, qword [rdi]
mov qword [rdi], rax
lea rax, [rdi + rax + 0x10]
mov r11d, 0x206e
movabs rcx, 0x636f6c2074612029
mov qword [rax], rcx
mov dword [rax + 8], 0x6f697461
mov word [rax + 0xc], r11w
mov byte [rax + 0xe], 0
mov rdx, qword [rdi]
lea rax, [rdx + 0xe]
mov qword [rdi], rax
test rbp, rbp
je 0x1400149e0
mov rax, qword [rbp]
lea rcx, [rdi + rdx + 0x1e]
lea rdx, [rbp + 0x10]
lea r8, [rax + 1]
call sym.memcpy
mov rax, qword [rbp]
add rax, qword [rdi]
mov qword [rdi], rax
mov ebp, 0x2e
mov word [rdi + rax + 0x10], bp
add qword [rdi], 1
add qword [rdi - 0x10], 8
mov rax, qword [r13 + 0x18]
test rax, rax
je 0x140014a25
mov rcx, qword [rax - 0x10]
lea r8, [rax - 0x10]
lea rdx, [rcx - 8]
mov qword [rax - 0x10], rdx
cmp rdx, 7
ja 0x140014a25
mov rax, qword [str.___t_]
mov rdx, r8
lea rcx, [rax + 0x18]
call sym.addZCT__system_5314
mov rdx, qword [r13 + 8]
mov qword [r13 + 0x18], rdi
test rdx, rdx
je 0x140014a5b
mov rax, qword [rdx - 0x10]
lea r8, [rdx - 0x10]
sub rax, 8
mov qword [rdx - 0x10], rax
cmp rax, 7
ja 0x140014a5b
mov rax, qword [str.___t_]
mov rdx, r8
lea rcx, [rax + 0x18]
call sym.addZCT__system_5314
mov qword [r13 + 8], 0
lea r9, str.base64.nim
mov rdx, r12
mov rcx, r13
mov qword [rsp + 0x20], 0xe9
lea r8, str.decode
call sym.raiseExceptionEx
mov byte [rsp + 0x50], 0xfc
jmp 0x140013ca2
movabs rcx, 0x8000000000000000
mov rax, qword [rsi]
lea rdx, [rax - 1]
call sym.raiseIndexError2
mov rax, qword [rsi]
jmp 0x140013e8f
mov r12d, 1
call sym.raiseOverflow
jmp 0x140012c80
call sym.raiseOverflow
jmp 0x140013cb8
call sym.raiseOverflow
jmp 0x140013d06
call sym.raiseOverflow
jmp 0x140013d4d
call sym.raiseOverflow
jmp 0x140013bd5
call sym.raiseOverflow
jmp 0x140013b8e
call sym.raiseOverflow
jmp 0x140012cba
call sym.raiseOverflow
jmp 0x140013d8a
call sym.raiseOverflow
jmp 0x140012daa
call sym.raiseOverflow
jmp 0x140012df1
call sym.raiseOverflow
jmp 0x140012d66
call sym.raiseOverflow
jmp 0x140012c35
call sym.raiseOverflow
jmp 0x140012f0a
call sym.raiseOverflow
jmp 0x140012eba
call sym.raiseOverflow
jmp 0x140012e82