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

Disassembly:
mov ecx, dword [0x62bbe4]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0xc]
cmp eax, dword [ecx + 8]
jbe 0x45a36c
sub esp, 0x8c
mov ecx, dword [esp + 0x90]
mov eax, dword [ecx + 0x20]
shr eax, 2
test eax, eax
jl 0x45a366
mov edx, 4
mov ebx, eax
mul edx
jo 0x45a361
mov edx, dword [ecx + 0x1c]
mov ebp, edx
neg edx
cmp eax, edx
ja 0x45a361
mov eax, dword [esp + 0xa0]
mov dword [esp], eax
mov ecx, dword [esp + 0xa4]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xa8]
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 eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x98]
mov dword [esp], ecx
mov edx, dword [esp + 0xa0]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov eax, dword [esp + 0xa8]
mov dword [esp + 0xc], eax
call sym.runtime.makeTraceFrames
mov eax, dword [esp + 0x14]
mov dword [esp + 0x3c], eax
shl eax, 2
lea eax, [eax + eax*4]
shl eax, 1
add eax, 0x16
mov edx, dword [esp + 0x10]
mov dword [esp + 0x80], edx
mov ebx, dword [esp + 0x94]
mov dword [esp], ebx
mov ebx, dword [esp + 0x98]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x9c]
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 0x459ef7
mov eax, dword [edx + 0xc]
nop
mov byte [edx + eax + 0x14], 2
inc dword [edx + 0xc]
mov dword [esp + 0x88], ecx
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x78], edx
mov eax, dword [edx + 0xc]
nop
mov byte [edx + eax + 0x14], 3
mov eax, dword [edx + 0xc]
lea ebp, [eax + 1]
mov dword [esp + 0x74], ebp
mov dword [edx + 0xc], ebp
lea esi, [eax - 0xffeb]
xchg esi, ebx
neg ebx
xchg esi, ebx
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, ebp
mov edi, ecx
mov ecx, dword [esp + 0x90]
mov ebx, dword [ecx + 0x14]
mov ecx, dword [ecx + 0x18]
lea esi, [esi + edx + 0x14]
mov dword [esp + 0x6c], eax
xor eax, eax
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x6c]
jmp 0x459f81
mov ebp, ebx
or ebp, 0xffffff80
xchg ebp, eax
mov byte [esi + edx], al
xchg ebp, eax
shr ebx, 7
mov ebp, ecx
shl ebp, 0x19
inc edx
or ebx, ebp
shr ecx, 7
mov ebp, dword [esp + 0x74]
mov edi, dword [esp + 0x88]
mov dword [esp + 0x34], edx
mov edx, dword [esp + 0x78]
mov edx, dword [esp + 0x34]
cmp edx, 0xa
jge 0x459fb6
test ecx, ecx
xchg edi, ebx
sete bl
xchg edi, ebx
cmp ebx, 0x80
xchg ebp, ebx
setb bl
xchg ebp, ebx
and ebp, edi
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x459f56
mov byte [esi + edx], bl
lea ebp, [eax + edx + 2]
mov edi, dword [esp + 0x88]
mov ecx, dword [esp + 0x78]
mov dword [ecx + 0xc], ebp
lea edx, [ebp - 0xffec]
neg edx
neg edx
sar edx, 0x1f
and edx, ebp
mov eax, dword [esp + 0x3c]
mov ebx, eax
sar ebx, 0x1f
lea edx, [edx + ecx + 0x14]
mov esi, eax
xor eax, eax
mov dword [esp + 0x30], eax
mov eax, esi
jmp 0x45a010
mov esi, eax
or esi, 0xffffff80
xchg esi, eax
mov byte [edx + ecx], al
xchg esi, eax
shr eax, 7
mov esi, ebx
shl esi, 0x19
inc ecx
or eax, esi
shr ebx, 7
mov esi, dword [esp + 0x3c]
mov edi, dword [esp + 0x88]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x78]
mov ecx, dword [esp + 0x30]
cmp ecx, 0xa
jge 0x45a048
test ebx, ebx
xchg edi, ebx
sete bl
xchg edi, ebx
cmp eax, 0x80
xchg esi, ebx
setb bl
xchg esi, ebx
and esi, edi
xchg esi, eax
test al, al
xchg esi, eax
je 0x459fe5
mov byte [edx + ecx], al
lea ebp, [ecx + ebp + 1]
mov esi, dword [esp + 0x3c]
mov edi, dword [esp + 0x88]
mov ecx, dword [esp + 0x78]
mov dword [ecx + 0xc], ebp
mov edx, dword [esp + 0x80]
jmp 0x45a06c
mov dword [ecx + 0xc], ebp
add edx, 0x1c
mov eax, dword [esp + 0x74]
lea esi, [eax - 1]
mov edi, dword [esp + 0x88]
test esi, esi
jle 0x45a18c
mov dword [esp + 0x74], esi
mov eax, edi
lea edi, [esp + 0x40]
mov ebx, esi
mov esi, edx
call fcn.0046bb1a
mov ecx, dword [esp + 0x78]
mov ebp, dword [ecx + 0xc]
lea esi, [ebp - 0xffec]
xchg esi, ebx
neg ebx
xchg esi, ebx
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, ebp
mov edi, dword [esp + 0x40]
lea esi, [esi + ecx + 0x14]
mov dword [esp + 0x64], eax
xor eax, eax
mov dword [esp + 0x2c], eax
jmp 0x45a268
xchg edi, ebx
mov byte [esi + eax], bl
xchg edi, ebx
lea ebp, [eax + ebp + 1]
mov ebx, dword [esp + 0x74]
mov dword [esp + 0x84], edx
mov dword [ecx + 0xc], ebp
lea eax, [ebp - 0xffec]
neg eax
neg eax
sar eax, 0x1f
and eax, ebp
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x48]
lea eax, [eax + ecx + 0x14]
mov dword [esp + 0x5c], eax
xor eax, eax
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x5c]
jmp 0x45a2b5
xchg esi, ecx
mov byte [eax + ebx], cl
xchg esi, ecx
lea ebp, [ebx + ebp + 1]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x84]
mov dword [ecx + 0xc], ebp
lea eax, [ebp - 0xffec]
neg eax
neg eax
sar eax, 0x1f
and eax, ebp
mov ebx, dword [esp + 0x4c]
mov esi, dword [esp + 0x50]
lea eax, [eax + ecx + 0x14]
xor edi, edi
jmp 0x45a2fc
mov byte [eax + edi], bl
lea ebp, [edi + ebp + 1]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x84]
mov dword [ecx + 0xc], ebp
lea eax, [ebp - 0xffec]
neg eax
neg eax
sar eax, 0x1f
and eax, ebp
mov ebx, dword [esp + 0x54]
mov esi, dword [esp + 0x58]
lea eax, [eax + ecx + 0x14]
xor edi, edi
jmp 0x45a33f
mov byte [eax + edi], bl
lea ebp, [edi + ebp + 1]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x84]
jmp 0x45a058
xor eax, eax
mov edx, dword [esp + 0x7c]
jmp 0x45a19b
mov ebx, dword [esp + 0x38]
lea eax, [ebx + 1]
cmp eax, 4
jge 0x45a238
mov dword [esp + 0x38], eax
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], edx
mov dword [esp + 0x88], edi
mov ecx, dword [esp + 0x90]
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 0x45a1e3
mov edx, dword [esp + 0x7c]
mov edi, dword [esp + 0x88]
mov ecx, dword [esp + 0x78]
jmp 0x45a194
mov dword [esp], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0xa4]
mov dword [esp + 0x14], ecx
mov edx, dword [esp + 0xa8]
mov dword [esp + 0x18], edx
call sym.runtime.dumpStacksRec
mov edi, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
jmp 0x45a194
mov dword [esp + 0xac], edi
mov dword [esp + 0xb0], edx
mov dword [esp + 0xb4], ecx
add esp, 0x8c
ret
mov ebx, edi
or ebx, 0xffffff80
mov byte [esi + eax], bl
inc eax
shr edi, 7
mov ebx, dword [esp + 0x74]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x2c]
cmp eax, 0xa
jge 0x45a0cb
cmp edi, 0x80
setb bl
and ebx, 1
test bl, bl
je 0x45a254
jmp 0x45a0bc
mov ecx, esi
or ecx, 0xffffff80
mov byte [eax + ebx], cl
shr esi, 7
mov ecx, edi
shl ecx, 0x19
lea edx, [ebx + 1]
or esi, ecx
shr edi, 7
mov ecx, dword [esp + 0x78]
mov ebx, dword [esp + 0x74]
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0x84]
mov ebx, dword [esp + 0x28]
cmp ebx, 0xa
jge 0x45a119
test edi, edi
sete dl
cmp esi, 0x80
setb cl
and ecx, edx
test cl, cl
je 0x45a28a
jmp 0x45a103
mov ecx, ebx
or ecx, 0xffffff80
mov byte [eax + edi], cl
shr ebx, 7
mov ecx, esi
shl ecx, 0x19
inc edi
or ebx, ecx
shr esi, 7
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x84]
cmp edi, 0xa
jge 0x45a150
test esi, esi
sete dl
cmp ebx, 0x80
setb cl
and ecx, edx
test cl, cl
je 0x45a2db
jmp 0x45a13e
mov ecx, ebx
or ecx, 0xffffff80
mov byte [eax + edi], cl
shr ebx, 7
mov ecx, esi
shl ecx, 0x19
inc edi
or ebx, ecx
shr esi, 7
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x84]
cmp edi, 0xa
jge 0x45a058
test esi, esi
sete dl
cmp ebx, 0x80
setb cl
and ecx, edx
test cl, cl
je 0x45a31e
jmp 0x45a175
call sym.runtime.panicunsafeslicelen
call sym.runtime.panicunsafeslicelen
nop
call sym.runtime.morestack_noctxt
jmp sym.runtime.dumpStacksRec