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

Disassembly:
mov ecx, dword [0x65260c]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x1c]
cmp eax, dword [ecx + 8]
jbe 0x4e3a3d
sub esp, 0x9c
jmp 0x4e2d1b
mov eax, dword [esp + 0xa0]
mov byte [eax + 0xa], 1
mov eax, dword [esp + 0xa0]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
lea ebx, [eax + 0xc0]
mov dword [esp + 0x98], ebx
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 0x10], 0x10
mov dword [esp + 0x14], 4
call sym.io.ReadAtLeast
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x4e354b
mov eax, dword [esp + 0xa0]
mov ecx, dword [eax + 0xc0]
cmp ecx, 0xfd2fb528
je 0x4e2e9b
add ecx, 0xe7b2d5b0
cmp ecx, 0xf
ja 0x4e2dcb
mov ecx, dword [eax + 0x14]
mov edx, dword [eax + 0x18]
add ecx, 4
mov dword [eax + 0x14], ecx
adc edx, 0
mov dword [eax + 0x18], edx
mov dword [esp], eax
call sym.internal_zstd._Reader_.skipFrame
mov eax, dword [esp + 4]
test eax, eax
je 0x4e2d10
mov ecx, dword [esp + 8]
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa8], ecx
add esp, 0x9c
ret
lea eax, [0x5192a0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x94], eax
mov dword [eax + 4], 0x14
lea ecx, [0x535221]
mov dword [eax], ecx
lea ecx, [0x55e7b4]
cmp dword [0x5fae58], ecx
jne 0x4e2e2f
mov edx, dword [0x5fae5c]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
test al, al
je 0x4e2e2f
lea ecx, [0x55e7b4]
mov eax, dword [esp + 0x94]
jmp 0x4e2e86
lea eax, [0x51d2c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xa0]
mov edx, dword [ecx + 0x14]
mov ecx, dword [ecx + 0x18]
mov dword [eax], edx
mov dword [eax + 4], ecx
lea ecx, [0x55e7b4]
mov dword [eax + 8], ecx
mov ecx, dword [0x6526b0]
test ecx, ecx
jne 0x4e2e6f
mov ecx, dword [esp + 0x94]
jmp 0x4e2e7d
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x94]
mov dword [edi], ecx
mov dword [eax + 0xc], ecx
lea ecx, [0x55ea70]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa8], eax
add esp, 0x9c
ret
mov ecx, dword [eax + 4]
mov edx, dword [eax]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x98]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 0x10
mov dword [esp + 0x14], 1
call sym.io.ReadAtLeast
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4e2fc7
mov ecx, dword [esp + 0x20]
cmp dword [0x5fae58], eax
jne 0x4e2f24
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x48], eax
mov edx, dword [0x5fae5c]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
test al, al
je 0x4e2f1c
mov eax, dword [0x5fae60]
mov ecx, dword [0x5fae64]
jmp 0x4e2f24
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x44], eax
mov dword [esp + 0x78], ecx
cmp dword [0x5fae58], eax
jne 0x4e2f5d
mov edx, dword [0x5fae5c]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
test al, al
je 0x4e2f5d
mov ecx, dword [esp + 0x44]
mov eax, dword [esp + 0x78]
jmp 0x4e2fb2
lea eax, [0x51d2c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xa0]
mov edx, dword [ecx + 0x14]
mov ecx, dword [ecx + 0x18]
add edx, 4
mov dword [eax], edx
adc ecx, 0
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x44]
mov dword [eax + 8], ecx
mov ecx, dword [0x6526b0]
test ecx, ecx
jne 0x4e2f9e
mov ecx, dword [esp + 0x78]
jmp 0x4e2fa9
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x78]
mov dword [edi], ecx
mov dword [eax + 0xc], ecx
lea ecx, [0x55ea70]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa8], eax
add esp, 0x9c
ret
mov eax, dword [esp + 0xa0]
movzx ecx, byte [eax + 0xc0]
mov ebx, ecx
and ebx, 0x20
mov ebp, ecx
xchg ebp, eax
shr al, 6
xchg ebp, eax
mov edx, ecx
mov ecx, ebp
mov esi, 1
shl esi, cl
cmp cl, 0x20
sbb ebp, ebp
and ebp, esi
test bl, bl
cmp ebp, 1
jne 0x4e3000
test bl, bl
jne 0x4e3000
xor ebp, ebp
test dl, 8
jne 0x4e3475
mov byte [esp + 0x27], bl
mov dword [esp + 0x38], ebp
test dl, 4
xchg esi, ebx
setne bl
xchg esi, ebx
xchg esi, ebx
mov byte [eax + 9], bl
xchg esi, ebx
je 0x4e30df
mov byte [esp + 0x26], dl
lea ecx, [eax + 0x104]
nop
mov dword [eax + 0xdc], 0
mov dword [eax + 0xe0], 0
mov edx, 0x27d4eb4f
add edx, 0x85ebca87
mov dword [eax + 0xe4], edx
mov edx, 0xc2b2ae3d
adc edx, 0x9e3779b1
mov dword [eax + 0xe8], edx
mov dword [eax + 0xec], 0x27d4eb4f
mov dword [eax + 0xf0], 0xc2b2ae3d
mov dword [eax + 0xf4], 0
mov dword [eax + 0xf8], 0
xor edx, edx
sub edx, 0x85ebca87
mov dword [eax + 0xfc], edx
mov edx, 0
sbb edx, 0x9e3779b1
mov dword [eax + 0x100], edx
mov dword [esp], ecx
mov dword [esp + 4], 0x20
call sym.runtime.memclrNoHeapPointers
mov eax, dword [esp + 0xa0]
mov dword [eax + 0x124], 0
movzx edx, byte [esp + 0x26]
movzx ebx, byte [esp + 0x27]
mov ebp, dword [esp + 0x38]
and edx, 3
test dl, dl
je 0x4e30fb
lea ecx, [edx - 1]
mov esi, 1
shl esi, cl
cmp cl, 0x20
sbb edi, edi
and edi, esi
test bl, bl
jmp 0x4e3102
test bl, bl
mov edi, 0
xchg esi, ebx
sete bl
xchg esi, ebx
xchg esi, eax
movzx eax, al
xchg esi, eax
lea ecx, [esi + edi]
lea edx, [ebp + ecx]
cmp edx, 0x10
ja 0x4e3a30
mov dword [esp + 0x54], edi
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x30], esi
mov ecx, dword [eax + 4]
mov ebx, dword [eax]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x98]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], 0x10
mov dword [esp + 0x14], edx
call sym.io.ReadAtLeast
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x4e3389
movzx ebx, byte [esp + 0x27]
test bl, bl
je 0x4e3172
xor eax, eax
jmp 0x4e332b
mov ebp, dword [esp + 0xa0]
movzx esi, byte [ebp + 0xc0]
mov edi, esi
xchg esi, eax
shr al, 3
xchg esi, eax
xchg esi, eax
movzx ecx, al
xchg esi, eax
and edi, 7
mov dword [esp + 0x34], edi
movzx esi, byte [0x6524f8]
xchg esi, eax
mov byte [esp + 0x25], al
xchg esi, eax
add ecx, 0xa
mov dword [esp + 0x2c], ecx
mov ebx, 0
adc ebx, 0
mov dword [esp + 0x68], ebx
cmp ebx, 1
sbb edx, edx
xor edx, 0xffffffff
or edx, ecx
mov ecx, edx
mov ebp, 1
shl ebp, cl
lea eax, [ecx - 0x20]
mov dword [esp + 0x64], eax
mov ecx, eax
mov ebx, 1
shl ebx, cl
neg eax
mov ecx, eax
mov esi, 1
shr esi, cl
cmp edx, 0x20
sbb edx, edx
and ebp, edx
mov edx, ebp
shr ebp, 3
mov edi, dword [esp + 0x64]
cmp edi, 0x20
sbb edi, edi
and ebx, edi
cmp eax, 0x20
sbb eax, eax
and eax, esi
or eax, ebx
shl eax, 0x1d
or eax, ebp
mov ebx, dword [esp + 0x34]
mov ecx, edx
mul ebx
add eax, ecx
movzx ebx, byte [esp + 0x25]
test bl, bl
je 0x4e3326
mov ebx, dword [esp + 0x68]
test ebx, ebx
sete bl
xchg ebp, ebx
seta bl
xchg ebp, ebx
mov esi, dword [esp + 0x2c]
cmp esi, 0x1f
xchg esi, ebx
seta bl
xchg esi, ebx
and ebx, esi
or ebp, ebx
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x4e3250
cmp eax, 0x8000000
jle 0x4e3326
lea eax, [0x5192a0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x90], eax
mov dword [eax + 4], 0x14
lea ecx, [0x535249]
mov dword [eax], ecx
lea ecx, [0x55e7b4]
cmp dword [0x5fae58], ecx
jne 0x4e32b4
mov edx, dword [0x5fae5c]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
test al, al
je 0x4e32b4
lea ecx, [0x55e7b4]
mov eax, dword [esp + 0x90]
jmp 0x4e3311
lea eax, [0x51d2c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xa0]
mov edx, dword [ecx + 0x14]
mov ecx, dword [ecx + 0x18]
add edx, 5
mov dword [eax], edx
adc ecx, 0
mov dword [eax + 4], ecx
lea ecx, [0x55e7b4]
mov dword [eax + 8], ecx
mov ecx, dword [0x6526b0]
test ecx, ecx
jne 0x4e32fa
mov ecx, dword [esp + 0x90]
jmp 0x4e3308
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x90]
mov dword [edi], ecx
mov dword [eax + 0xc], ecx
lea ecx, [0x55ea70]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa8], eax
add esp, 0x9c
ret
movzx ebx, byte [esp + 0x27]
mov ebp, dword [esp + 0x54]
test ebp, ebp
je 0x4e365f
mov ecx, dword [esp + 0x6c]
cmp ecx, 0x10
ja 0x4e3a26
mov edx, dword [esp + 0x30]
cmp edx, ecx
ja 0x4e3a1f
mov dword [esp + 0x28], eax
lea esi, [edx - 0x10]
xchg esi, ebx
neg ebx
xchg esi, ebx
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, edx
mov edi, dword [esp + 0xa0]
lea esi, [edi + esi + 0xc0]
mov dword [esp + 0x58], eax
xor eax, eax
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x58]
jmp 0x4e392b
mov ecx, dword [esp + 0x20]
cmp dword [0x5fae58], eax
jne 0x4e33d2
mov dword [esp + 0x74], ecx
mov dword [esp + 0x40], eax
mov edx, dword [0x5fae5c]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
test al, al
je 0x4e33ca
mov eax, dword [0x5fae60]
mov ecx, dword [0x5fae64]
jmp 0x4e33d2
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x74]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x70], ecx
cmp dword [0x5fae58], eax
jne 0x4e340b
mov edx, dword [0x5fae5c]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
test al, al
je 0x4e340b
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x70]
jmp 0x4e3460
lea eax, [0x51d2c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xa0]
mov edx, dword [ecx + 0x14]
mov ecx, dword [ecx + 0x18]
add edx, 5
mov dword [eax], edx
adc ecx, 0
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x3c]
mov dword [eax + 8], ecx
mov ecx, dword [0x6526b0]
test ecx, ecx
jne 0x4e344c
mov ecx, dword [esp + 0x70]
jmp 0x4e3457
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x70]
mov dword [edi], ecx
mov dword [eax + 0xc], ecx
lea ecx, [0x55ea70]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa8], eax
add esp, 0x9c
ret
lea eax, [0x5192a0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x8c], eax
mov dword [eax + 4], 0x2b
lea ecx, [0x53b80f]
mov dword [eax], ecx
lea ecx, [0x55e7b4]
cmp dword [0x5fae58], ecx
jne 0x4e34d9
mov edx, dword [0x5fae5c]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
test al, al
je 0x4e34d9
lea ecx, [0x55e7b4]
mov eax, dword [esp + 0x8c]
jmp 0x4e3536
lea eax, [0x51d2c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xa0]
mov edx, dword [ecx + 0x14]
mov ecx, dword [ecx + 0x18]
add edx, 4
mov dword [eax], edx
adc ecx, 0
mov dword [eax + 4], ecx
lea ecx, [0x55e7b4]
mov dword [eax + 8], ecx
mov ecx, dword [0x6526b0]
test ecx, ecx
jne 0x4e351f
mov ecx, dword [esp + 0x8c]
jmp 0x4e352d
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x8c]
mov dword [edi], ecx
mov dword [eax + 0xc], ecx
lea ecx, [0x55ea70]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa8], eax
add esp, 0x9c
ret
mov ecx, dword [esp + 0x20]
cmp dword [0x5fae58], eax
je 0x4e355b
xor edx, edx
jmp 0x4e358e
mov dword [esp + 0x84], ecx
mov dword [esp + 0x50], eax
mov edx, dword [0x5fae5c]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0x84]
mov edx, eax
mov eax, dword [esp + 0x50]
test dl, dl
je 0x4e35af
mov edx, dword [esp + 0xa0]
movzx ebx, byte [edx + 0xa]
test bl, bl
jne 0x4e35b6
mov eax, dword [0x5fae60]
mov ecx, dword [0x5fae64]
jmp 0x4e35b6
mov edx, dword [esp + 0xa0]
mov dword [esp + 0x80], ecx
mov dword [esp + 0x4c], eax
cmp dword [0x5fae58], eax
jne 0x4e35f5
mov edx, dword [0x5fae5c]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
test al, al
je 0x4e35f5
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x80]
jmp 0x4e364a
lea eax, [0x51d2c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xa0]
mov edx, dword [ecx + 0x14]
mov ecx, dword [ecx + 0x18]
mov dword [eax], edx
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x4c]
mov dword [eax + 8], ecx
mov ecx, dword [0x6526b0]
test ecx, ecx
jne 0x4e3633
mov ecx, dword [esp + 0x80]
jmp 0x4e3641
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x80]
mov dword [edi], ecx
mov dword [eax + 0xc], ecx
lea ecx, [0x55ea70]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa8], eax
add esp, 0x9c
ret
mov edx, dword [esp + 0xa0]
mov byte [edx + 0xb], 0
mov dword [edx + 0xc], 0
mov dword [edx + 0x10], 0
mov esi, dword [esp + 0x6c]
cmp esi, 0x10
ja 0x4e390f
mov edi, dword [esp + 0x30]
lea ecx, [edi + ebp - 0x10]
neg ecx
mov ebp, ecx
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, esi
mov edi, dword [esp + 0x38]
cmp edi, 1
jg 0x4e36de
test edi, edi
jne 0x4e36b4
mov byte [edx + 0xb], 1
test bl, bl
jmp 0x4e37dc
cmp edi, 1
jne 0x4e38da
test ecx, ecx
jbe 0x4e3906
movzx ecx, byte [ebp + edx + 0xc0]
mov dword [edx + 0xc], ecx
mov dword [edx + 0x10], 0
test bl, bl
jmp 0x4e37dc
cmp edi, 2
jne 0x4e370f
cmp ecx, 1
jbe 0x4e38fc
movzx ecx, word [edx + ebp + 0xc0]
add ecx, 0x100
mov dword [edx + 0xc], ecx
mov ecx, 0
adc ecx, 0
mov dword [edx + 0x10], ecx
test bl, bl
jmp 0x4e37dc
cmp edi, 4
jne 0x4e3735
cmp ecx, 3
jbe 0x4e38f2
mov ecx, dword [edx + ebp + 0xc0]
mov dword [edx + 0xc], ecx
mov dword [edx + 0x10], 0
test bl, bl
jmp 0x4e37dc
cmp edi, 8
jne 0x4e38da
cmp ecx, 7
jbe 0x4e38d0
movzx ecx, byte [ebp + edx + 0xc0]
movzx esi, byte [edx + ebp + 0xc1]
mov dword [esp + 0x64], esi
shl esi, 8
or esi, ecx
mov ecx, dword [esp + 0x64]
shr ecx, 0x18
movzx edi, byte [edx + ebp + 0xc2]
mov dword [esp + 0x64], edi
shl edi, 0x10
or esi, edi
mov edi, dword [esp + 0x64]
shr edi, 0x10
or ecx, edi
movzx edi, byte [edx + ebp + 0xc3]
mov dword [esp + 0x64], edi
shr edi, 8
or edi, ecx
mov ecx, dword [esp + 0x64]
shl ecx, 0x18
or esi, ecx
movzx ecx, byte [edx + ebp + 0xc4]
or ecx, edi
movzx edi, byte [edx + ebp + 0xc5]
shl edi, 8
or ecx, edi
movzx edi, byte [edx + ebp + 0xc6]
shl edi, 0x10
or ecx, edi
movzx ebp, byte [edx + ebp + 0xc7]
mov dword [edx + 0xc], esi
shl ebp, 0x18
or ebp, ecx
mov dword [edx + 0x10], ebp
test bl, bl
mov esi, dword [esp + 0x6c]
mov edi, dword [esp + 0x38]
je 0x4e37e1
mov eax, dword [edx + 0xc]
cmp eax, 0x800000
jle 0x4e37ed
mov eax, 0x800000
mov byte [edx + 8], 1
mov byte [edx + 0xa], 1
lea ecx, [edi + esi + 5]
mov ebx, dword [edx + 0x14]
mov ebp, dword [edx + 0x18]
mov esi, ecx
sar ecx, 0x1f
add esi, ebx
mov dword [edx + 0x14], esi
adc ecx, ebp
mov dword [edx + 0x18], ecx
mov dword [edx + 0x2c], 1
mov dword [edx + 0x30], 4
mov dword [edx + 0x34], 8
mov dword [edx + 0x44], 0
nop
mov dword [edx + 0x50], 0
mov dword [edx + 0x58], 0
mov dword [edx + 0x48], eax
mov dword [edx + 0x78], 0
mov dword [edx + 0x7c], 0
mov eax, dword [0x6526b0]
test eax, eax
je 0x4e3870
mov eax, dword [edx + 0x74]
call sym.runtime.gcWriteBarrier3
mov dword [edi], eax
mov eax, dword [edx + 0x80]
mov dword [edi + 4], eax
mov eax, dword [edx + 0x8c]
mov dword [edi + 8], eax
mov dword [edx + 0x74], 0
mov dword [edx + 0x84], 0
mov dword [edx + 0x88], 0
mov dword [edx + 0x80], 0
mov dword [edx + 0x90], 0
mov dword [edx + 0x94], 0
mov dword [edx + 0x8c], 0
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
add esp, 0x9c
ret
mov eax, 7
call sym.runtime.panicIndex
lea eax, [0x515360]
mov dword [esp], eax
lea eax, [0x55e698]
mov dword [esp + 4], eax
call sym.runtime.gopanic
mov eax, 3
call sym.runtime.panicIndex
mov eax, 1
call sym.runtime.panicIndex
xor eax, eax
mov ecx, eax
call sym.runtime.panicIndex
mov eax, esi
mov ecx, 0x10
call sym.runtime.panicSliceB
lea eax, [ebx + 1]
movzx ebx, byte [esp + 0x27]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x28]
mov ebx, dword [esp + 0x60]
cmp ebx, ebp
jge 0x4e3a15
movzx eax, byte [esi + ebx]
test al, al
je 0x4e391b
lea eax, [0x5192a0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x88], eax
mov dword [eax + 4], 0x1e
lea ecx, [0x538ca4]
mov dword [eax], ecx
lea ecx, [0x55e7b4]
cmp dword [0x5fae58], ecx
jne 0x4e39a3
mov edx, dword [0x5fae5c]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
test al, al
je 0x4e39a3
lea ecx, [0x55e7b4]
mov eax, dword [esp + 0x88]
jmp 0x4e3a00
lea eax, [0x51d2c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xa0]
mov edx, dword [ecx + 0x14]
mov ecx, dword [ecx + 0x18]
add edx, 5
mov dword [eax], edx
adc ecx, 0
mov dword [eax + 4], ecx
lea ecx, [0x55e7b4]
mov dword [eax + 8], ecx
mov ecx, dword [0x6526b0]
test ecx, ecx
jne 0x4e39e9
mov ecx, dword [esp + 0x88]
jmp 0x4e39f7
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x88]
mov dword [edi], ecx
mov dword [eax + 0xc], ecx
lea ecx, [0x55ea70]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa8], eax
add esp, 0x9c
ret
movzx ebx, byte [esp + 0x27]
jmp 0x4e365f
mov eax, edx
call sym.runtime.panicSliceB
mov edx, 0x10
call sym.runtime.panicSliceAlen
mov ecx, edx
mov edx, 0x10
call sym.runtime.panicSliceAlen
nop
call sym.runtime.morestack_noctxt
jmp sym.internal_zstd._Reader_.readFrameHeader