Function at 0x45c5f0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword [0x62d46c]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 8]
cmp eax, dword [ecx + 8]
jbe 0x45ccab
sub esp, 0x88
mov edx, dword [esp + 0x8c]
mov eax, dword [edx + 0x20]
test eax, eax
jbe 0x45cca1
shr eax, 2
test eax, eax
jl 0x45cc9c
mov ecx, 4
mov ebx, eax
mul ecx
jo 0x45cc97
mov ecx, dword [esp + 0x8c]
mov edx, dword [ecx + 0x1c]
mov ebp, edx
neg edx
cmp eax, edx
ja 0x45cc97
mov eax, dword [esp + 0x9c]
mov dword [esp], eax
mov ecx, dword [esp + 0xa0]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xa4]
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], ebx
call sym.runtime.fpunwindExpand
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0xa4]
cmp edx, ecx
jb 0x45cc92
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov ebx, dword [esp + 0x9c]
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
call sym.runtime.makeTraceFrames
mov eax, dword [esp + 0x14]
mov dword [esp + 0x38], eax
shl eax, 2
lea eax, [eax + eax*4]
shl eax, 1
add eax, 0x16
mov edx, dword [esp + 0x10]
mov dword [esp + 0x78], edx
mov ebx, dword [esp + 0x90]
mov dword [esp], ebx
mov ebx, dword [esp + 0x94]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x98]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
call sym.runtime.traceWriter.ensure
movzx eax, byte [esp + 0x1c]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x14]
test al, al
je 0x45c726
mov eax, dword [edx + 0xc]
nop
cmp eax, 0xffec
jae 0x45cc88
mov byte [edx + eax + 0x14], 2
inc dword [edx + 0xc]
mov eax, dword [edx + 0xc]
nop
cmp eax, 0xffec
jae 0x45cc7e
mov byte [edx + eax + 0x14], 3
mov ebp, dword [edx + 0xc]
lea eax, [ebp + 1]
mov dword [edx + 0xc], eax
lea esi, [ebp + 0xb]
cmp esi, 0xffec
ja 0x45cc72
cmp esi, eax
jb 0x45cc6b
mov dword [esp + 0x74], ebp
mov dword [esp + 0x70], eax
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x84], ecx
lea esi, [ebp - 0xffeb]
xchg esi, ebx
neg ebx
xchg esi, ebx
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, eax
mov edi, ebx
mov ebx, dword [esp + 0x8c]
mov ecx, dword [ebx + 0x14]
mov ebx, dword [ebx + 0x18]
lea esi, [esi + edx + 0x14]
mov dword [esp + 0x60], eax
xor eax, eax
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x60]
jmp 0x45c7cd
mov eax, ecx
or eax, 0xffffff80
mov byte [esi + ebp], al
shr ecx, 7
mov eax, ebx
shl eax, 0x19
inc ebp
or ecx, eax
shr ebx, 7
mov eax, dword [esp + 0x70]
mov edi, dword [esp + 0x6c]
mov dword [esp + 0x30], ebp
mov ebp, dword [esp + 0x74]
mov ebp, dword [esp + 0x30]
cmp ebp, 0xa
jge 0x45c7fd
test ebx, ebx
xchg edi, ebx
sete bl
xchg edi, ebx
cmp ecx, 0x80
setb al
and eax, edi
test al, al
je 0x45c7a7
mov byte [esi + ebp], cl
mov ebx, dword [esp + 0x74]
lea eax, [ebx + ebp + 2]
mov edi, dword [esp + 0x6c]
mov dword [edx + 0xc], eax
lea ecx, [eax + 0xa]
cmp ecx, 0xffec
ja 0x45cc61
cmp eax, ecx
ja 0x45cc5c
lea ecx, [eax - 0xffec]
neg ecx
neg ecx
sar ecx, 0x1f
and ecx, eax
mov ebx, dword [esp + 0x38]
mov ebp, ebx
sar ebx, 0x1f
lea ecx, [ecx + edx + 0x14]
mov dword [esp + 0x7c], ecx
mov esi, ebp
xor ebp, ebp
mov dword [esp + 0x2c], ebp
mov ebp, esi
jmp 0x45c86f
mov esi, ebp
or esi, 0xffffff80
mov edi, dword [esp + 0x7c]
xchg esi, eax
mov byte [edi + ecx], al
xchg esi, eax
shr ebp, 7
mov esi, ebx
shl esi, 0x19
inc ecx
or ebp, esi
shr ebx, 7
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x6c]
mov dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x7c]
mov ecx, dword [esp + 0x2c]
cmp ecx, 0xa
jge 0x45c8ab
test ebx, ebx
xchg edi, ebx
sete bl
xchg edi, ebx
cmp ebp, 0x80
xchg esi, ebx
setb bl
xchg esi, ebx
and esi, edi
xchg esi, eax
test al, al
xchg esi, eax
je 0x45c843
mov ebx, dword [esp + 0x7c]
xchg ebp, eax
mov byte [ebx + ecx], al
xchg ebp, eax
lea eax, [ecx + eax + 1]
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x6c]
mov dword [esp + 0x68], edx
mov dword [edx + 0xc], eax
mov ecx, dword [esp + 0x78]
jmp 0x45c8ce
mov dword [edx + 0xc], ecx
mov ebx, dword [esp + 0x80]
lea ecx, [ebx + 0x1c]
mov ebx, dword [esp + 0x74]
lea esi, [ebx - 1]
mov edi, eax
test esi, esi
jle 0x45ca3f
mov dword [esp + 0x80], ecx
mov eax, edi
lea edi, [esp + 0x3c]
mov ebx, esi
mov esi, ecx
call fcn.0046e18a
mov ecx, dword [edx + 0xc]
lea ebp, [ecx + 0xa]
cmp ebp, 0xffec
ja 0x45cc50
cmp ecx, ebp
ja 0x45cc47
lea ebp, [ecx - 0xffec]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, ecx
mov esi, dword [esp + 0x3c]
lea ebp, [ebp + edx + 0x14]
xor edi, edi
jmp 0x45cb1b
xchg esi, eax
mov byte [ebp + edi], al
xchg esi, eax
lea ecx, [edi + ecx + 1]
mov eax, dword [esp + 0x6c]
mov dword [edx + 0xc], ecx
lea ebp, [ecx + 0xa]
cmp ebp, 0xffec
ja 0x45cc3b
cmp ecx, ebp
ja 0x45cc32
mov dword [esp + 0x74], ebx
lea ebp, [ecx - 0xffec]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, ecx
mov esi, dword [esp + 0x40]
mov edi, dword [esp + 0x44]
lea ebp, [ebp + edx + 0x14]
mov dword [esp + 0x58], eax
xor eax, eax
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x58]
jmp 0x45cb62
xchg esi, eax
mov byte [ebp + ebx], al
xchg esi, eax
lea ecx, [ebx + ecx + 1]
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x68]
mov dword [edx + 0xc], ecx
lea ebx, [ecx + 0xa]
cmp ebx, 0xffec
ja 0x45cc26
cmp ecx, ebx
ja 0x45cc1d
lea ebx, [ecx - 0xffec]
neg ebx
neg ebx
sar ebx, 0x1f
and ebx, ecx
mov ebp, dword [esp + 0x48]
mov esi, dword [esp + 0x4c]
lea ebx, [ebx + edx + 0x14]
xor edi, edi
jmp 0x45cba6
xchg ebp, eax
mov byte [ebx + edi], al
xchg ebp, eax
lea ecx, [edi + ecx + 1]
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x68]
mov dword [edx + 0xc], ecx
lea ebx, [ecx + 0xa]
cmp ebx, 0xffec
ja 0x45cc11
cmp ecx, ebx
ja 0x45cc08
lea ebx, [ecx - 0xffec]
neg ebx
neg ebx
sar ebx, 0x1f
and ebx, ecx
mov ebp, dword [esp + 0x50]
mov esi, dword [esp + 0x54]
lea ebx, [ebx + edx + 0x14]
xor edi, edi
jmp 0x45cbe6
xchg ebp, eax
mov byte [ebx + edi], al
xchg ebp, eax
lea ecx, [edi + ecx + 1]
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x68]
jmp 0x45c8b8
xor eax, eax
mov ecx, dword [esp + 0x84]
jmp 0x45ca51
mov ebx, dword [esp + 0x34]
lea eax, [ebx + 1]
cmp eax, 4
jge 0x45caee
mov dword [esp + 0x34], eax
mov dword [esp + 0x84], ecx
mov dword [esp + 0x6c], edi
mov dword [esp + 0x68], edx
mov ecx, dword [esp + 0x8c]
lea edx, [ecx + eax*4]
nop
mov dword [esp], edx
call sym.internal_runtime_atomic.Loadp
mov eax, dword [esp + 4]
test eax, eax
jne 0x45ca99
mov edi, dword [esp + 0x6c]
mov ecx, dword [esp + 0x84]
mov edx, dword [esp + 0x68]
jmp 0x45ca4a
mov dword [esp], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0xa0]
mov dword [esp + 0x14], ecx
mov edx, dword [esp + 0xa4]
mov dword [esp + 0x18], edx
call sym.runtime.dumpStacksRec
mov ecx, dword [esp + 0x1c]
mov edi, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
jmp 0x45ca4a
mov dword [esp + 0xa8], ecx
mov dword [esp + 0xac], edi
mov dword [esp + 0xb0], edx
add esp, 0x88
ret
mov eax, esi
or eax, 0xffffff80
mov byte [ebp + edi], al
inc edi
shr esi, 7
mov eax, dword [esp + 0x6c]
cmp edi, 0xa
jge 0x45c93a
cmp esi, 0x80
setb al
and eax, 1
test al, al
je 0x45cb0a
jmp 0x45c92c
mov eax, esi
or eax, 0xffffff80
mov byte [ebp + ebx], al
shr esi, 7
mov eax, edi
shl eax, 0x19
lea edx, [ebx + 1]
or esi, eax
shr edi, 7
mov eax, dword [esp + 0x6c]
mov ebx, dword [esp + 0x74]
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x28]
cmp ebx, 0xa
jge 0x45c9a0
test edi, edi
sete al
cmp esi, 0x80
setb dl
and edx, eax
test dl, dl
je 0x45cb39
jmp 0x45c98e
mov eax, ebp
or eax, 0xffffff80
mov byte [ebx + edi], al
shr ebp, 7
mov eax, esi
shl eax, 0x19
inc edi
or ebp, eax
shr esi, 7
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x68]
cmp edi, 0xa
jge 0x45c9ed
test esi, esi
sete al
cmp ebp, 0x80
setb dl
and edx, eax
test dl, dl
je 0x45cb88
jmp 0x45c9dc
mov eax, ebp
or eax, 0xffffff80
mov byte [ebx + edi], al
shr ebp, 7
mov eax, esi
shl eax, 0x19
inc edi
or ebp, eax
shr esi, 7
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x68]
cmp edi, 0xa
jge 0x45c8b8
test esi, esi
sete al
cmp ebp, 0x80
setb dl
and edx, eax
test dl, dl
je 0x45cbc8
jmp 0x45ca29
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicSliceB
mov ecx, ebx
mov edx, 0xffec
call sym.runtime.panicSliceAlen
mov eax, ecx
mov ecx, ebx
call sym.runtime.panicSliceB
mov ecx, ebx
mov edx, 0xffec
call sym.runtime.panicSliceAlen
mov eax, ecx
mov ecx, ebp
call sym.runtime.panicSliceB
mov ecx, ebp
mov edx, 0xffec
call sym.runtime.panicSliceAlen
mov eax, ecx
mov ecx, ebp
call sym.runtime.panicSliceB
mov ecx, ebp
mov edx, 0xffec
call sym.runtime.panicSliceAlen
call sym.runtime.panicSliceB
mov edx, 0xffec
call sym.runtime.panicSliceAlen
mov ecx, esi
call sym.runtime.panicSliceB
mov ecx, esi
mov edx, 0xffec
call sym.runtime.panicSliceAlen
mov ecx, 0xffec
call sym.runtime.panicIndex
mov ecx, 0xffec
call sym.runtime.panicIndex
call sym.runtime.panicSliceAcap
call sym.runtime.panicunsafeslicelen
call sym.runtime.panicunsafeslicelen
xor eax, eax
mov ecx, eax
call sym.runtime.panicIndex
nop
call sym.runtime.morestack_noctxt
jmp sym.runtime.dumpStacksRec