Function at 0x428c20
Capabilities:
Run powershell expression

Disassembly:
lea r12, [rsp - 0x18]
cmp r12, qword [r14 + 0x18]
jbe 0x4291a6
push rbp
mov rbp, rsp
sub rsp, 0x90
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xa8], rbx
mov byte [rsp + 0xb0], cl
mov byte [rsp + 0xb1], dil
mov rdx, qword [r14 + 0x30]
mov rdx, qword [rdx + 0xa0]
mov qword [rsp + 0x88], rdx
test rdx, rdx
je 0x428d54
cmp rbx, 0x10
jae 0x428d4a
cmp qword [rdx + 0x50], 0
jne 0x428cda
test byte [rax], al
lea rcx, [rax + 8]
mov qword [rsp + 0x80], rcx
nop
call sym.runtime.lock2
mov rax, qword [rsp + 0x80]
call sym.runtime._pageAlloc_.allocToCache
mov rdx, qword [rsp + 0x88]
mov qword [rdx + 0x48], rax
mov qword [rdx + 0x50], rbx
mov qword [rdx + 0x58], rcx
nop
nop
mov rax, qword [rsp + 0xa0]
call sym.runtime.unlock2
mov rdx, qword [rsp + 0x88]
mov rbx, qword [rsp + 0xa8]
lea rax, [rdx + 0x48]
nop
call sym.runtime._pageCache_.alloc
test rax, rax
je 0x428d37
mov rdx, qword [r14 + 0x30]
mov rdx, qword [rdx + 0xa0]
test rdx, rdx
je 0x428d28
mov r9, qword [rdx + 0xdc8]
test r9, r9
je 0x428d28
lea r10, [r9 - 1]
cmp r10, 0x80
jae 0x429193
mov r9, qword [rdx + r9*8 + 0xdc8]
mov qword [rdx + 0xdc8], r10
jmp 0x428d2b
xor r9d, r9d
test r9, r9
je 0x428d3a
xor ecx, ecx
jmp 0x428e69
xor r9d, r9d
mov rsi, rax
mov r8, rbx
mov rax, qword [rsp + 0xa0]
jmp 0x428d5c
xor esi, esi
xor r9d, r9d
xor r8d, r8d
jmp 0x428d5c
xor esi, esi
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x78], r9
mov qword [rsp + 0x58], rsi
test byte [rax], al
nop
call sym.runtime.lock2
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x428d8e
xor ecx, ecx
mov rax, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x38]
jmp 0x428e18
mov rax, qword [rsp + 0xa0]
lea rcx, [rax + 8]
mov qword [rsp + 0x80], rcx
mov rbx, qword [rsp + 0xa8]
mov rax, rcx
call sym.runtime._pageAlloc_.alloc
test rax, rax
je 0x428dbb
xor ecx, ecx
jmp 0x428e18
mov rax, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0xa8]
call sym.runtime._mheap_.grow
test bl, bl
jne 0x428df0
nop
nop
mov rax, qword [rsp + 0xa0]
nop
call sym.runtime.unlock2
xor eax, eax
add rsp, 0x90
pop rbp
ret
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x80]
mov rbx, qword [rsp + 0xa8]
call sym.runtime._pageAlloc_.alloc
test rax, rax
je 0x429182
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x48], rcx
mov rdx, qword [rsp + 0x78]
test rdx, rdx
jne 0x428e41
mov rax, qword [rsp + 0xa0]
call sym.runtime._mheap_.allocMSpanLocked
mov rdx, rax
mov qword [rsp + 0x78], rdx
nop
nop
mov rax, qword [rsp + 0xa0]
call sym.runtime.unlock2
mov rcx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x58]
mov r9, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x38]
mov rdx, qword [0x0061ca28]
nop
mov r10b, byte [0x0061c524]
test r10b, r10b
je 0x428e84
xor r11d, r11d
xor edx, edx
jmp 0x428ea5
nop
mov r10, qword [0x0061cb58]
add r10, rbx
mov r11, r10
sub r10, rdx
cmp rdx, r11
setb dl
mov r11d, 0
cmovb r11, r10
mov r10, qword [0x0061c320]
cmp r10, 0xffffffffffffffff
je 0x428f08
test rcx, rcx
jbe 0x428efb
mov r12, qword [0x0061cb30]
mov r13, qword [0x0061cb40]
add r12, r13
add r12, rcx
cmp r10, r12
jae 0x428eee
sub r12, r10
cmp rcx, r12
cmova rcx, r12
cmp r11, rcx
cmovb r11, rcx
mov r10, qword [rsp + 0x88]
test r10, r10
jmp 0x428f13
mov r10, qword [rsp + 0x88]
test r10, r10
jmp 0x428f13
mov r10, qword [rsp + 0x88]
test r10, r10
jmp 0x428f13
mov r10, qword [rsp + 0x88]
test r10, r10
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x78], r9
je 0x429039
test r11, r11
jbe 0x429039
mov byte [rsp + 0x2f], dl
mov qword [rsp + 0x50], r11
nop
nop dword [rax + rax]
call sym.runtime.nanotime1.abi0
xorps xmm15, xmm15
mov r14, qword [0x0061c200]
mov r14, qword gs:[r14]
mov r14, qword [r14]
nop
mov rax, qword [rsp]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rcx + 0x1248]
shr rdx, 0x3d
mov qword [rsp + 0x70], rdx
test dl, dl
jne 0x428fa0
movabs rsi, 0x1fffffffffffffff
and rsi, rax
movabs r8, 0x6000000000000000
or r8, rsi
nop
nop
xchg qword [rcx + 0x1248], r8
mov rax, qword [rsp + 0xa0]
test byte [rax], al
lea rdx, [rax + 8]
mov rbx, qword [rsp + 0x50]
lea rcx, sym.runtime._mheap_.allocSpan.func1
movzx edi, byte [rsp + 0x2f]
mov rax, rdx
call sym.runtime._pageAlloc_.scavenge
nop
lea rdx, [0x005ae038]
lock xadd qword [rdx], rax
nop
call sym.runtime.nanotime1.abi0
xorps xmm15, xmm15
mov r14, qword [0x0061c200]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rcx, qword [rsp]
mov rdx, qword [rsp + 0x70]
test dl, dl
jne 0x42901b
mov qword [rsp + 0x40], rcx
mov rax, qword [rsp + 0x88]
add rax, 0x1248
mov ebx, 3
call sym.runtime._limiterEvent_.stop
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x30]
sub rcx, rdx
lea rdx, [0x0061c330]
lock xadd qword [rdx], rcx
mov rax, qword [rsp + 0x58]
mov r9, qword [rsp + 0x78]
mov rbx, r9
movzx ecx, byte [rsp + 0xb0]
movzx edi, byte [rsp + 0xb1]
mov rsi, rax
mov r8, qword [rsp + 0xa8]
mov rax, qword [rsp + 0xa0]
nop
call sym.runtime._mheap_.initSpan
mov rbx, qword [rsp + 0xa8]
shl rbx, 0xd
mov qword [rsp + 0x68], rbx
mov rdx, qword [rsp + 0x38]
nop dword [rax + rax]
test rdx, rdx
je 0x4290c2
mov rax, qword [rsp + 0x58]
mov rcx, rdx
neg rdx
mov qword [rsp + 0x60], rdx
nop
lea rsi, [0x0061cb58]
lock xadd qword [rsi], rcx
call sym.runtime.sysUsedOS
lea rax, [0x0061cb38]
mov rbx, qword [rsp + 0x60]
call sym.runtime._sysMemStat_.add
mov rdx, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x68]
sub rdx, rbx
lea rax, [0x0061cb40]
mov rbx, rdx
call sym.runtime._sysMemStat_.add
movzx ecx, byte [rsp + 0xb0]
nop dword [rax]
test cl, cl
jne 0x4290f5
lea rax, [0x0061cb30]
mov rbx, qword [rsp + 0x68]
call sym.runtime._sysMemStat_.add
lea rax, [0x0061de00]
nop dword [rax]
call sym.runtime._consistentHeapStats_.acquire
mov rcx, qword [rsp + 0x38]
mov rdx, rcx
lock xadd qword [rax], rcx
neg rdx
lock xadd qword [rax + 8], rdx
movzx ecx, byte [rsp + 0xb0]
cmp cl, 1
ja 0x429146
test cl, cl
jne 0x429139
mov rcx, qword [rsp + 0x68]
lock xadd qword [rax + 0x10], rcx
jmp 0x429168
mov rcx, qword [rsp + 0x68]
lock xadd qword [rax + 0x18], rcx
jmp 0x429168
cmp cl, 2
jne 0x429158
mov rcx, qword [rsp + 0x68]
lock xadd qword [rax + 0x28], rcx
jmp 0x429168
cmp cl, 3
jne 0x429168
mov rcx, qword [rsp + 0x68]
lock xadd qword [rax + 0x20], rcx
lea rax, [0x0061de00]
call sym.runtime._consistentHeapStats_.release
mov rax, qword [rsp + 0x78]
add rsp, 0x90
pop rbp
ret
lea rax, [0x004e116f]
mov ebx, 0x2b
call sym.runtime.throw
mov rax, r10
mov ecx, pe_nt_image_headers64
nop dword [rax + rax]
call sym.runtime.panicIndex
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov byte [rsp + 0x18], cl
mov byte [rsp + 0x19], dil
call sym.runtime.morestackc.abi0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
movzx ecx, byte [rsp + 0x18]
movzx edi, byte [rsp + 0x19]
jmp sym.runtime._mheap_.allocSpan