Function at 0x4dde00
Capabilities:
Access peb ldr_data

Disassembly:
lea r12, [rsp - 8]
cmp r12, qword [r14 + 0x10]
jbe 0x4de191
push rbp
mov rbp, rsp
add rsp, 0xffffffffffffff80
mov qword [rsp + 0x90], rax
nop
cmp ecx, 0x80
jb 0x4ddeb2
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0x90], rax
nop dword [rax]
cmp ecx, 0xfffd
jne 0x4dde4f
xor ecx, ecx
jmp 0x4de138
nop
cmp ecx, 0xd800
jb 0x4dde68
lea edx, [rcx - 0xe000]
nop
cmp edx, 0x101fff
ja 0x4ddea5
movsxd rbx, ecx
mov qword [rsp + 0x68], rbx
lea rax, [rsp + 0x2c]
call sym.runtime.intstring
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x70], rax
lea rcx, [rbx - 1]
mov qword [rsp + 0x38], rcx
mov rdx, qword [rsp + 0x98]
mov rsi, qword [rsp + 0x90]
mov rdi, rcx
xor r8d, r8d
jmp 0x4ddee8
mov rax, 0xffffffffffffffff
sub rsp, 0xffffffffffffff80
pop rbp
ret
nop
mov qword [rsp], rax
mov qword [rsp + 8], rbx
mov byte [rsp + 0x10], cl
call sym.internal_bytealg.IndexByteString.abi0
xorps xmm15, xmm15
mov r14, qword [0x007e8d38]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x18]
sub rsp, 0xffffffffffffff80
pop rbp
ret
mov rbx, r11
mov rcx, r12
cmp rdx, rcx
jle 0x4ddfe5
jbe 0x4de12a
movzx r9d, byte [rsi + rcx]
nop dword [rax]
cmp rbx, rdi
jbe 0x4de11f
movzx r10d, byte [rax + rbx - 1]
cmp r10b, r9b
je 0x4ddf9d
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x50], r8
sub rdx, rcx
dec rdx
mov rbx, rdx
neg rdx
sar rdx, 0x3f
lea rdi, [rcx + 1]
and rdx, rdi
add rdx, rsi
nop
mov qword [rsp], rdx
mov qword [rsp + 8], rbx
mov byte [rsp + 0x10], r10b
call sym.internal_bytealg.IndexByteString.abi0
xorps xmm15, xmm15
mov r14, qword [0x007e8d38]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x18]
test rax, rax
jl 0x4ddfd8
mov rdx, qword [rsp + 0x40]
lea rcx, [rdx + rax]
lea rcx, [rcx + 1]
mov rax, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x98]
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x90]
mov rdi, qword [rsp + 0x38]
mov r8, qword [rsp + 0x50]
mov r9d, 1
jmp 0x4de000
inc r8
lea r9, [r10 + 0x11]
sar r9, 0x3f
shr r9, 0x3d
lea r9, [r10 + r9]
lea r9, [r9 + 0x11]
sar r9, 3
lea r12, [r10 + 1]
cmp r9, r8
jge 0x4ddee2
cmp rdx, r12
jle 0x4ddee2
jmp 0x4de045
mov rax, 0xffffffffffffffff
sub rsp, 0xffffffffffffff80
pop rbp
ret
mov rax, 0xffffffffffffffff
sub rsp, 0xffffffffffffff80
pop rbp
ret
inc r9
mov rcx, r10
mov rbx, r11
nop dword [rax + rax]
cmp rbx, r9
jle 0x4de0f1
mov r10, rcx
sub rcx, r9
cmp rdx, rcx
jbe 0x4de114
mov r11, rbx
sub rbx, r9
lea r12, [rbx - 1]
movzx r13d, byte [rsi + rcx]
cmp r11, r12
jbe 0x4de109
movzx r12d, byte [rbx + rax - 1]
cmp r12b, r13b
je 0x4ddff2
nop dword [rax + rax]
jmp 0x4ddfa5
mov rax, r10
sub rax, r11
lea rdi, [rax + 2]
cmp rdx, rdi
jb 0x4de0fe
mov qword [rsp + 0x60], r10
sub rdx, rax
lea rcx, [rdx - 2]
mov qword [rsp + 0x58], rcx
neg rcx
sar rcx, 0x3f
and rdi, rcx
lea rcx, [rdi + rsi]
mov qword [rsp + 0x78], rcx
lea rax, [rsp + 0x28]
mov rbx, qword [rsp + 0x68]
call sym.runtime.intstring
mov rcx, qword [rsp + 0x78]
mov qword [rsp], rcx
mov rcx, qword [rsp + 0x58]
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rax
mov qword [rsp + 0x18], rbx
call sym.internal_bytealg.IndexString.abi0
xorps xmm15, xmm15
mov r14, qword [0x007e8d38]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rcx, qword [rsp + 0x20]
test rcx, rcx
jl 0x4de0e4
mov rdx, qword [rsp + 0x60]
lea rax, [rdx + rcx]
mov rcx, qword [rsp + 0x30]
sub rax, rcx
add rax, 2
sub rsp, 0xffffffffffffff80
pop rbp
ret
mov rax, 0xffffffffffffffff
sub rsp, 0xffffffffffffff80
pop rbp
ret
sub rcx, rbx
lea rax, [rcx + 1]
sub rsp, 0xffffffffffffff80
pop rbp
ret
mov rax, rdi
mov rcx, rdx
call sym.runtime.panicSliceB
mov rax, r12
mov rcx, r11
call sym.runtime.panicIndex
mov rax, rcx
mov rcx, rdx
call sym.runtime.panicIndex
mov rax, rdi
mov rcx, rbx
call sym.runtime.panicIndex
mov rax, rcx
mov rcx, rdx
call sym.runtime.panicIndex
mov rcx, rsi
cmp rbx, rcx
jle 0x4de184
movzx edx, byte [rax + rcx]
cmp edx, 0x80
jge 0x4de14f
lea rsi, [rcx + 1]
jmp 0x4de173
mov qword [rsp + 0x48], rcx
call sym.runtime.decoderune
mov rcx, qword [rsp + 0x48]
mov edx, eax
mov rsi, rbx
mov rax, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x98]
cmp edx, 0xfffd
jne 0x4de135
mov rax, rcx
sub rsp, 0xffffffffffffff80
pop rbp
ret
mov rax, 0xffffffffffffffff
sub rsp, 0xffffffffffffff80
pop rbp
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov dword [rsp + 0x18], ecx
nop
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov ecx, dword [rsp + 0x18]
jmp sym.strings.IndexRune