Function at 0x503060
Capabilities:
Encode data using base64

Disassembly:
lea r12, [rsp - 0x170]
cmp r12, qword [r14 + 0x10]
jbe 0x504806
push rbp
mov rbp, rsp
sub rsp, 0x1e8
mov qword [rsp + 0x208], rcx
mov qword [rsp + 0x200], rbx
mov qword [rsp + 0x1f8], rax
movups xmmword [rsp + 0x168], xmm15
movups xmmword [rsp + 0x178], xmm15
mov edi, 1
lea rcx, [0x00552fdd]
call sym.strings.Cut
nop dword [rax + rax]
test sil, sil
je 0x503407
mov qword [rsp + 0xe8], rcx
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x98], rbx
test rbx, rbx
jne 0x5030ef
xor edx, edx
jmp 0x503120
lea rcx, sym.mime.isNotTokenChar
call sym.strings.IndexFunc
test rax, rax
setl dl
mov rax, qword [rsp + 0x130]
mov rcx, qword [rsp + 0xe8]
mov rbx, qword [rsp + 0x98]
mov rdi, qword [rsp + 0x50]
nop
test dl, dl
je 0x5033fa
test rdi, rdi
jne 0x503131
xor edx, edx
jmp 0x503168
mov rax, rcx
mov rbx, rdi
lea rcx, sym.mime.isNotTokenChar
nop
call sym.strings.IndexFunc
test rax, rax
setl dl
mov rax, qword [rsp + 0x130]
mov rcx, qword [rsp + 0xe8]
mov rbx, qword [rsp + 0x98]
mov rdi, qword [rsp + 0x50]
test dl, dl
je 0x5033fa
call sym.strings.ToLower
mov rcx, qword [rsp + 0x168]
nop
nop
test rcx, rcx
je 0x503197
lea rdx, [rsp + 0x168]
cmp rcx, rdx
je 0x5031a7
jmp 0x5047f1
lea rdx, [rsp + 0x168]
mov qword [rsp + 0x168], rdx
mov rcx, qword [rsp + 0x180]
mov rdx, qword [rsp + 0x178]
lea r8, [rbx + rdx]
mov r9, qword [rsp + 0x170]
cmp rcx, r8
jae 0x50320d
mov qword [rsp + 0xd8], rdx
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x120], rax
mov rax, r9
mov rdi, rbx
lea rsi, [0x00527000]
mov rbx, r8
call sym.runtime.growslice
mov rdx, qword [rsp + 0xd8]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x120]
mov rbx, qword [rsp + 0x78]
mov qword [rsp + 0x160], r9
mov qword [rsp + 0xd8], rcx
mov qword [rsp + 0xd0], r8
add rdx, r9
mov rsi, rax
mov rax, rdx
mov rdi, rbx
mov rbx, rsi
mov rcx, rdi
call sym.runtime.memmove
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x178], rdx
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x180], rdx
mov rdx, qword [rsp + 0x160]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0x168]
nop
nop
test rdx, rdx
je 0x50328d
lea r8, [rsp + 0x168]
cmp rdx, r8
je 0x50329d
jmp 0x5047de
lea rdx, [rsp + 0x168]
mov qword [rsp + 0x168], rdx
mov rcx, qword [rsp + 0x180]
mov rbx, qword [rsp + 0x178]
inc rbx
mov rax, qword [rsp + 0x170]
cmp rcx, rbx
jae 0x5032de
mov edi, 1
lea rsi, [0x00527000]
call sym.runtime.growslice
mov qword [rsp + 0x180], rcx
mov qword [rsp + 0x170], rax
mov qword [rsp + 0x178], rbx
mov byte [rbx + rax - 1], 0x2f
mov rax, qword [rsp + 0xe8]
mov rbx, qword [rsp + 0x50]
call sym.strings.ToLower
mov rcx, qword [rsp + 0x168]
nop
test rcx, rcx
je 0x50331d
lea rdx, [rsp + 0x168]
cmp rcx, rdx
je 0x50332d
jmp 0x5047cb
lea rdx, [rsp + 0x168]
mov qword [rsp + 0x168], rdx
mov rcx, qword [rsp + 0x180]
mov rdx, qword [rsp + 0x178]
lea r8, [rbx + rdx]
mov r9, qword [rsp + 0x170]
cmp rcx, r8
jae 0x503393
mov qword [rsp + 0xd8], rdx
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x118], rax
mov rax, r9
mov rdi, rbx
lea rsi, [0x00527000]
mov rbx, r8
call sym.runtime.growslice
mov rdx, qword [rsp + 0xd8]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x118]
mov rbx, qword [rsp + 0x70]
mov qword [rsp + 0x160], r9
mov qword [rsp + 0xd8], rcx
mov qword [rsp + 0xd0], r8
add rdx, r9
mov rsi, rax
mov rax, rdx
mov rdi, rbx
mov rbx, rsi
mov rcx, rdi
nop dword [rax]
call sym.runtime.memmove
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x178], rdx
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x180], rdx
mov rdx, qword [rsp + 0x160]
mov qword [rsp + 0x170], rdx
jmp 0x503545
xor eax, eax
xor ebx, ebx
add rsp, 0x1e8
pop rbp
ret
mov rbx, qword [rsp + 0x200]
test rbx, rbx
je 0x5035c9
mov rax, qword [rsp + 0x1f8]
lea rcx, sym.mime.isNotTokenChar
call sym.strings.IndexFunc
test rax, rax
jge 0x5035c9
mov rax, qword [rsp + 0x1f8]
mov rbx, qword [rsp + 0x200]
call sym.strings.ToLower
mov rcx, qword [rsp + 0x168]
nop
test rcx, rcx
je 0x50346a
lea rdx, [rsp + 0x168]
cmp rcx, rdx
je 0x50347a
jmp 0x5047b8
lea rdx, [rsp + 0x168]
mov qword [rsp + 0x168], rdx
mov rcx, qword [rsp + 0x180]
mov rdx, qword [rsp + 0x178]
lea r8, [rbx + rdx]
mov r9, qword [rsp + 0x170]
cmp rcx, r8
jae 0x5034e6
mov qword [rsp + 0xd8], rdx
mov qword [rsp + 0x80], rbx
mov qword [rsp + 0x128], rax
mov rax, r9
mov rdi, rbx
lea rsi, [0x00527000]
mov rbx, r8
call sym.runtime.growslice
mov rdx, qword [rsp + 0xd8]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x128]
mov rbx, qword [rsp + 0x80]
mov qword [rsp + 0xd8], rcx
mov qword [rsp + 0xd0], r8
mov qword [rsp + 0x160], r9
add rdx, r9
mov rsi, rax
mov rax, rdx
mov rdi, rbx
mov rbx, rsi
mov rcx, rdi
call sym.runtime.memmove
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x178], rdx
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x180], rdx
mov rdx, qword [rsp + 0x160]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0x208]
test rdx, rdx
je 0x503557
mov rsi, qword [rdx]
jmp 0x503559
xor esi, esi
mov qword [rsp + 0xb0], rsi
lea rax, [0x00526cc0]
xor ebx, ebx
mov rcx, rsi
call sym.runtime.makeslice
mov qword [rsp + 0x158], rax
lea rdi, [rsp + 0x188]
lea rdi, [rdi - 0x20]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046504b
mov rbp, qword [rbp]
mov rbx, qword [rsp + 0x208]
lea rcx, [rsp + 0x188]
lea rax, [0x0052eb00]
call sym.runtime.mapiterinit
mov rax, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x158]
xor edx, edx
jmp 0x503607
xor eax, eax
xor ebx, ebx
add rsp, 0x1e8
pop rbp
ret
mov qword [rsp + 0x138], rcx
mov qword [rcx + rsi], rdx
lea rax, [rsp + 0x188]
call sym.runtime.mapiternext
mov rax, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x138]
mov rdx, qword [rsp + 0xa8]
mov r8, qword [rsp + 0x188]
test r8, r8
je 0x5036aa
lea rbx, [rdx + 1]
mov rdx, qword [r8]
mov r8, qword [r8 + 8]
cmp rax, rbx
jae 0x50366b
mov qword [rsp + 0xc0], r8
mov qword [rsp + 0x148], rdx
mov edi, 1
lea rsi, [0x00526cc0]
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call sym.runtime.growslice
mov rdx, qword [rsp + 0x148]
mov r8, qword [rsp + 0xc0]
mov rsi, rcx
mov rcx, rax
mov rax, rsi
mov qword [rsp + 0xa8], rbx
mov qword [rsp + 0xb0], rax
lea rsi, [rbx - 1]
shl rsi, 4
mov qword [rcx + rsi + 8], r8
cmp dword [0x006e3290], 0
je 0x5035d6
call sym.runtime.gcWriteBarrier2
mov qword [r11], rdx
mov rdi, qword [rcx + rsi]
mov qword [r11 + 8], rdi
jmp 0x5035d6
mov qword [rsp + 0xa8], rdx
mov qword [rsp + 0x150], rcx
mov rbx, rdx
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call sym.runtime.convTslice
mov rbx, rax
lea rax, [0x005a0df0]
call sym.sort.Sort
mov rdx, qword [rsp + 0x150]
xor eax, eax
jmp 0x5036fd
mov rdx, qword [rsp + 0x158]
add rdx, 0x10
mov rax, qword [rsp + 0xd8]
inc rax
mov rsi, qword [rsp + 0xa8]
cmp rax, rsi
jge 0x503d96
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0x158], rdx
mov rdi, qword [rdx + 8]
mov qword [rsp + 0xb8], rdi
mov rcx, qword [rdx]
mov qword [rsp + 0x140], rcx
lea rax, [0x0052eb00]
mov rbx, qword [rsp + 0x208]
call sym.runtime.mapaccess1_faststr
mov rdx, qword [rsp + 0x168]
mov rsi, qword [rax + 8]
mov r8, qword [rax]
nop
nop
test rdx, rdx
je 0x503771
lea r9, [rsp + 0x168]
cmp rdx, r9
je 0x503781
jmp 0x5047a5
lea rdx, [rsp + 0x168]
mov qword [rsp + 0x168], rdx
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0xe0], r8
mov rcx, qword [rsp + 0x180]
mov rbx, qword [rsp + 0x178]
inc rbx
mov rax, qword [rsp + 0x170]
cmp rcx, rbx
jae 0x5037dc
mov edi, 1
lea rsi, [0x00527000]
call sym.runtime.growslice
mov qword [rsp + 0x180], rcx
mov qword [rsp + 0x170], rax
mov rsi, qword [rsp + 0x48]
mov r8, qword [rsp + 0xe0]
mov qword [rsp + 0x178], rbx
mov byte [rbx + rax - 1], 0x3b
mov rdx, qword [rsp + 0x168]
nop
nop
test rdx, rdx
je 0x50380a
lea r9, [rsp + 0x168]
cmp rdx, r9
je 0x50381a
jmp 0x504792
lea rdx, [rsp + 0x168]
mov qword [rsp + 0x168], rdx
mov rcx, qword [rsp + 0x180]
mov rbx, qword [rsp + 0x178]
inc rbx
mov rax, qword [rsp + 0x170]
cmp rcx, rbx
jae 0x503868
mov edi, 1
lea rsi, [0x00527000]
call sym.runtime.growslice
mov qword [rsp + 0x180], rcx
mov qword [rsp + 0x170], rax
mov rsi, qword [rsp + 0x48]
mov r8, qword [rsp + 0xe0]
mov qword [rsp + 0x178], rbx
mov byte [rbx + rax - 1], 0x20
mov rbx, qword [rsp + 0xb8]
nop dword [rax]
test rbx, rbx
je 0x503d89
mov rax, qword [rsp + 0x140]
lea rcx, sym.mime.isNotTokenChar
call sym.strings.IndexFunc
nop dword [rax]
test rax, rax
jge 0x503d89
mov rax, qword [rsp + 0x140]
mov rbx, qword [rsp + 0xb8]
call sym.strings.ToLower
mov rcx, qword [rsp + 0x168]
nop
test rcx, rcx
je 0x5038de
lea rdx, [rsp + 0x168]
cmp rcx, rdx
je 0x5038ee
jmp 0x50477f
lea rdx, [rsp + 0x168]
mov qword [rsp + 0x168], rdx
mov rcx, qword [rsp + 0x180]
mov rdx, qword [rsp + 0x178]
lea r8, [rdx + rbx]
mov r9, qword [rsp + 0x170]
cmp rcx, r8
jae 0x503954
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x110], rax
mov qword [rsp + 0xd0], rdx
mov rax, r9
mov rdi, rbx
lea rsi, [0x00527000]
mov rbx, r8
call sym.runtime.growslice
mov rdx, qword [rsp + 0xd0]
mov r9, rax
mov r8, rbx
mov rax, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x68]
mov qword [rsp + 0x160], r9
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0xc8], r8
add rdx, r9
mov rsi, rax
mov rax, rdx
mov rdi, rbx
mov rbx, rsi
mov rcx, rdi
nop
call sym.runtime.memmove
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x178], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x180], rdx
mov rdx, qword [rsp + 0x160]
mov qword [rsp + 0x170], rdx
nop
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xe0]
xor eax, eax
jmp 0x503dcd
cmp rax, rdx
jge 0x503a71
mov r8, qword [rsp + 0x168]
nop
nop
nop dword [rax]
test r8, r8
je 0x5039f7
lea r9, [rsp + 0x168]
cmp r8, r9
je 0x503a07
jmp 0x50476c
lea r8, [rsp + 0x168]
mov qword [rsp + 0x168], r8
mov rcx, qword [rsp + 0x180]
mov rbx, qword [rsp + 0x178]
inc rbx
mov r8, qword [rsp + 0x170]
cmp rcx, rbx
jae 0x503a63
mov rax, r8
mov edi, 1
lea rsi, [0x00527000]
call sym.runtime.growslice
mov qword [rsp + 0x180], rcx
mov qword [rsp + 0x170], rax
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xe0]
mov r8, rax
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x178], rbx
mov byte [rbx + r8 - 1], 0x2a
mov r8, qword [rsp + 0x168]
nop
nop
nop dword [rax + rax]
test r8, r8
je 0x503a97
lea r9, [rsp + 0x168]
cmp r8, r9
je 0x503aa7
jmp 0x504759
lea r8, [rsp + 0x168]
mov qword [rsp + 0x168], r8
mov rcx, qword [rsp + 0x180]
mov rbx, qword [rsp + 0x178]
inc rbx
mov r8, qword [rsp + 0x170]
cmp rcx, rbx
jb 0x503acc
cmp rax, rdx
jmp 0x503b13
mov rax, r8
mov edi, 1
lea rsi, [0x00527000]
nop dword [rax + rax]
call sym.runtime.growslice
mov qword [rsp + 0x180], rcx
mov qword [rsp + 0x170], rax
mov rdx, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x48]
cmp rdx, rcx
mov rdx, rcx
mov rsi, qword [rsp + 0xe0]
mov r8, rax
mov qword [rsp + 0x178], rbx
mov byte [rbx + r8 - 1], 0x3d
jge 0x503bdf
mov r8, qword [rsp + 0x168]
nop
test r8, r8
je 0x503b4a
lea r9, [rsp + 0x168]
nop dword [rax]
cmp r8, r9
je 0x503b5a
jmp 0x504746
lea r8, [rsp + 0x168]
mov qword [rsp + 0x168], r8
mov rbx, qword [rsp + 0x178]
lea r8, [rbx + 7]
mov rcx, qword [rsp + 0x180]
mov rax, qword [rsp + 0x170]
cmp rcx, r8
jae 0x503baf
mov qword [rsp + 0xd0], rbx
mov rbx, r8
mov edi, 7
lea rsi, [0x00527000]
call sym.runtime.growslice
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xe0]
mov r8, rbx
mov rbx, qword [rsp + 0xd0]
mov dword [rax + rbx], 0x2d667475
mov dword [rax + rbx + 3], 0x2727382d
mov qword [rsp + 0x178], r8
mov qword [rsp + 0x180], rcx
mov qword [rsp + 0x170], rax
xor eax, eax
xor ecx, ecx
jmp 0x504220
nop
test rdx, rdx
jne 0x503be9
xor eax, eax
jmp 0x503c10
mov rax, rsi
mov rbx, rdx
lea rcx, sym.mime.isNotTokenChar
call sym.strings.IndexFunc
test rax, rax
setl dl
mov rsi, qword [rsp + 0xe0]
mov eax, edx
mov rdx, qword [rsp + 0x48]
test al, al
jne 0x503cac
mov r8, qword [rsp + 0x168]
nop
test r8, r8
je 0x503c38
lea r9, [rsp + 0x168]
cmp r8, r9
je 0x503c48
jmp 0x50420a
lea r8, [rsp + 0x168]
mov qword [rsp + 0x168], r8
mov rcx, qword [rsp + 0x180]
mov rbx, qword [rsp + 0x178]
inc rbx
mov rax, qword [rsp + 0x170]
cmp rcx, rbx
jae 0x503c96
mov edi, 1
lea rsi, [0x00527000]
call sym.runtime.growslice
mov qword [rsp + 0x180], rcx
mov qword [rsp + 0x170], rax
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xe0]
mov qword [rsp + 0x178], rbx
mov byte [rbx + rax - 1], 0x22
xor eax, eax
xor ecx, ecx
jmp 0x503e4b
mov r8, qword [rsp + 0x168]
nop
nop
test r8, r8
je 0x503ccd
lea r9, [rsp + 0x168]
cmp r8, r9
je 0x503cdd
jmp 0x503e35
lea r8, [rsp + 0x168]
mov qword [rsp + 0x168], r8
mov rcx, qword [rsp + 0x180]
mov r8, qword [rsp + 0x178]
lea rbx, [rdx + r8]
mov rax, qword [rsp + 0x170]
cmp rcx, rbx
jae 0x503d2a
mov qword [rsp + 0xd0], r8
mov rdi, rdx
lea rsi, [0x00527000]
call sym.runtime.growslice
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xe0]
mov r8, qword [rsp + 0xd0]
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0xc8], rbx
mov qword [rsp + 0x160], rax
lea rdi, [rax + r8]
mov rax, rdi
mov rbx, rsi
mov rcx, rdx
call sym.runtime.memmove
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x178], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x180], rdx
mov rdx, qword [rsp + 0x160]
mov qword [rsp + 0x170], rdx
jmp 0x5036e6
xor eax, eax
xor ebx, ebx
add rsp, 0x1e8
pop rbp
ret
mov rbx, qword [rsp + 0x178]
mov rax, qword [rsp + 0x170]
mov rcx, rax
neg rcx
cmp rbx, rcx
ja 0x503dba
add rsp, 0x1e8
pop rbp
ret
test rax, rax
je 0x503dc5
nop
call sym.runtime.panicunsafestringlen
call sym.runtime.panicunsafestringnilptr
mov rax, r9
mov qword [rsp + 0xd0], rax
cmp rax, rdx
jge 0x5039cd
movzx r8d, byte [rsi + rax]
cmp r8d, 0x80
jge 0x503df2
lea r9, [rax + 1]
jmp 0x503e20
mov rbx, rdx
mov rcx, rax
mov rax, rsi
nop dword [rax + rax]
call sym.runtime.decoderune
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xe0]
mov r8d, eax
mov r9, rbx
mov rax, qword [rsp + 0xd0]
lea r10d, [r8 - 0x20]
cmp r10d, 0x5e
jbe 0x503dca
cmp r8d, 9
je 0x503dca
jmp 0x5039ca
lea rax, [0x00526cc0]
lea rbx, [0x005a01f8]
call sym.runtime.gopanic
inc rax
cmp rax, rdx
jge 0x504016
movzx r8d, byte [rsi + rax]
cmp r8b, 0x22
je 0x503e66
nop
cmp r8b, 0x5c
jne 0x503e48
cmp rcx, rax
ja 0x5041fc
mov rdi, rax
sub rdi, rcx
mov r8, rdi
neg r8
sar r8, 0x3f
and rcx, r8
mov r8, qword [rsp + 0x168]
lea rbx, [rcx + rsi]
nop
test r8, r8
je 0x503eaa
lea r9, [rsp + 0x168]
nop dword [rax]
cmp r8, r9
je 0x503eba
jmp 0x5041e9
lea r8, [rsp + 0x168]
mov qword [rsp + 0x168], r8
mov qword [rsp + 0x88], rax
mov rcx, qword [rsp + 0x180]
mov r8, qword [rsp + 0x178]
lea r9, [r8 + rdi]
mov r10, qword [rsp + 0x170]
nop
cmp rcx, r9
jae 0x503f27
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0xf8], rbx
mov qword [rsp + 0xd0], r8
mov rax, r10
mov rbx, r9
lea rsi, [0x00527000]
call sym.runtime.growslice
mov rdi, qword [rsp + 0x58]
mov r8, qword [rsp + 0xd0]
mov r10, rax
mov r9, rbx
mov rbx, qword [rsp + 0xf8]
mov qword [rsp + 0xd0], r9
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0x160], r10
lea rax, [r10 + r8]
mov rcx, rdi
call sym.runtime.memmove
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x178], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x180], rdx
mov rdx, qword [rsp + 0x160]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0x168]
nop
test rdx, rdx
je 0x503f9b
lea r8, [rsp + 0x168]
cmp rdx, r8
je 0x503fab
jmp 0x5041d6
lea rdx, [rsp + 0x168]
mov qword [rsp + 0x168], rdx
mov rcx, qword [rsp + 0x180]
mov rbx, qword [rsp + 0x178]
inc rbx
mov rax, qword [rsp + 0x170]
cmp rcx, rbx
jae 0x503fec
mov edi, 1
lea rsi, [0x00527000]
call sym.runtime.growslice
mov qword [rsp + 0x180], rcx
mov qword [rsp + 0x170], rax
mov qword [rsp + 0x178], rbx
mov byte [rbx + rax - 1], 0x5c
mov rax, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0xe0]
mov rcx, rax
jmp 0x503e48
cmp rcx, rdx
ja 0x5041cb
sub rdx, rcx
mov rdi, rdx
neg rdx
sar rdx, 0x3f
and rcx, rdx
mov rdx, qword [rsp + 0x168]
lea rbx, [rcx + rsi]
nop
nop dword [rax]
test rdx, rdx
je 0x504057
lea r8, [rsp + 0x168]
cmp rdx, r8
je 0x504067
jmp 0x5041b8
lea rdx, [rsp + 0x168]
mov qword [rsp + 0x168], rdx
mov rcx, qword [rsp + 0x180]
mov rdx, qword [rsp + 0x178]
lea r8, [rdi + rdx]
mov rax, qword [rsp + 0x170]
cmp rcx, r8
jae 0x5040ca
mov qword [rsp + 0xd0], rdx
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0xf0], rbx
mov rbx, r8
lea rsi, [0x00527000]
call sym.runtime.growslice
mov rdx, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0xc8]
mov r8, rbx
mov rbx, qword [rsp + 0xf0]
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0xc8], r8
mov qword [rsp + 0x160], rax
add rdx, rax
mov rax, rdx
mov rcx, rdi
call sym.runtime.memmove
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x178], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x180], rdx
mov rdx, qword [rsp + 0x160]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0x168]
nop
test rdx, rdx
je 0x50413d
lea r8, [rsp + 0x168]
cmp rdx, r8
je 0x50414d
jmp 0x5041a5
lea rdx, [rsp + 0x168]
mov qword [rsp + 0x168], rdx
mov rcx, qword [rsp + 0x180]
mov rbx, qword [rsp + 0x178]
inc rbx
mov rax, qword [rsp + 0x170]
cmp rcx, rbx
jae 0x50418e
mov edi, 1
lea rsi, [0x00527000]
call sym.runtime.growslice
mov qword [rsp + 0x180], rcx
mov qword [rsp + 0x170], rax
mov qword [rsp + 0x178], rbx
mov byte [rbx + rax - 1], 0x22
nop dword [rax + rax]
jmp 0x5036e6
lea rax, [0x00526cc0]
lea rbx, [0x005a01f8]
call sym.runtime.gopanic
lea rax, [0x00526cc0]
lea rbx, [0x005a01f8]
call sym.runtime.gopanic
mov rax, rcx
mov rcx, rdx
call sym.runtime.panicSliceB
lea rax, [0x00526cc0]
lea rbx, [0x005a01f8]
call sym.runtime.gopanic
lea rax, [0x00526cc0]
lea rbx, [0x005a01f8]
call sym.runtime.gopanic
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call sym.runtime.panicSliceB
lea rax, [0x00526cc0]
lea rbx, [0x005a01f8]
call sym.runtime.gopanic
inc rax
cmp rax, rdx
jge 0x5045c0
mov qword [rsp + 0xa0], rax
movzx r8d, byte [rsi + rax]
mov byte [rsp + 0x45], r8b
lea r9d, [r8 - 0x21]
nop
cmp r9b, 0x5e
jb 0x50424d
mov ebx, 1
jmp 0x5042c3
cmp r8b, 0x2a
jne 0x504260
mov ebx, 1
jmp 0x5042c3
cmp r8b, 0x27
jne 0x50426d
mov ebx, 1
jmp 0x5042c3
cmp r8b, 0x25
jne 0x50427a
mov ebx, 1
jmp 0x5042c3
mov qword [rsp + 0x90], rcx
nop
nop
lea rax, [0x00555b33]
mov ebx, 0xf
mov ecx, r8d
call sym.strings.IndexRune
test rax, rax
setge dl
mov rax, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x90]
mov rsi, qword [rsp + 0xe0]
movzx r8d, byte [rsp + 0x45]
mov ebx, edx
mov rdx, qword [rsp + 0x48]
test bl, bl
je 0x50421d
cmp rcx, rax
ja 0x504738
mov rdi, rax
sub rdi, rcx
mov r9, rdi
neg r9
sar r9, 0x3f
and rcx, r9
mov r9, qword [rsp + 0x168]
lea rbx, [rcx + rsi]
nop
test r9, r9
je 0x50430b
lea r10, [rsp + 0x168]
cmp r9, r10
je 0x50431b
jmp 0x504725
lea r9, [rsp + 0x168]
mov qword [rsp + 0x168], r9
mov rcx, qword [rsp + 0x180]
mov r9, qword [rsp + 0x178]
lea r10, [rdi + r9]
mov r11, qword [rsp + 0x170]
cmp rcx, r10
jae 0x504380
mov qword [rsp + 0xd0], r9
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0x108], rbx
mov rax, r11
mov rbx, r10
lea rsi, [0x00527000]
nop
call sym.runtime.growslice
mov rdi, qword [rsp + 0x60]
mov r9, qword [rsp + 0xd0]
mov r11, rax
mov r10, rbx
mov rbx, qword [rsp + 0x108]
mov qword [rsp + 0xd0], r10
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0x160], r11
lea rax, [r11 + r9]
mov rcx, rdi
nop
call sym.runtime.memmove
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x178], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x180], rdx
mov rdx, qword [rsp + 0x160]
mov qword [rsp + 0x170], rdx
mov rdx, qword [rsp + 0x168]
nop
nop
nop
test rdx, rdx
je 0x5043f7
lea r8, [rsp + 0x168]
cmp rdx, r8
je 0x504407
jmp 0x50470f
lea rdx, [rsp + 0x168]
mov qword [rsp + 0x168], rdx
mov rcx, qword [rsp + 0x180]
mov rbx, qword [rsp + 0x178]
inc rbx
mov rax, qword [rsp + 0x170]
cmp rcx, rbx
jae 0x504448
mov edi, 1
lea rsi, [0x00527000]
call sym.runtime.growslice
mov qword [rsp + 0x180], rcx
mov qword [rsp + 0x170], rax
mov qword [rsp + 0x178], rbx
mov byte [rbx + rax - 1], 0x25
movzx edx, byte [rsp + 0x45]
mov r8d, edx
shr dl, 4
movzx edx, dl
mov r9, qword [rsp + 0x168]
lea r10, [0x005560a1]
movzx edx, byte [r10 + rdx]
nop
test r9, r9
je 0x50448f
lea r11, [rsp + 0x168]
cmp r9, r11
je 0x50449f
jmp 0x5046fc
lea r9, [rsp + 0x168]
mov qword [rsp + 0x168], r9
mov rcx, qword [rsp + 0x180]
mov rbx, qword [rsp + 0x178]
inc rbx
mov rax, qword [rsp + 0x170]
cmp rcx, rbx
jae 0x5044f6
mov byte [rsp + 0x47], dl
mov edi, 1
lea rsi, [0x00527000]
call sym.runtime.growslice
mov qword [rsp + 0x180], rcx
mov qword [rsp + 0x170], rax
movzx edx, byte [rsp + 0x47]
movzx r8d, byte [rsp + 0x45]
lea r10, [0x005560a1]
mov qword [rsp + 0x178], rbx
mov byte [rbx + rax - 1], dl
and r8d, 0xf
mov rdx, qword [rsp + 0x168]
movzx r8d, byte [r8 + r10]
nop
test rdx, rdx
je 0x50452b
lea r9, [rsp + 0x168]
cmp rdx, r9
je 0x50453b
jmp 0x5046e9
lea rdx, [rsp + 0x168]
mov qword [rsp + 0x168], rdx
mov rcx, qword [rsp + 0x180]
mov rbx, qword [rsp + 0x178]
inc rbx
mov rax, qword [rsp + 0x170]
cmp rcx, rbx
jae 0x504587
mov byte [rsp + 0x46], r8b
mov edi, 1
lea rsi, [0x00527000]
call sym.runtime.growslice
mov qword [rsp + 0x180], rcx
mov qword [rsp + 0x170], rax
movzx r8d, byte [rsp + 0x46]
mov qword [rsp + 0x178], rbx
mov byte [rbx + rax - 1], r8b
mov rcx, qword [rsp + 0xa0]
lea rdx, [rcx + 1]
mov rax, rcx
mov rsi, qword [rsp + 0xe0]
mov rcx, rdx
mov rdx, qword [rsp + 0x48]
jmp 0x50421d
cmp rcx, rdx
ja 0x5046de
sub rdx, rcx
mov rdi, rdx
neg rdx
sar rdx, 0x3f
and rcx, rdx
mov rdx, qword [rsp + 0x168]
lea rbx, [rcx + rsi]
nop
test rdx, rdx
je 0x5045fd
lea r8, [rsp + 0x168]
cmp rdx, r8
je 0x50460d
jmp 0x5046cb
lea rdx, [rsp + 0x168]
mov qword [rsp + 0x168], rdx
mov rcx, qword [rsp + 0x180]
mov rdx, qword [rsp + 0x178]
lea r8, [rdx + rdi]
mov rax, qword [rsp + 0x170]
cmp rcx, r8
jae 0x504670
mov qword [rsp + 0xd0], rdi
mov qword [rsp + 0x100], rbx
mov qword [rsp + 0xc8], rdx
mov rbx, r8
lea rsi, [0x00527000]
call sym.runtime.growslice
mov rdx, qword [rsp + 0xc8]
mov rdi, qword [rsp + 0xd0]
mov r8, rbx
mov rbx, qword [rsp + 0x100]
mov qword [rsp + 0xd0], r8
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0x160], rax
add rdx, rax
mov rax, rdx
mov rcx, rdi
call sym.runtime.memmove
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x178], rdx
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x180], rdx
mov rdx, qword [rsp + 0x160]
mov qword [rsp + 0x170], rdx
jmp 0x5036e6
lea rax, [0x00526cc0]
lea rbx, [0x005a01f8]
call sym.runtime.gopanic
mov rax, rcx
mov rcx, rdx
call sym.runtime.panicSliceB
lea rax, [0x00526cc0]
lea rbx, [0x005a01f8]
call sym.runtime.gopanic
lea rax, [0x00526cc0]
lea rbx, [0x005a01f8]
call sym.runtime.gopanic
lea rax, [0x00526cc0]
lea rbx, [0x005a01f8]
nop dword [rax]
call sym.runtime.gopanic
lea rax, [0x00526cc0]
lea rbx, [0x005a01f8]
call sym.runtime.gopanic
mov rdx, rax
mov rax, rcx
mov rcx, rdx
call sym.runtime.panicSliceB
lea rax, [0x00526cc0]
lea rbx, [0x005a01f8]
call sym.runtime.gopanic
lea rax, [0x00526cc0]
lea rbx, [0x005a01f8]
call sym.runtime.gopanic
lea rax, [0x00526cc0]
lea rbx, [0x005a01f8]
call sym.runtime.gopanic
lea rax, [0x00526cc0]
lea rbx, [0x005a01f8]
call sym.runtime.gopanic
lea rax, [0x00526cc0]
lea rbx, [0x005a01f8]
call sym.runtime.gopanic
lea rax, [0x00526cc0]
lea rbx, [0x005a01f8]
call sym.runtime.gopanic
lea rax, [0x00526cc0]
lea rbx, [0x005a01f8]
call sym.runtime.gopanic
lea rax, [0x00526cc0]
lea rbx, [0x005a01f8]
call sym.runtime.gopanic
lea rax, [0x00526cc0]
lea rbx, [0x005a01f8]
call sym.runtime.gopanic
lea rax, [0x00526cc0]
lea rbx, [0x005a01f8]
nop
call sym.runtime.gopanic
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp sym.mime.FormatMediaType