Function at 0x411b10
Capabilities:
Check for software breakpoints

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x411d52
sub esp, 0x20
lea eax, [0xc93780]
mov dword [esp], eax
call dbg.runtime.lock
mov eax, dword [0xc7ec4c]
test eax, eax
je 0x411b4f
mov eax, dword [eax + 8]
cmp eax, 0xcc
jne 0x411c22
mov eax, dword [0xc7ec44]
test eax, eax
jne 0x411c04
mov dword [esp], 0x1000
mov dword [esp + 4], 0
lea eax, [0xc95a78]
mov dword [esp + 8], eax
call dbg.runtime.persistentalloc
mov eax, dword [esp + 0xc]
mov dword [0xc7ec44], eax
mov ecx, dword [0xc7ec1c]
mov dword [eax], ecx
mov eax, dword [0xc7ec44]
mov dword [0xc7ec1c], eax
movzx eax, byte [0xc93c40]
test al, al
jne 0x411c04
xor eax, eax
mov dword [esp + 0x10], eax
cmp eax, 0x80
jge 0x411c04
mov ecx, 0x66666667
imul ecx
sar edx, 1
mov ebx, dword [esp + 0x10]
mov ebp, ebx
sar ebx, 0x1f
sub edx, ebx
lea edx, [edx + edx*4]
mov ebx, ebp
sub ebp, edx
cmp ebp, 5
jae 0x411d4b
lea edx, [0xc47298]
movzx ebp, byte [edx + ebp]
cmp ebx, 0x80
jae 0x411d4b
lea esi, [0xc93c40]
xchg ebp, eax
mov byte [esi + ebx], al
xchg ebp, eax
lea eax, [ebx + 1]
mov dword [esp + 0x10], eax
cmp eax, 0x80
jl 0x411bb1
mov eax, dword [0xc7ec44]
mov ecx, dword [eax + 4]
mov dword [0xc7ec44], ecx
mov ecx, dword [0xc7ec4c]
mov dword [eax + 4], ecx
mov dword [0xc7ec4c], eax
mov eax, dword [0xc7ec4c]
mov dword [esp + 0x1c], eax
mov ecx, dword [eax + 8]
mov dword [esp + 0x18], ecx
cmp ecx, 0xcc
jae 0x411d44
lea edx, [eax + 8]
mov dword [esp], edx
mov dword [esp + 4], 1
call dbg.runtime/internal/atomic.Xadd
mov eax, dword [esp + 0x18]
lea eax, [eax + eax*4]
mov dword [esp + 0x14], eax
mov ecx, dword [0xc93940]
mov edx, dword [esp + 0x1c]
lea ebx, [edx + eax*4 + 0x10]
test ecx, ecx
jne 0x411d27
mov ecx, dword [esp + 0x28]
mov dword [edx + eax*4 + 0x10], ecx
mov ecx, dword [esp + 0x2c]
mov dword [edx + eax*4 + 0x18], ecx
lea ecx, [edx + eax*4 + 0x1c]
mov ebx, dword [0xc93940]
test ebx, ebx
jne 0x411d0a
mov ecx, dword [esp + 0x30]
mov dword [edx + eax*4 + 0x1c], ecx
mov ecx, dword [0xc93940]
lea ebx, [edx + eax*4 + 0x20]
test ecx, ecx
jne 0x411cf0
mov ecx, dword [esp + 0x34]
mov dword [edx + eax*4 + 0x20], ecx
mov ecx, dword [0xc93940]
lea ebx, [edx + eax*4 + 0x14]
test ecx, ecx
jne 0x411cde
mov ecx, dword [esp + 0x24]
mov dword [edx + eax*4 + 0x14], ecx
mov byte [0xc93696], 1
lea eax, [0xc93780]
mov dword [esp], eax
call dbg.runtime.unlock
add esp, 0x20
ret
mov dword [esp], ebx
mov eax, dword [esp + 0x24]
mov dword [esp + 4], eax
call dbg.runtime.writebarrierptr
jmp 0x411cc5
mov dword [esp], ebx
mov ecx, dword [esp + 0x34]
mov dword [esp + 4], ecx
call dbg.runtime.writebarrierptr
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
jmp 0x411caf
mov dword [esp], ecx
mov ecx, dword [esp + 0x30]
mov dword [esp + 4], ecx
call dbg.runtime.writebarrierptr
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
jmp 0x411c99
mov dword [esp], ebx
mov ecx, dword [esp + 0x28]
mov dword [esp + 4], ecx
call dbg.runtime.writebarrierptr
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
jmp 0x411c7b
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.morestack_noctxt
jmp dbg.runtime.queuefinalizer