Function at 0x431160
Capabilities:
Run powershell expression

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x43166d
push rbp
mov rbp, rsp
sub rsp, 0x58
movabs rdx, 0x800000000000
lea rsi, [rbx + rdx]
add rdx, rcx
cmp rdx, rsi
jbe 0x431191
nop
mov rdi, rcx
sub rcx, rbx
jmp 0x431196
mov rdi, rcx
xor ecx, ecx
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x40], rbx
test rcx, rcx
je 0x4315ff
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rdx
call sym.runtime._addrRanges_.findSucc
nop dword [rax]
test rax, rax
jle 0x4311f5
mov rsi, qword [rsp + 0x68]
mov rcx, qword [rsi + 8]
lea rdi, [rax - 1]
cmp rcx, rdi
jbe 0x4315f7
mov r8, qword [rsi]
shl rdi, 4
mov rdi, qword [r8 + rdi + 8]
mov r8, qword [rsp + 0x40]
cmp rdi, r8
sete dil
jmp 0x431201
mov rsi, qword [rsp + 0x68]
mov r8, qword [rsp + 0x40]
xor edi, edi
mov rcx, qword [rsi + 8]
mov r9, qword [rsi]
cmp rax, rcx
jge 0x43122c
jae 0x4315f2
mov r10, rax
shl r10, 4
mov r10, qword [r9 + r10]
mov r11, qword [rsp + 0x48]
cmp r10, r11
sete r10b
jmp 0x431234
mov r11, qword [rsp + 0x48]
xor r10d, r10d
test r10b, r10b
je 0x43132a
nop dword [rax]
test dil, dil
je 0x431325
cmp rax, rcx
jae 0x4315ed
lea rdi, [rax - 1]
mov r10, rax
shl r10, 4
mov r12, qword [r9 + r10 + 8]
cmp rcx, rdi
jbe 0x4315e5
shl rdi, 4
mov qword [r9 + rdi + 8], r12
mov rcx, qword [rsi + 8]
nop dword [rax + rax]
cmp rax, rcx
ja 0x4315e0
mov rdi, qword [rsi]
mov r9, qword [rsi + 0x10]
sub r9, rax
mov r12, r9
neg r9
sar r9, 0x3f
and r9, r10
lea r10, [rax + 1]
mov r13, rcx
sub r13, rax
lea rax, [rdi + r9]
cmp rcx, r10
jb 0x4315d4
lea r9, [r13 - 1]
dec r12
neg r12
shl r10, 4
sar r12, 0x3f
and r12, r10
lea rbx, [rdi + r12]
cmp r13, r9
cmovg r13, r9
cmp rbx, rax
je 0x4312f7
shl r13, 4
mov rcx, r13
call sym.runtime.memmove
mov rsi, qword [rsp + 0x68]
mov r8, qword [rsp + 0x40]
mov r11, qword [rsp + 0x48]
mov rdx, qword [rsi + 0x10]
mov rcx, qword [rsi + 8]
dec rcx
cmp rdx, rcx
jb 0x4315cf
mov qword [rsi + 8], rcx
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
cmp rax, rcx
nop dword [rax]
jmp 0x431575
test r10b, r10b
jmp 0x431359
test dil, dil
je 0x431356
dec rax
cmp rcx, rax
jbe 0x4315ca
shl rax, 4
mov qword [r9 + rax + 8], r11
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
cmp rax, rcx
jmp 0x431575
test r10b, r10b
je 0x431385
nop dword [rax + rax]
cmp rax, rcx
jae 0x4315c5
shl rax, 4
mov qword [r9 + rax], r8
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
cmp rax, rcx
nop
jmp 0x431575
mov qword [rsp + 0x18], rax
mov rdx, qword [rsi + 0x10]
lea rdi, [rcx + 1]
cmp rdx, rdi
jl 0x431437
nop dword [rax + rax]
jb 0x4315ba
mov qword [rsi + 8], rdi
lea rdx, [rax + 1]
cmp rdx, rdi
ja 0x4315af
mov r9, qword [rsi]
mov r10, qword [rsi + 0x10]
sub r10, rax
lea r12, [r10 - 1]
neg r12
shl rdx, 4
sar r12, 0x3f
and r12, rdx
sub rcx, rax
lea rdx, [r9 + r12]
nop word [rax + rax]
cmp rax, rdi
ja 0x4315a7
lea rdi, [rcx + 1]
neg r10
mov r12, rax
shl r12, 4
sar r10, 0x3f
and r10, r12
lea rbx, [r10 + r9]
cmp rcx, rdi
cmovg rcx, rdi
cmp rbx, rdx
je 0x43154f
shl rcx, 4
mov rax, rdx
call sym.runtime.memmove
mov rax, qword [rsp + 0x18]
mov rsi, qword [rsp + 0x68]
mov r8, qword [rsp + 0x40]
mov r11, qword [rsp + 0x48]
jmp 0x43154f
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x50], r9
mov qword [rsi + 8], rdi
mov rax, rdx
shl rdx, 1
mov qword [rsi + 0x10], rdx
mov rdx, rax
shl rdx, 5
mov rcx, qword [rsi + 0x20]
mov ebx, 8
mov rax, rdx
call sym.runtime.persistentalloc
mov rdx, qword [rsp + 0x68]
mov qword [rdx], rax
mov rsi, qword [rdx + 0x10]
mov rcx, qword [rsp + 0x18]
nop dword [rax]
cmp rcx, rsi
ja 0x43159f
mov rsi, qword [rsp + 0x28]
cmp rcx, rsi
ja 0x431597
mov rbx, qword [rsp + 0x50]
nop dword [rax]
cmp rax, rbx
je 0x4314c8
mov rdx, rcx
shl rdx, 4
mov rcx, rdx
call sym.runtime.memmove
mov rcx, qword [rsp + 0x18]
mov rdx, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x28]
mov rdi, qword [rdx + 8]
lea rax, [rcx + 1]
cmp rdi, rax
jb 0x43158f
mov r8, qword [rdx]
mov r9, qword [rdx + 0x10]
sub rdi, rcx
sub r9, rcx
dec rdi
dec r9
neg r9
shl rax, 4
sar r9, 0x3f
and r9, rax
lea rax, [r8 + r9]
mov r8, qword [rsp + 0x20]
sub r8, rcx
mov r9, rcx
sub rcx, rsi
mov rsi, r9
shl r9, 4
sar rcx, 0x3f
and rcx, r9
add rbx, rcx
cmp r8, rdi
cmovl rdi, r8
cmp rbx, rax
je 0x43153f
shl rdi, 4
mov rcx, rdi
call sym.runtime.memmove
mov rdx, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x18]
mov rax, rsi
mov rsi, rdx
mov r8, qword [rsp + 0x40]
mov r11, qword [rsp + 0x48]
mov rcx, qword [rsi + 8]
cmp rax, rcx
jae 0x43158a
mov rcx, qword [rsi]
shl rax, 4
mov qword [rcx + rax], r8
mov qword [rcx + rax + 8], r11
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
cmp rax, rcx
jbe 0x43157d
nop
sub r11, r8
jmp 0x431580
xor r11d, r11d
add qword [rsi + 0x18], r11
add rsp, 0x58
pop rbp
ret
call sym.runtime.panicIndex
mov rcx, rdi
call sym.runtime.panicSliceB
mov rdx, rsi
call sym.runtime.panicSliceAcap
mov rdx, rsi
call sym.runtime.panicSliceAcap
mov rcx, rdi
call sym.runtime.panicSliceB
mov rax, rdx
mov rcx, rdi
call sym.runtime.panicSliceB
mov rcx, rdi
nop dword [rax]
call sym.runtime.panicSliceAcap
call sym.runtime.panicIndex
call sym.runtime.panicIndex
call sym.runtime.panicSliceAcap
mov rax, r10
call sym.runtime.panicSliceB
nop dword [rax]
call sym.runtime.panicSliceB
mov rax, rdi
call sym.runtime.panicIndex
call sym.runtime.panicIndex
call sym.runtime.panicIndex
mov rax, rdi
call sym.runtime.panicIndex
nop
call sym.runtime.printlock
lea rax, [0x004dad79]
mov ebx, 0x12
call sym.runtime.printstring
mov rax, qword [rsp + 0x40]
nop dword [rax + rax]
call sym.runtime.printhex
lea rax, [0x004d8431]
mov ebx, 2
call sym.runtime.printstring
mov rax, qword [rsp + 0x48]
nop dword [rax + rax]
call sym.runtime.printhex
lea rax, [0x004d8457]
mov ebx, 2
call sym.runtime.printstring
call sym.runtime.printunlock
lea rax, [0x004e0d27]
mov ebx, 0x29
call sym.runtime.throw
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
nop dword [rax]
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp sym.runtime._addrRanges_.add