Function at 0x43c540
Capabilities:
Run powershell expression

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x38
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x50], ebx
mov dword [rsp + 0x54], ecx
bt ebx, 0xc
jb 0x43c566
bt ecx, 0xc
nop
jb 0x43c566
cmp ecx, ebx
jne 0x43c5ad
movups xmmword [rsp + 0x28], xmm15
lea rax, [sym.runtime.casgstatus.func1]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x30], ebx
mov dword [rsp + 0x34], ecx
lea rax, [rsp + 0x28]
mov qword [rsp], rax
call sym.runtime.systemstack.abi0
xorps xmm15, xmm15
mov r14, qword [0x0061c200]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x48]
mov ecx, dword [rsp + 0x54]
mov ebx, dword [rsp + 0x50]
xor edx, edx
xor esi, esi
jmp 0x43c5c8
mov rdx, qword [rsp + 0x20]
inc rdx
mov rax, qword [rsp + 0x48]
mov ecx, dword [rsp + 0x54]
mov ebx, dword [rsp + 0x50]
mov rdi, rax
mov eax, ebx
lock cmpxchg dword [rdi + 0x90], ecx
sete r8b
nop dword [rax]
test r8b, r8b
jne 0x43c6af
cmp ebx, 4
jne 0x43c5ff
mov r8d, dword [rdi + 0x90]
cmp r8d, 1
je 0x43c8bb
mov qword [rsp + 0x20], rdx
test rdx, rdx
jne 0x43c62b
call sym.runtime.nanotime1.abi0
xorps xmm15, xmm15
mov r14, qword [0x0061c200]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rsi, qword [rsp]
add rsi, 0x1388
mov qword [rsp + 0x18], rsi
call sym.runtime.nanotime1.abi0
xorps xmm15, xmm15
mov r14, qword [0x0061c200]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x18]
cmp qword [rsp], rax
jge 0x43c665
mov rcx, qword [rsp + 0x48]
mov edx, dword [rsp + 0x50]
xor ebx, ebx
nop dword [rax]
jmp 0x43c898
nop
lea rax, sym.runtime.casgstatus.osyield.func2
mov qword [rsp], rax
call sym.runtime.systemstack.abi0
xorps xmm15, xmm15
mov r14, qword [0x0061c200]
mov r14, qword gs:[r14]
mov r14, qword [r14]
call sym.runtime.nanotime1.abi0
xorps xmm15, xmm15
mov r14, qword [0x0061c200]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rsi, qword [rsp]
add rsi, 0x9c4
jmp 0x43c5b3
cmp ebx, 2
jne 0x43c6df
cmp byte [0x0061bff8], 0
jne 0x43c6c9
movzx edx, byte [rdi + 0xbf]
test dl, 7
jne 0x43c6d0
mov byte [rdi + 0xbe], 1
movzx edx, byte [rdi + 0xbf]
inc edx
mov byte [rdi + 0xbf], dl
cmp byte [rdi + 0xbe], 0
je 0x43c850
cmp ebx, 1
je 0x43c762
cmp ebx, 4
jne 0x43c7a5
movzx edx, byte [rdi + 0xb0]
cmp dl, 0x15
je 0x43c714
cmp dl, 0x16
je 0x43c714
cmp dl, 0x17
jne 0x43c7a5
nop
call sym.runtime.nanotime1.abi0
xorps xmm15, xmm15
mov r14, qword [0x0061c200]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp]
mov rcx, qword [rsp + 0x48]
sub rax, qword [rcx + 0xc0]
shl rax, 3
lea rdx, [0x00598bf8]
lock xadd qword [rdx], rax
mov qword [rcx + 0xc0], 0
mov ecx, dword [rsp + 0x54]
mov rdi, qword [rsp + 0x48]
jmp 0x43c7a5
nop
call sym.runtime.nanotime1.abi0
xorps xmm15, xmm15
mov r14, qword [0x0061c200]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp]
mov rcx, qword [rsp + 0x48]
sub rax, qword [rcx + 0xc0]
add qword [rcx + 0xc8], rax
mov qword [rcx + 0xc0], 0
mov ecx, dword [rsp + 0x54]
mov rdi, qword [rsp + 0x48]
cmp ecx, 1
je 0x43c822
cmp ecx, 2
je 0x43c7f6
cmp ecx, 4
jne 0x43c84a
movzx eax, byte [rdi + 0xb0]
nop
cmp al, 0x15
je 0x43c7cc
cmp al, 0x16
je 0x43c7cc
cmp al, 0x17
jne 0x43c84a
nop
call sym.runtime.nanotime1.abi0
xorps xmm15, xmm15
mov r14, qword [0x0061c200]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp]
mov rcx, qword [rsp + 0x48]
mov qword [rcx + 0xc0], rax
jmp 0x43c84a
mov byte [rdi + 0xbe], 0
mov rbx, qword [rdi + 0xc8]
lea rax, [0x005986e0]
call sym.runtime._timeHistogram_.record
mov rcx, qword [rsp + 0x48]
mov qword [rcx + 0xc8], 0
jmp 0x43c84a
nop
call sym.runtime.nanotime1.abi0
xorps xmm15, xmm15
mov r14, qword [0x0061c200]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp]
mov rcx, qword [rsp + 0x48]
mov qword [rcx + 0xc0], rax
add rsp, 0x38
pop rbp
ret
add rsp, 0x38
pop rbp
ret
mov qword [rsp + 0x10], rbx
mov dword [rsp], 1
call sym.runtime.procyield.abi0
xorps xmm15, xmm15
mov r14, qword [0x0061c200]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rbx, qword [rsp + 0x10]
inc rbx
mov rax, qword [rsp + 0x48]
mov ecx, dword [rsp + 0x50]
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x48]
mov edx, dword [rsp + 0x50]
cmp rbx, 0xa
jge 0x43c8ac
mov esi, dword [rcx + 0x90]
cmp esi, edx
setne sil
jmp 0x43c8ae
xor esi, esi
test sil, sil
jne 0x43c856
mov rsi, rax
jmp 0x43c5b3
lea rax, [0x004e1ee2]
mov ebx, 0x31
call sym.runtime.throw
nop
int3