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

Disassembly:
mov ecx, dword [0x664c04]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x150]
cmp eax, dword [ecx + 8]
jbe 0x4f9ee5
sub esp, 0x1d0
mov eax, dword [esp + 0x1d4]
mov dword [esp], eax
mov eax, dword [esp + 0x1d8]
mov dword [esp + 4], eax
call sym.runtime_pprof.newProfileBuilder
mov eax, dword [esp + 8]
mov dword [esp + 0x1b0], eax
mov dword [esp], eax
mov dword [esp + 4], 0xb
lea ecx, [0x536434]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 5
lea ecx, [0x536439]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], 5
call sym.runtime_pprof._profileBuilder_.pbValueType
mov eax, dword [esp + 0x1b0]
test byte [eax], al
mov ecx, dword [esp + 0x1e8]
test ecx, ecx
sete dl
mov ebx, dword [esp + 0x1ec]
test ebx, ebx
xchg ebp, ebx
sete bl
xchg ebp, ebx
and ebp, edx
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x4f9333
nop
nop
mov edx, 0x60
jmp 0x4f9c87
mov dword [esp], eax
mov dword [esp + 4], 1
lea ecx, [0x53804f]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 0xd
lea ecx, [0x53633f]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], 5
call sym.runtime_pprof._profileBuilder_.pbValueType
mov eax, dword [esp + 0x1b0]
mov dword [esp], eax
mov dword [esp + 4], 1
lea ecx, [0x53777c]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 0xb
lea ecx, [0x536439]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], 5
call sym.runtime_pprof._profileBuilder_.pbValueType
mov eax, dword [esp + 0x1b0]
mov dword [esp], eax
mov dword [esp + 4], 1
lea ecx, [0x53805c]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 0xd
lea ecx, [0x53633f]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], 5
call sym.runtime_pprof._profileBuilder_.pbValueType
mov eax, dword [esp + 0x1b0]
mov dword [esp], eax
mov dword [esp + 4], 1
lea ecx, [0x53779d]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 0xb
lea ecx, [0x536439]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], 5
call sym.runtime_pprof._profileBuilder_.pbValueType
mov eax, dword [esp + 0x1f4]
test eax, eax
je 0x4f959e
mov ecx, dword [esp + 0x1b0]
mov edx, dword [ecx + 0x90]
nop
lea ebx, [0x51d6a0]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov edx, dword [esp + 0x1f0]
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
call sym.runtime.mapaccess2_faststr
movzx eax, byte [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov ecx, dword [ecx]
test al, al
jne 0x4f9564
mov eax, dword [esp + 0x1b0]
mov ecx, dword [eax + 0x88]
mov dword [esp + 0x1a4], ecx
mov edx, dword [eax + 0x8c]
lea ebx, [ecx + 1]
mov ebp, dword [eax + 0x84]
cmp edx, ebx
jae 0x4f94f8
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x51bee0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1b0]
mov dword [ebx + 0x8c], eax
mov eax, dword [0x664ca8]
test eax, eax
je 0x4f94e5
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [ebx + 0x84]
mov dword [edi + 4], eax
mov dword [ebx + 0x84], ecx
mov eax, ebx
mov ebx, edx
mov ebp, ecx
mov ecx, dword [esp + 0x1a4]
mov dword [eax + 0x88], ebx
lea edx, [ebp + ebx*8 - 4]
mov esi, dword [esp + 0x1f4]
mov dword [edx], esi
mov edx, dword [0x664ca8]
lea ebx, [ebp + ebx*8 - 8]
test edx, edx
jne 0x4f9522
mov edx, dword [esp + 0x1f0]
jmp 0x4f9535
call sym.runtime.gcWriteBarrier2
mov edx, dword [esp + 0x1f0]
mov dword [edi], edx
mov ebp, dword [ebx]
mov dword [edi + 4], ebp
mov dword [ebx], edx
mov ecx, dword [eax + 0x90]
lea ebx, [0x51d6a0]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
call sym.runtime.mapassign_faststr
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x1a4]
mov dword [eax], ecx
mov edx, ecx
sar ecx, 0x1f
nop
test edx, edx
sete bl
test ecx, ecx
xchg ebp, ebx
sete bl
xchg ebp, ebx
and ebp, ebx
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x4f959e
mov dword [esp + 0x30], ecx
mov dword [esp + 0x1a4], edx
nop
nop
mov ebx, dword [esp + 0x1b0]
mov eax, 0x70
jmp 0x4f9a3c
lea edi, [esp + 0x5c]
xor eax, eax
call fcn.0046a5e8
mov ecx, dword [esp + 0x1dc]
mov eax, dword [esp + 0x1e0]
xor edx, edx
xor ebx, ebx
xor ebp, ebp
jmp 0x4f9681
mov dword [esp + 0x1b4], 0
mov dword [esp + 0x1b8], 0
mov dword [esp + 0x1bc], 0
mov dword [esp + 0x1c0], 0
lea edx, [sym.runtime_pprof.writeHeapProto.func1]
mov dword [esp + 0x1b4], edx
mov dword [esp + 0x1b8], eax
mov dword [esp + 0x1bc], ecx
mov eax, dword [esp + 0x1b0]
mov dword [esp + 0x1c0], eax
mov dword [esp], eax
lea ecx, [esp + 0x5c]
mov dword [esp + 4], ecx
mov dword [esp + 8], 4
mov dword [esp + 0xc], 4
mov ebx, dword [esp + 0x1ac]
mov dword [esp + 0x10], ebx
mov ebp, dword [esp + 0x50]
mov dword [esp + 0x14], ebp
mov esi, dword [esp + 0x54]
mov dword [esp + 0x18], esi
lea edi, [esp + 0x1b4]
mov dword [esp + 0x1c], edi
call sym.runtime_pprof._profileBuilder_.pbSample
mov eax, dword [esp + 0x1cc]
lea ecx, [eax + 0xa0]
mov eax, dword [esp + 0x1a4]
dec eax
mov edx, dword [esp + 0x54]
mov ebx, dword [esp + 0x50]
mov ebp, dword [esp + 0x1ac]
test eax, eax
jle 0x4f9838
mov dword [esp + 0x54], edx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x1ac], ebp
mov dword [esp + 0x1cc], ecx
lea edi, [esp + 0xfc]
mov esi, ecx
call fcn.0046a970
lea eax, [0x529140]
mov dword [esp], eax
call sym.runtime.newobject
mov edi, dword [esp + 4]
mov dword [esp + 0x1a8], edi
lea esi, [esp + 0xfc]
call fcn.0046a970
mov eax, dword [esp + 0x1a8]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x1ac]
mov ebx, dword [esp + 0x54]
xor ebp, ebp
mov esi, 1
jmp 0x4f9881
mov dword [esp + 0x54], ebx
mov dword [esp + 0x50], ecx
mov dword [esp + 0x1ac], edx
mov ebp, dword [eax + 0x10]
mov esi, dword [eax + 0x14]
mov edi, dword [eax + 4]
mov ebx, dword [eax]
mov dword [esp], ebp
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edi
mov ebx, dword [esp + 0x1e8]
mov dword [esp + 0x10], ebx
mov ebp, dword [esp + 0x1ec]
mov dword [esp + 0x14], ebp
call sym.runtime_pprof.scaleHeapSample
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], edx
mov dword [esp + 0x64], ecx
mov dword [esp + 0x68], ebx
mov eax, dword [esp + 0x1a8]
mov ecx, dword [eax + 0x10]
mov edx, dword [eax + 0x14]
mov ebx, dword [eax + 0x18]
mov ebp, dword [eax + 0x1c]
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov dword [esp + 0x1a0], edi
mov edi, dword [eax + 8]
mov eax, dword [eax + 0xc]
sub ecx, ebx
mov dword [esp], ecx
sbb edx, ebp
mov dword [esp + 4], edx
sub esi, edi
mov dword [esp + 8], esi
mov ecx, dword [esp + 0x1a0]
sbb ecx, eax
mov dword [esp + 0xc], ecx
mov eax, dword [esp + 0x1e8]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x1ec]
mov dword [esp + 0x14], ecx
call sym.runtime_pprof.scaleHeapSample
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], edx
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], ebx
mov eax, dword [esp + 0x1a8]
mov ecx, dword [eax + 0x10]
mov edx, dword [eax + 0x14]
test edx, edx
sete bl
xchg ebp, ebx
setg bl
xchg ebp, ebx
test ecx, ecx
xchg esi, ebx
seta bl
xchg esi, ebx
and ebx, esi
or ebp, ebx
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x4f9812
xor ecx, ecx
xor eax, eax
jmp 0x4f95c2
mov ebx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
call sym.runtime.int64div
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
jmp 0x4f95c2
mov eax, dword [esp + 0x1b0]
mov dword [esp], eax
call sym.runtime_pprof._profileBuilder_.build
mov dword [esp + 0x1f8], 0
mov dword [esp + 0x1fc], 0
add esp, 0x1d0
ret
mov ebx, dword [esp + 0x4c]
lea ebp, [ebx + 1]
mov ebx, dword [esp + 0x1a8]
xor esi, esi
mov ebx, edx
mov edx, ecx
mov ecx, eax
mov eax, dword [esp + 0x1a8]
cmp ebp, 2
jge 0x4f96fb
xchg esi, eax
mov byte [esp + 0x2b], al
xchg esi, eax
lea ecx, [eax + 0x20]
mov dword [esp + 0x1c8], ecx
lea edi, [esp + 0x7c]
mov esi, ecx
call fcn.0046a9c0
xor ecx, ecx
jmp 0x4f9924
mov ecx, 0x20
mov dword [esp + 0x4c], ebp
movzx esi, byte [esp + 0x2b]
xchg esi, eax
test al, al
xchg esi, eax
je 0x4f98d6
mov dword [esp + 0x19c], ebx
mov dword [esp + 0x1c4], edx
mov dword [esp + 0x2c], ecx
xor esi, esi
jmp 0x4f996c
mov esi, 0x20
mov edi, dword [esp + 0x1c8]
mov eax, dword [esp + 0x1b0]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], 0
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], esi
call sym.runtime_pprof._profileBuilder_.appendLocsForStack
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x24]
test eax, eax
je 0x4f9864
jmp 0x4f9936
inc ecx
cmp ecx, 0x20
jge 0x4f98a9
mov esi, dword [esp + ecx*4 + 0x7c]
test esi, esi
jne 0x4f9923
jmp 0x4f98ae
mov ebx, edx
mov edx, ecx
mov ecx, eax
mov eax, dword [esp + 0x1a8]
jmp 0x4f96fb
mov edi, dword [esp + 0x58]
lea esi, [edi + 1]
mov eax, dword [esp + 0x1a8]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x1c4]
mov ebx, dword [esp + 0x19c]
mov ebp, dword [esp + 0x4c]
cmp esi, ecx
jge 0x4f9a1a
mov dword [esp + 0x58], esi
mov ecx, dword [eax + esi*4 + 0x20]
mov dword [esp], ecx
call sym.runtime.FuncForPC
mov eax, dword [esp + 4]
test eax, eax
jne 0x4f9990
xor eax, eax
jmp 0x4f99c6
mov dword [esp], eax
call sym.runtime._Func_.Name
cmp dword [esp + 8], 8
jge 0x4f99a3
xor eax, eax
jmp 0x4f99c6
mov eax, dword [esp + 4]
mov dword [esp], eax
lea eax, [0x536b6b]
mov dword [esp + 4], eax
mov dword [esp + 8], 8
call sym.runtime.memequal
movzx eax, byte [esp + 0xc]
test al, al
jne 0x4f9948
mov eax, dword [esp + 0x58]
mov edx, eax
shl eax, 2
lea ebx, [edx - 0x20]
neg ebx
mov ebp, ebx
neg ebx
sar ebx, 0x1f
and eax, ebx
mov ebx, dword [esp + 0x1a8]
lea ecx, [ebx + eax + 0x20]
mov eax, dword [esp + 0x2c]
sub eax, edx
mov edx, dword [esp + 0x1c4]
mov ebx, dword [esp + 0x19c]
mov esi, ebp
mov edi, ecx
mov ebp, dword [esp + 0x4c]
mov ecx, eax
mov eax, dword [esp + 0x1a8]
jmp 0x4f98e2
mov esi, 0x20
mov edi, dword [esp + 0x1c8]
jmp 0x4f98e2
mov dword [ebx + 0x68], esi
mov ebp, eax
or ebp, 0xffffff80
xchg ebp, eax
mov byte [esi + edi - 1], al
xchg ebp, eax
shr eax, 7
mov dword [esp + 0x38], eax
cmp eax, 0x80
xchg ebp, ebx
setae bl
xchg ebp, ebx
and ebp, 1
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x4f9acd
mov ebp, dword [ebx + 0x6c]
mov esi, dword [ebx + 0x68]
inc esi
mov edi, dword [ebx + 0x64]
cmp ebp, esi
jae 0x4f9a2b
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x51bf60]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1b0]
mov dword [ebx + 0x6c], eax
mov eax, dword [0x664ca8]
test eax, eax
je 0x4f9ab2
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov ebp, dword [ebx + 0x64]
mov dword [edi + 4], ebp
mov dword [ebx + 0x64], ecx
mov eax, dword [esp + 0x38]
mov esi, edx
mov edi, ecx
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x1a4]
jmp 0x4f9a2b
mov ebp, dword [ebx + 0x6c]
mov esi, dword [ebx + 0x68]
inc esi
mov edi, dword [ebx + 0x64]
cmp ebp, esi
jae 0x4f9b40
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x51bf60]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1b0]
mov dword [ebx + 0x6c], eax
mov eax, dword [0x664ca8]
test eax, eax
je 0x4f9b2a
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov ebp, dword [ebx + 0x64]
mov dword [edi + 4], ebp
mov dword [ebx + 0x64], ecx
mov eax, dword [esp + 0x38]
mov esi, edx
mov edi, ecx
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x1a4]
mov dword [ebx + 0x68], esi
mov byte [esi + edi - 1], al
jmp 0x4f9b66
mov dword [ebx + 0x68], eax
mov ebp, edx
or ebp, 0xffffff80
xchg ebp, ebx
mov byte [eax + esi - 1], bl
xchg ebp, ebx
shr edx, 7
mov ebp, ecx
shl ebp, 0x19
or edx, ebp
shr ecx, 7
mov dword [esp + 0x34], edx
test ecx, ecx
xchg ebp, ebx
seta bl
xchg ebp, ebx
sete al
cmp edx, 0x80
xchg esi, ebx
setae bl
xchg esi, ebx
and esi, eax
or esi, ebp
xchg esi, eax
test al, al
xchg esi, eax
je 0x4f9c02
mov ebp, dword [ebx + 0x6c]
mov eax, dword [ebx + 0x68]
inc eax
mov esi, dword [ebx + 0x64]
cmp ebp, eax
jae 0x4f9b49
mov dword [esp + 0x44], ecx
mov dword [esp], esi
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x51bf60]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1b0]
mov dword [ebx + 0x6c], eax
mov eax, dword [0x664ca8]
test eax, eax
je 0x4f9bee
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov ebp, dword [ebx + 0x64]
mov dword [edi + 4], ebp
mov dword [ebx + 0x64], ecx
mov eax, edx
mov esi, ecx
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x34]
jmp 0x4f9b49
mov ecx, dword [ebx + 0x6c]
mov ebp, dword [ebx + 0x68]
inc ebp
mov eax, dword [ebx + 0x64]
cmp ecx, ebp
jae 0x4f9c6a
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x51bf60]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1b0]
mov dword [ebx + 0x6c], eax
mov eax, dword [0x664ca8]
test eax, eax
je 0x4f9c5f
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov ebp, dword [ebx + 0x64]
mov dword [edi + 4], ebp
mov dword [ebx + 0x64], ecx
mov ebp, edx
mov eax, ecx
mov edx, dword [esp + 0x34]
mov dword [ebx + 0x68], ebp
mov byte [ebp + eax - 1], dl
jmp 0x4f959e
mov dword [eax + 0x68], esi
mov ebp, edx
or ebp, 0xffffff80
xchg ebp, eax
mov byte [esi + edi - 1], al
xchg ebp, eax
shr edx, 7
mov dword [esp + 0x40], edx
cmp edx, 0x80
xchg ebp, ebx
setae bl
xchg ebp, ebx
and ebp, 1
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x4f9d1e
mov ebp, dword [eax + 0x6c]
mov esi, dword [eax + 0x68]
inc esi
mov edi, dword [eax + 0x64]
cmp ebp, esi
jae 0x4f9c76
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x51bf60]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1b0]
mov dword [ebx + 0x6c], eax
mov eax, dword [0x664ca8]
test eax, eax
je 0x4f9cfe
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [ebx + 0x64]
mov dword [edi + 4], eax
mov dword [ebx + 0x64], ecx
mov eax, ebx
mov ebx, dword [esp + 0x1ec]
mov esi, edx
mov edi, ecx
mov ecx, dword [esp + 0x1e8]
mov edx, dword [esp + 0x40]
jmp 0x4f9c76
mov ebp, dword [eax + 0x6c]
mov esi, dword [eax + 0x68]
inc esi
mov edi, dword [eax + 0x64]
cmp ebp, esi
jae 0x4f9d96
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x51bf60]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1b0]
mov dword [ebx + 0x6c], eax
mov eax, dword [0x664ca8]
test eax, eax
je 0x4f9d7b
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [ebx + 0x64]
mov dword [edi + 4], eax
mov dword [ebx + 0x64], ecx
mov eax, ebx
mov ebx, dword [esp + 0x1ec]
mov esi, edx
mov edi, ecx
mov ecx, dword [esp + 0x1e8]
mov edx, dword [esp + 0x40]
mov dword [eax + 0x68], esi
mov byte [esi + edi - 1], dl
mov edx, ebx
mov ebp, ecx
jmp 0x4f9dc3
mov dword [eax + 0x68], esi
mov edx, ecx
or edx, 0xffffff80
mov byte [esi + edi - 1], dl
shr ecx, 7
mov esi, ebx
shl esi, 0x19
or ecx, esi
shr ebx, 7
mov edx, dword [esp + 0x1ec]
mov dword [esp + 0x3c], ecx
test ebx, ebx
xchg esi, ebx
seta bl
xchg esi, ebx
xchg edi, ebx
sete bl
xchg edi, ebx
cmp ecx, 0x80
setae dl
and edi, edx
or edi, esi
xchg edi, eax
test al, al
xchg edi, eax
je 0x4f9e68
mov edx, dword [eax + 0x6c]
mov esi, dword [eax + 0x68]
inc esi
mov edi, dword [eax + 0x64]
cmp edx, esi
jae 0x4f9da3
mov dword [esp + 0x48], ebx
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x51bf60]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1b0]
mov dword [ebx + 0x6c], eax
mov eax, dword [0x664ca8]
test eax, eax
je 0x4f9e4b
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [ebx + 0x64]
mov dword [edi + 4], eax
mov dword [ebx + 0x64], ecx
mov eax, ebx
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 0x1e8]
mov esi, edx
mov edi, ecx
mov ecx, dword [esp + 0x3c]
jmp 0x4f9da3
mov edx, dword [eax + 0x6c]
mov ebx, dword [eax + 0x68]
inc ebx
mov esi, dword [eax + 0x64]
cmp edx, ebx
jae 0x4f9ed9
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
lea eax, [0x51bf60]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1b0]
mov dword [ebx + 0x6c], eax
mov eax, dword [0x664ca8]
test eax, eax
je 0x4f9ec5
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [ebx + 0x64]
mov dword [edi + 4], eax
mov dword [ebx + 0x64], ecx
mov eax, ebx
mov ebp, dword [esp + 0x1e8]
mov ebx, edx
mov esi, ecx
mov ecx, dword [esp + 0x3c]
mov dword [eax + 0x68], ebx
mov byte [ebx + esi - 1], cl
jmp 0x4f9333
call sym.runtime.morestack_noctxt
jmp sym.runtime_pprof.writeHeapProto