Function at 0x4c3f00
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4c4f8c
sub esp, 0x64
xor ebx, ebx
mov dword [esp + 0x74], ebx
mov dword [esp + 0x78], ebx
xor ebx, ebx
mov byte [esp + 0x30], bl
mov byte [esp + 0x31], bl
mov byte [esp + 0x32], bl
mov byte [esp + 0x33], bl
mov ebx, dword [esp + 0x6c]
imul ebx, ebx, 3
mov dword [esp], 0x506a80
mov dword [esp + 4], 0
mov dword [esp + 8], 0
mov eax, ebx
sar ebx, 0x1f
sub eax, ebx
sar eax, 1
cdq
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
call dbg.runtime.makeslice
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x40], edi
mov edx, edi
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], eax
mov ecx, ebx
inc ebx
cmp ebx, eax
ja 0x4c4f4e
mov esi, ebx
mov dword [esp + 0x44], ebx
mov ebx, edi
add ebx, ecx
movzx ebp, byte [esp + 0x70]
xchg ebp, eax
mov byte [ebx], al
xchg ebp, eax
mov ebx, dword [esp + 0x6c]
cmp ebx, 0
jle 0x4c419b
cmp dword [esp + 0x6c], 0
jbe 0x4c4f47
mov ebx, dword [esp + 0x68]
movzx ebp, byte [ebx]
mov ecx, ebp
mov dword [esp + 0x24], 1
cmp ebp, 0x80
jl 0x4c3fff
mov ebx, dword [esp + 0x68]
mov dword [esp], ebx
mov ebx, dword [esp + 0x6c]
mov dword [esp + 4], ebx
call dbg.unicode/utf8.DecodeRuneInString
mov esi, dword [esp + 0x44]
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 8]
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 0x24]
cmp ebx, 1
jne 0x4c42ba
cmp ecx, 0xfffd
jne 0x4c42ba
mov edi, edx
mov dword [esp + 0x5c], esi
mov ebx, esi
add ebx, 2
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x60], eax
mov ebp, dword [esp + 0x3c]
sub ebp, eax
cmp ebp, 0
jle 0x4c406e
mov dword [esp], 0x506a80
mov dword [esp + 0x58], edi
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebp
call dbg.runtime.growslice_n
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x5c], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x60], ebx
mov ebp, edi
mov dword [esp + 0x58], edi
add ebp, esi
mov dword [esp], ebp
mov ebx, dword [0x54e1c0]
mov dword [esp + 4], ebx
mov dword [esp + 8], 2
call dbg.runtime.memmove
mov ebp, dword [esp + 0x60]
mov eax, dword [esp + 0x44]
add eax, 2
cmp eax, ebp
ja 0x4c42b3
mov edx, dword [esp + 0x58]
mov edi, eax
mov eax, ebp
cmp dword [esp + 0x6c], 0
jbe 0x4c42ac
mov ebx, dword [esp + 0x68]
movzx ebp, byte [ebx]
mov ebx, ebp
shr bl, 4
movzx ebx, bl
cmp ebx, 0x10
jae 0x4c42a5
mov ebp, 0x55d2e0
add ebp, ebx
movzx ebx, byte [ebp]
mov byte [esp + 0x23], bl
mov dword [esp + 0x40], edx
mov esi, edx
mov dword [esp + 0x44], edi
mov ebx, edi
mov dword [esp + 0x48], eax
mov ecx, edi
inc ebx
cmp ebx, eax
ja 0x4c426f
mov dword [esp + 0x44], ebx
mov ebx, esi
add ebx, ecx
movzx ebp, byte [esp + 0x23]
xchg ebp, eax
mov byte [ebx], al
xchg ebp, eax
cmp dword [esp + 0x6c], 0
jbe 0x4c4268
mov ebx, dword [esp + 0x68]
movzx ebp, byte [ebx]
mov ebx, ebp
and ebx, 0xf
movzx ebx, bl
cmp ebx, 0x10
jae 0x4c4261
mov ebp, 0x55d2e0
add ebp, ebx
movzx ebx, byte [ebp]
mov byte [esp + 0x23], bl
mov dword [esp + 0x40], edx
mov edi, edx
mov ebx, dword [esp + 0x44]
mov dword [esp + 0x48], eax
mov ecx, ebx
inc ebx
cmp ebx, eax
ja 0x4c4223
mov esi, ebx
mov dword [esp + 0x44], ebx
mov ebx, edi
add ebx, ecx
movzx ebp, byte [esp + 0x23]
xchg ebp, eax
mov byte [ebx], al
xchg ebp, eax
mov ecx, dword [esp + 0x24]
mov ebp, dword [esp + 0x6c]
cmp ecx, ebp
ja 0x4c421c
mov edi, ebp
sub edi, ecx
mov ebp, dword [esp + 0x68]
cmp edi, 0
je 0x4c4186
add ebp, ecx
mov dword [esp + 0x6c], edi
mov dword [esp + 0x68], ebp
mov ebx, dword [esp + 0x6c]
cmp ebx, 0
jg 0x4c3faf
mov edi, edx
mov ebx, esi
mov ecx, esi
inc ebx
cmp ebx, eax
ja 0x4c41ed
mov esi, ebx
mov ebx, edi
add ebx, ecx
movzx ebp, byte [esp + 0x70]
xchg ebp, eax
mov byte [ebx], al
xchg ebp, eax
mov dword [esp], 0
mov dword [esp + 0x40], edx
mov dword [esp + 4], edx
mov dword [esp + 0x44], esi
mov dword [esp + 8], esi
mov dword [esp + 0x48], eax
mov dword [esp + 0xc], eax
call dbg.runtime.slicebytetostring
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x74], ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x78], ebx
add esp, 0x64
ret
mov dword [esp], 0x506a80
mov dword [esp + 4], edi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebx
call dbg.runtime.growslice
mov edx, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, esi
inc esi
mov edi, edx
jmp 0x4c41a8
call dbg.runtime.panicslice
ud2
mov dword [esp], 0x506a80
mov dword [esp + 4], edi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebx
call dbg.runtime.growslice
mov edx, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, esi
inc esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], eax
mov edi, edx
mov dword [esp + 0x40], edx
jmp 0x4c415a
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
mov dword [esp], 0x506a80
mov dword [esp + 4], esi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebx
call dbg.runtime.growslice
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, ebx
inc ebx
mov dword [esp + 0x44], ebx
mov esi, edx
jmp 0x4c40fc
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicslice
ud2
movzx ebx, byte [esp + 0x70]
mov dword [esp + 0x34], ecx
cmp ebx, ecx
je 0x4c4e81
cmp ecx, 0x5c
je 0x4c4e81
cmp byte [esp + 0x71], 0
je 0x4c4d06
cmp ecx, 0x80
jge 0x4c436f
mov dword [esp], ecx
call dbg.strconv.IsPrint
mov ecx, dword [esp + 0x34]
mov esi, dword [esp + 0x44]
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x48]
movzx ebx, byte [esp + 4]
cmp bl, 0
je 0x4c436f
mov byte [esp + 0x23], cl
mov edi, edx
mov ebx, esi
mov ecx, esi
inc ebx
cmp ebx, eax
ja 0x4c4334
mov esi, ebx
mov dword [esp + 0x44], ebx
mov ebx, edi
add ebx, ecx
movzx ebp, byte [esp + 0x23]
xchg ebp, eax
mov byte [ebx], al
xchg ebp, eax
jmp 0x4c4167
mov dword [esp], 0x506a80
mov dword [esp + 4], edi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebx
call dbg.runtime.growslice
mov edx, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, esi
inc esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], eax
mov edi, edx
mov dword [esp + 0x40], edx
jmp 0x4c4322
cmp ecx, 9
jg 0x4c4a3d
cmp ecx, 7
jne 0x4c4428
mov edi, edx
mov dword [esp + 0x5c], esi
mov ebx, esi
add ebx, 2
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x60], eax
mov ebp, dword [esp + 0x3c]
sub ebp, eax
cmp ebp, 0
jle 0x4c43d7
mov dword [esp], 0x506a80
mov dword [esp + 0x58], edi
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebp
call dbg.runtime.growslice_n
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x5c], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x60], ebx
mov ebp, edi
mov dword [esp + 0x58], edi
add ebp, esi
mov dword [esp], ebp
mov ebx, dword [0x54e180]
mov dword [esp + 4], ebx
mov dword [esp + 8], 2
call dbg.runtime.memmove
mov ebp, dword [esp + 0x60]
mov eax, dword [esp + 0x44]
add eax, 2
cmp eax, ebp
ja 0x4c4421
mov edx, dword [esp + 0x58]
mov dword [esp + 0x40], edx
mov esi, eax
mov dword [esp + 0x44], eax
mov eax, ebp
mov dword [esp + 0x48], ebp
jmp 0x4c4167
call dbg.runtime.panicslice
ud2
cmp ecx, 8
jne 0x4c44d8
mov edi, edx
mov dword [esp + 0x5c], esi
mov ebx, esi
add ebx, 2
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x60], eax
mov ebp, dword [esp + 0x3c]
sub ebp, eax
cmp ebp, 0
jle 0x4c4487
mov dword [esp], 0x506a80
mov dword [esp + 0x58], edi
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebp
call dbg.runtime.growslice_n
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x5c], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x60], ebx
mov ebp, edi
mov dword [esp + 0x58], edi
add ebp, esi
mov dword [esp], ebp
mov ebx, dword [0x54e188]
mov dword [esp + 4], ebx
mov dword [esp + 8], 2
call dbg.runtime.memmove
mov ebp, dword [esp + 0x60]
mov eax, dword [esp + 0x44]
add eax, 2
cmp eax, ebp
ja 0x4c44d1
mov edx, dword [esp + 0x58]
mov dword [esp + 0x40], edx
mov esi, eax
mov dword [esp + 0x44], eax
mov eax, ebp
mov dword [esp + 0x48], ebp
jmp 0x4c4167
call dbg.runtime.panicslice
ud2
cmp ecx, 9
jne 0x4c4588
mov edi, edx
mov dword [esp + 0x5c], esi
mov ebx, esi
add ebx, 2
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x60], eax
mov ebp, dword [esp + 0x3c]
sub ebp, eax
cmp ebp, 0
jle 0x4c4537
mov dword [esp], 0x506a80
mov dword [esp + 0x58], edi
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebp
call dbg.runtime.growslice_n
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x5c], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x60], ebx
mov ebp, edi
mov dword [esp + 0x58], edi
add ebp, esi
mov dword [esp], ebp
mov ebx, dword [0x54e1a8]
mov dword [esp + 4], ebx
mov dword [esp + 8], 2
call dbg.runtime.memmove
mov ebp, dword [esp + 0x60]
mov eax, dword [esp + 0x44]
add eax, 2
cmp eax, ebp
ja 0x4c4581
mov edx, dword [esp + 0x58]
mov dword [esp + 0x40], edx
mov esi, eax
mov dword [esp + 0x44], eax
mov eax, ebp
mov dword [esp + 0x48], ebp
jmp 0x4c4167
call dbg.runtime.panicslice
ud2
cmp ecx, 0x20
jge 0x4c4771
mov edi, edx
mov dword [esp + 0x5c], esi
mov ebx, esi
add ebx, 2
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x60], eax
mov ebp, dword [esp + 0x3c]
sub ebp, eax
cmp ebp, 0
jle 0x4c45e7
mov dword [esp], 0x506a80
mov dword [esp + 0x58], edi
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebp
call dbg.runtime.growslice_n
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x5c], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x60], ebx
mov ebp, edi
mov dword [esp + 0x58], edi
add ebp, esi
mov dword [esp], ebp
mov ebx, dword [0x54e1c0]
mov dword [esp + 4], ebx
mov dword [esp + 8], 2
call dbg.runtime.memmove
mov ebp, dword [esp + 0x60]
mov eax, dword [esp + 0x44]
add eax, 2
cmp eax, ebp
ja 0x4c476a
mov edx, dword [esp + 0x58]
mov edi, eax
mov eax, ebp
cmp dword [esp + 0x6c], 0
jbe 0x4c4763
mov ebx, dword [esp + 0x68]
movzx ebp, byte [ebx]
mov ebx, ebp
shr bl, 4
movzx ebx, bl
cmp ebx, 0x10
jae 0x4c475c
mov ebp, 0x55d2e0
add ebp, ebx
movzx ebx, byte [ebp]
mov byte [esp + 0x23], bl
mov dword [esp + 0x40], edx
mov esi, edx
mov dword [esp + 0x44], edi
mov ebx, edi
mov dword [esp + 0x48], eax
mov ecx, edi
inc ebx
cmp ebx, eax
ja 0x4c4726
mov dword [esp + 0x44], ebx
mov ebx, esi
add ebx, ecx
movzx ebp, byte [esp + 0x23]
xchg ebp, eax
mov byte [ebx], al
xchg ebp, eax
cmp dword [esp + 0x6c], 0
jbe 0x4c471f
mov ebx, dword [esp + 0x68]
movzx ebp, byte [ebx]
mov ebx, ebp
and ebx, 0xf
movzx ebx, bl
cmp ebx, 0x10
jae 0x4c4718
mov ebp, 0x55d2e0
add ebp, ebx
movzx ebx, byte [ebp]
mov byte [esp + 0x23], bl
mov dword [esp + 0x40], edx
mov edi, edx
mov ebx, dword [esp + 0x44]
mov dword [esp + 0x48], eax
mov ecx, ebx
inc ebx
cmp ebx, eax
ja 0x4c46dd
mov esi, ebx
mov dword [esp + 0x44], ebx
mov ebx, edi
add ebx, ecx
movzx ebp, byte [esp + 0x23]
xchg ebp, eax
mov byte [ebx], al
xchg ebp, eax
jmp 0x4c4167
mov dword [esp], 0x506a80
mov dword [esp + 4], edi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebx
call dbg.runtime.growslice
mov edx, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, esi
inc esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], eax
mov edi, edx
mov dword [esp + 0x40], edx
jmp 0x4c46cb
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
mov dword [esp], 0x506a80
mov dword [esp + 4], esi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebx
call dbg.runtime.growslice
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, ebx
inc ebx
mov dword [esp + 0x44], ebx
mov esi, edx
jmp 0x4c4675
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicslice
ud2
cmp ecx, 0x10ffff
jle 0x4c48d7
mov dword [esp + 0x34], 0xfffd
mov edi, edx
mov dword [esp + 0x50], esi
mov ebp, esi
add ebp, 2
mov dword [esp + 0x54], eax
sub ebp, eax
cmp ebp, 0
jle 0x4c47d3
mov dword [esp], 0x506a80
mov dword [esp + 0x4c], edi
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebp
call dbg.runtime.growslice_n
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x50], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x54], ebx
mov ebp, edi
mov dword [esp + 0x4c], edi
add ebp, esi
mov dword [esp], ebp
mov ebx, dword [0x54e1b0]
mov dword [esp + 4], ebx
mov dword [esp + 8], 2
call dbg.runtime.memmove
mov ebp, dword [esp + 0x54]
mov eax, dword [esp + 0x44]
add eax, 2
cmp eax, ebp
ja 0x4c48d0
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x40], edx
mov esi, eax
mov dword [esp + 0x44], eax
mov eax, ebp
mov dword [esp + 0x48], ebp
mov dword [esp + 0x28], 0xc
mov ebx, dword [esp + 0x28]
cmp ebx, 0
jl 0x4c4167
mov ecx, dword [esp + 0x28]
mov ebx, dword [esp + 0x34]
cmp ecx, 0x20
jae 0x4c48c8
sar ebx, cl
and ebx, 0xf
cmp ebx, 0x10
jae 0x4c48c1
mov ebp, 0x55d2e0
add ebp, ebx
movzx ebx, byte [ebp]
mov byte [esp + 0x23], bl
mov edi, edx
mov ebx, esi
mov ecx, esi
inc ebx
cmp ebx, eax
ja 0x4c4886
mov esi, ebx
mov dword [esp + 0x44], ebx
mov ebx, edi
add ebx, ecx
movzx ebp, byte [esp + 0x23]
xchg ebp, eax
mov byte [ebx], al
xchg ebp, eax
mov ebx, dword [esp + 0x28]
sub ebx, 4
mov dword [esp + 0x28], ebx
jmp 0x4c4824
mov dword [esp], 0x506a80
mov dword [esp + 4], edi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebx
call dbg.runtime.growslice
mov edx, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, esi
inc esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], eax
mov edi, edx
mov dword [esp + 0x40], edx
jmp 0x4c486c
call dbg.runtime.panicindex
ud2
sar ebx, 0x1f
jmp 0x4c4842
call dbg.runtime.panicslice
ud2
cmp ecx, 0x10000
jl 0x4c4785
mov edi, edx
mov dword [esp + 0x50], esi
mov ebx, esi
add ebx, 2
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x54], eax
mov ebp, dword [esp + 0x3c]
sub ebp, eax
cmp ebp, 0
jle 0x4c4939
mov dword [esp], 0x506a80
mov dword [esp + 0x4c], edi
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebp
call dbg.runtime.growslice_n
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x50], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x54], ebx
mov ebp, edi
mov dword [esp + 0x4c], edi
add ebp, esi
mov dword [esp], ebp
mov ebx, dword [0x54e178]
mov dword [esp + 4], ebx
mov dword [esp + 8], 2
call dbg.runtime.memmove
mov ebp, dword [esp + 0x54]
mov eax, dword [esp + 0x44]
add eax, 2
cmp eax, ebp
ja 0x4c4a36
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x40], edx
mov esi, eax
mov dword [esp + 0x44], eax
mov eax, ebp
mov dword [esp + 0x48], ebp
mov dword [esp + 0x2c], 0x1c
mov ebx, dword [esp + 0x2c]
cmp ebx, 0
jl 0x4c4167
mov ecx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x34]
cmp ecx, 0x20
jae 0x4c4a2e
sar ebx, cl
and ebx, 0xf
cmp ebx, 0x10
jae 0x4c4a27
mov ebp, 0x55d2e0
add ebp, ebx
movzx ebx, byte [ebp]
mov byte [esp + 0x23], bl
mov edi, edx
mov ebx, esi
mov ecx, esi
inc ebx
cmp ebx, eax
ja 0x4c49ec
mov esi, ebx
mov dword [esp + 0x44], ebx
mov ebx, edi
add ebx, ecx
movzx ebp, byte [esp + 0x23]
xchg ebp, eax
mov byte [ebx], al
xchg ebp, eax
mov ebx, dword [esp + 0x2c]
sub ebx, 4
mov dword [esp + 0x2c], ebx
jmp 0x4c498a
mov dword [esp], 0x506a80
mov dword [esp + 4], edi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebx
call dbg.runtime.growslice
mov edx, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, esi
inc esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], eax
mov edi, edx
mov dword [esp + 0x40], edx
jmp 0x4c49d2
call dbg.runtime.panicindex
ud2
sar ebx, 0x1f
jmp 0x4c49a8
call dbg.runtime.panicslice
ud2
cmp ecx, 0xb
jg 0x4c4ba6
cmp ecx, 0xa
jne 0x4c4af6
mov edi, edx
mov dword [esp + 0x5c], esi
mov ebx, esi
add ebx, 2
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x60], eax
mov ebp, dword [esp + 0x3c]
sub ebp, eax
cmp ebp, 0
jle 0x4c4aa5
mov dword [esp], 0x506a80
mov dword [esp + 0x58], edi
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebp
call dbg.runtime.growslice_n
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x5c], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x60], ebx
mov ebp, edi
mov dword [esp + 0x58], edi
add ebp, esi
mov dword [esp], ebp
mov ebx, dword [0x54e198]
mov dword [esp + 4], ebx
mov dword [esp + 8], 2
call dbg.runtime.memmove
mov ebp, dword [esp + 0x60]
mov eax, dword [esp + 0x44]
add eax, 2
cmp eax, ebp
ja 0x4c4aef
mov edx, dword [esp + 0x58]
mov dword [esp + 0x40], edx
mov esi, eax
mov dword [esp + 0x44], eax
mov eax, ebp
mov dword [esp + 0x48], ebp
jmp 0x4c4167
call dbg.runtime.panicslice
ud2
cmp ecx, 0xb
jne 0x4c4588
mov edi, edx
mov dword [esp + 0x5c], esi
mov ebx, esi
add ebx, 2
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x60], eax
mov ebp, dword [esp + 0x3c]
sub ebp, eax
cmp ebp, 0
jle 0x4c4b55
mov dword [esp], 0x506a80
mov dword [esp + 0x58], edi
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebp
call dbg.runtime.growslice_n
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x5c], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x60], ebx
mov ebp, edi
mov dword [esp + 0x58], edi
add ebp, esi
mov dword [esp], ebp
mov ebx, dword [0x54e1b8]
mov dword [esp + 4], ebx
mov dword [esp + 8], 2
call dbg.runtime.memmove
mov ebp, dword [esp + 0x60]
mov eax, dword [esp + 0x44]
add eax, 2
cmp eax, ebp
ja 0x4c4b9f
mov edx, dword [esp + 0x58]
mov dword [esp + 0x40], edx
mov esi, eax
mov dword [esp + 0x44], eax
mov eax, ebp
mov dword [esp + 0x48], ebp
jmp 0x4c4167
call dbg.runtime.panicslice
ud2
cmp ecx, 0xc
jne 0x4c4c56
mov edi, edx
mov dword [esp + 0x5c], esi
mov ebx, esi
add ebx, 2
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x60], eax
mov ebp, dword [esp + 0x3c]
sub ebp, eax
cmp ebp, 0
jle 0x4c4c05
mov dword [esp], 0x506a80
mov dword [esp + 0x58], edi
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebp
call dbg.runtime.growslice_n
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x5c], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x60], ebx
mov ebp, edi
mov dword [esp + 0x58], edi
add ebp, esi
mov dword [esp], ebp
mov ebx, dword [0x54e190]
mov dword [esp + 4], ebx
mov dword [esp + 8], 2
call dbg.runtime.memmove
mov ebp, dword [esp + 0x60]
mov eax, dword [esp + 0x44]
add eax, 2
cmp eax, ebp
ja 0x4c4c4f
mov edx, dword [esp + 0x58]
mov dword [esp + 0x40], edx
mov esi, eax
mov dword [esp + 0x44], eax
mov eax, ebp
mov dword [esp + 0x48], ebp
jmp 0x4c4167
call dbg.runtime.panicslice
ud2
cmp ecx, 0xd
jne 0x4c4588
mov edi, edx
mov dword [esp + 0x5c], esi
mov ebx, esi
add ebx, 2
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x60], eax
mov ebp, dword [esp + 0x3c]
sub ebp, eax
cmp ebp, 0
jle 0x4c4cb5
mov dword [esp], 0x506a80
mov dword [esp + 0x58], edi
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebp
call dbg.runtime.growslice_n
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x5c], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x60], ebx
mov ebp, edi
mov dword [esp + 0x58], edi
add ebp, esi
mov dword [esp], ebp
mov ebx, dword [0x54e1a0]
mov dword [esp + 4], ebx
mov dword [esp + 8], 2
call dbg.runtime.memmove
mov ebp, dword [esp + 0x60]
mov eax, dword [esp + 0x44]
add eax, 2
cmp eax, ebp
ja 0x4c4cff
mov edx, dword [esp + 0x58]
mov dword [esp + 0x40], edx
mov esi, eax
mov dword [esp + 0x44], eax
mov eax, ebp
mov dword [esp + 0x48], ebp
jmp 0x4c4167
call dbg.runtime.panicslice
ud2
mov dword [esp], ecx
call dbg.strconv.IsPrint
mov ecx, dword [esp + 0x34]
mov esi, dword [esp + 0x44]
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x48]
movzx ebx, byte [esp + 4]
cmp bl, 0
jne 0x4c4d59
cmp byte [esp + 0x72], 0
je 0x4c4e7c
mov dword [esp], ecx
call dbg.strconv.isInGraphicList
mov ecx, dword [esp + 0x34]
mov esi, dword [esp + 0x44]
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x48]
movzx ebx, byte [esp + 4]
cmp bl, 0
je 0x4c4e7c
lea ebx, [esp + 0x30]
cmp ebx, 0
je 0x4c4e75
mov edx, 4
mov eax, 4
mov dword [esp + 0x58], ebx
mov dword [esp], ebx
mov dword [esp + 0x5c], edx
mov dword [esp + 4], edx
mov dword [esp + 0x60], eax
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
call dbg.unicode/utf8.EncodeRune
mov eax, dword [esp + 0x10]
cmp eax, 4
ja 0x4c4e6e
lea ebx, [esp + 0x30]
cmp ebx, 0
je 0x4c4e67
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], 4
mov dword [esp + 0x58], ebx
mov esi, dword [esp + 0x40]
mov ebp, dword [esp + 0x44]
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x50], ebp
mov ebx, dword [esp + 0x5c]
mov edx, ebp
add ebp, ebx
mov dword [esp + 0x54], ecx
sub ebp, ecx
cmp ebp, 0
jle 0x4c4e11
mov dword [esp], 0x506a80
mov dword [esp + 0x4c], esi
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebp
call dbg.runtime.growslice_n
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x50], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x54], ebx
mov eax, dword [esp + 0x5c]
mov ebx, dword [esp + 0x44]
mov ebp, esi
mov dword [esp + 0x4c], esi
add ebp, ebx
mov dword [esp], ebp
mov ebx, dword [esp + 0x58]
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
call dbg.runtime.memmove
mov edi, dword [esp + 0x54]
mov ebp, dword [esp + 0x44]
mov ebx, dword [esp + 0x5c]
add ebp, ebx
cmp ebp, edi
ja 0x4c4e60
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x40], edx
mov esi, ebp
mov dword [esp + 0x44], ebp
mov eax, edi
mov dword [esp + 0x48], edi
jmp 0x4c4167
call dbg.runtime.panicslice
ud2
mov dword [ebx], eax
jmp 0x4c4daa
call dbg.runtime.panicslice
ud2
mov dword [ebx], eax
jmp 0x4c4d66
jmp 0x4c436f
mov edi, edx
mov dword [esp + 0x38], eax
mov ebx, esi
inc ebx
mov ebp, dword [esp + 0x38]
cmp ebx, ebp
ja 0x4c4f09
mov dword [esp + 0x44], ebx
mov ebx, edi
add ebx, esi
mov byte [ebx], 0x5c
mov byte [esp + 0x23], cl
mov dword [esp + 0x40], edx
mov edi, edx
mov ebx, dword [esp + 0x44]
mov dword [esp + 0x48], eax
mov ecx, ebx
inc ebx
cmp ebx, eax
ja 0x4c4ece
mov esi, ebx
mov dword [esp + 0x44], ebx
mov ebx, edi
add ebx, ecx
movzx ebp, byte [esp + 0x23]
xchg ebp, eax
mov byte [ebx], al
xchg ebp, eax
jmp 0x4c4167
mov dword [esp], 0x506a80
mov dword [esp + 4], edi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebx
call dbg.runtime.growslice
mov edx, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, esi
inc esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], eax
mov edi, edx
mov dword [esp + 0x40], edx
jmp 0x4c4ebc
mov dword [esp], 0x506a80
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov ebp, dword [esp + 0x38]
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call dbg.runtime.growslice
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov esi, ebx
inc ebx
mov dword [esp + 0x44], ebx
mov edi, edx
jmp 0x4c4e96
call dbg.runtime.panicindex
ud2
mov dword [esp], 0x506a80
mov dword [esp + 4], edi
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ebx
call dbg.runtime.growslice
mov edx, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ecx, esi
inc esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], eax
mov edi, edx
mov dword [esp + 0x40], edx
jmp 0x4c3f95
call dbg.runtime.morestack_noctxt
jmp dbg.strconv.quoteWith