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

Disassembly:
mov ecx, dword [0x6535cc]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x34]
cmp eax, dword [ecx + 8]
jbe 0x4e508f
sub esp, 0xb4
mov eax, dword [esp + 0xb8]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
lea ebx, [eax + 0xc0]
mov dword [esp + 0xa0], ebx
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 3
mov dword [esp + 0x10], 0x10
mov dword [esp + 0x14], 3
call sym.io.ReadAtLeast
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4e4433
mov ecx, dword [esp + 0x20]
cmp dword [0x5fbe58], eax
jne 0x4e438a
mov dword [esp + 0x88], ecx
mov dword [esp + 0x54], eax
mov edx, dword [0x5fbe5c]
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 0x4e437f
mov eax, dword [0x5fbe60]
mov ecx, dword [0x5fbe64]
jmp 0x4e438a
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x50], eax
mov dword [esp + 0x84], ecx
cmp dword [0x5fbe58], eax
jne 0x4e43c9
mov edx, dword [0x5fbe5c]
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 0x4e43c9
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x84]
jmp 0x4e441e
lea eax, [0x51d2c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xb8]
mov edx, dword [ecx + 0x14]
mov ecx, dword [ecx + 0x18]
mov dword [eax], edx
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x50]
mov dword [eax + 8], ecx
mov ecx, dword [0x653670]
test ecx, ecx
jne 0x4e4407
mov ecx, dword [esp + 0x84]
jmp 0x4e4415
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x84]
mov dword [edi], ecx
mov dword [eax + 0xc], ecx
lea ecx, [0x55ea00]
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xc0], eax
add esp, 0xb4
ret
mov eax, dword [esp + 0xb8]
movzx ecx, word [eax + 0xc0]
movzx ebx, byte [eax + 0xc2]
shl ebx, 0x10
or ecx, ebx
mov ebx, ecx
shr ebx, 3
cmp ebx, 0x20000
jg 0x4e446d
mov ebp, dword [eax + 0x48]
test ebp, ebp
jle 0x4e4543
cmp ebp, ebx
jge 0x4e4543
lea eax, [0x5192a0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x9c], eax
mov dword [eax + 4], 0x14
lea ecx, [0x535234]
mov dword [eax], ecx
lea ecx, [0x55e744]
cmp dword [0x5fbe58], ecx
jne 0x4e44d1
mov edx, dword [0x5fbe5c]
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 0x4e44d1
lea ecx, [0x55e744]
mov eax, dword [esp + 0x9c]
jmp 0x4e452e
lea eax, [0x51d2c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xb8]
mov edx, dword [ecx + 0x14]
mov ecx, dword [ecx + 0x18]
add edx, 3
mov dword [eax], edx
adc ecx, 0
mov dword [eax + 4], ecx
lea ecx, [0x55e744]
mov dword [eax + 8], ecx
mov ecx, dword [0x653670]
test ecx, ecx
jne 0x4e4517
mov ecx, dword [esp + 0x9c]
jmp 0x4e4525
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x9c]
mov dword [edi], ecx
mov dword [eax + 0xc], ecx
lea ecx, [0x55ea00]
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xc0], eax
add esp, 0xb4
ret
mov dword [esp + 0x30], ecx
mov dword [esp + 0x64], ebx
mov ebp, ecx
shr ecx, 1
and ecx, 3
cmp ecx, 1
ja 0x4e4982
test ecx, ecx
jne 0x4e4779
mov esi, dword [eax + 0x24]
nop
cmp esi, ebx
jge 0x4e461e
mov ecx, ebx
sub ebx, esi
test ebx, ebx
jl 0x4e5089
mov edx, dword [eax + 0x1c]
cmp esi, ecx
jae 0x4e45b6
mov dword [esp + 0x2c], ebx
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], ebx
lea eax, [0x5153e0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov ecx, ebx
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x60], ecx
mov dword [esp + 0x98], edx
mov dword [esp + 0x5c], esi
sub ecx, ebx
add ecx, edx
mov dword [esp], ecx
mov dword [esp + 4], ebx
call sym.runtime.memclrNoHeapPointers
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0xb8]
mov dword [ecx + 0x20], eax
mov eax, dword [esp + 0x5c]
mov dword [ecx + 0x24], eax
mov eax, dword [0x653670]
test eax, eax
jne 0x4e45fd
mov eax, dword [esp + 0x98]
jmp 0x4e4611
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x98]
mov dword [edi], eax
mov ebx, dword [ecx + 0x1c]
mov dword [edi + 4], ebx
mov dword [ecx + 0x1c], eax
mov eax, ecx
mov ebx, dword [esp + 0x64]
mov ebp, dword [esp + 0x30]
mov edx, dword [eax + 0x24]
cmp edx, ebx
jb 0x4e5082
mov dword [eax + 0x20], ebx
mov ecx, dword [eax + 4]
mov edx, dword [eax]
mov ebp, dword [eax + 0x1c]
mov esi, dword [eax + 0x24]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], ebx
call sym.io.ReadAtLeast
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4e4751
mov ecx, dword [esp + 0x20]
cmp dword [0x5fbe58], eax
jne 0x4e46ae
mov dword [esp + 0x80], ecx
mov dword [esp + 0x4c], eax
mov edx, dword [0x5fbe5c]
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 0x4e46a3
mov eax, dword [0x5fbe60]
mov ecx, dword [0x5fbe64]
jmp 0x4e46ae
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x80]
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x48], eax
cmp dword [0x5fbe58], eax
jne 0x4e46e7
mov edx, dword [0x5fbe5c]
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 0x4e46e7
mov ecx, dword [esp + 0x48]
mov eax, dword [esp + 0x7c]
jmp 0x4e473c
lea eax, [0x51d2c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xb8]
mov edx, dword [ecx + 0x14]
mov ecx, dword [ecx + 0x18]
add edx, 3
mov dword [eax], edx
adc ecx, 0
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x48]
mov dword [eax + 8], ecx
mov ecx, dword [0x653670]
test ecx, ecx
jne 0x4e4728
mov ecx, dword [esp + 0x7c]
jmp 0x4e4733
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x7c]
mov dword [edi], ecx
mov dword [eax + 0xc], ecx
lea ecx, [0x55ea00]
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xc0], eax
add esp, 0xb4
ret
mov eax, dword [esp + 0x64]
add eax, 3
mov ecx, dword [esp + 0xb8]
mov edx, dword [ecx + 0x14]
mov ebx, dword [ecx + 0x18]
mov ebp, eax
sar eax, 0x1f
add edx, ebp
mov dword [ecx + 0x14], edx
adc ebx, eax
mov dword [ecx + 0x18], ebx
jmp 0x4e4ac6
mov esi, dword [eax + 0x24]
nop
cmp esi, ebx
jge 0x4e4834
mov ecx, ebx
sub ebx, esi
test ebx, ebx
jl 0x4e507d
mov edx, dword [eax + 0x1c]
cmp esi, ecx
jae 0x4e47cc
mov dword [esp + 0x28], ebx
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], ebx
lea eax, [0x5153e0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov ecx, ebx
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x60], esi
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x98], edx
sub ecx, ebx
add ecx, edx
mov dword [esp], ecx
mov dword [esp + 4], ebx
call sym.runtime.memclrNoHeapPointers
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0xb8]
mov dword [ecx + 0x20], eax
mov eax, dword [esp + 0x60]
mov dword [ecx + 0x24], eax
mov eax, dword [0x653670]
test eax, eax
jne 0x4e4813
mov eax, dword [esp + 0x98]
jmp 0x4e4827
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x98]
mov dword [edi], eax
mov ebx, dword [ecx + 0x1c]
mov dword [edi + 4], ebx
mov dword [ecx + 0x1c], eax
mov eax, ecx
mov ebx, dword [esp + 0x64]
mov ebp, dword [esp + 0x30]
mov edx, dword [eax + 0x24]
cmp edx, ebx
jb 0x4e5076
mov dword [eax + 0x20], ebx
mov ecx, dword [eax + 4]
mov edx, dword [eax]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0xa0]
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
jne 0x4e4896
mov edx, dword [esp + 0xb8]
movzx ebx, byte [edx + 0xc0]
mov ebp, dword [edx + 0x20]
xor eax, eax
jmp 0x4e5046
mov ecx, dword [esp + 0x20]
cmp dword [0x5fbe58], eax
jne 0x4e48df
mov dword [esp + 0x78], ecx
mov dword [esp + 0x44], eax
mov edx, dword [0x5fbe5c]
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 0x4e48d7
mov eax, dword [0x5fbe60]
mov ecx, dword [0x5fbe64]
jmp 0x4e48df
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x40], eax
cmp dword [0x5fbe58], eax
jne 0x4e4918
mov edx, dword [0x5fbe5c]
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 0x4e4918
mov ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x74]
jmp 0x4e496d
lea eax, [0x51d2c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xb8]
mov edx, dword [ecx + 0x14]
mov ecx, dword [ecx + 0x18]
add edx, 3
mov dword [eax], edx
adc ecx, 0
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x40]
mov dword [eax + 8], ecx
mov ecx, dword [0x653670]
test ecx, ecx
jne 0x4e4959
mov ecx, dword [esp + 0x74]
jmp 0x4e4964
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x74]
mov dword [edi], ecx
mov dword [eax + 0xc], ecx
lea ecx, [0x55ea00]
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xc0], eax
add esp, 0xb4
ret
cmp ecx, 2
jne 0x4e49f0
mov ecx, dword [eax + 0x14]
mov edx, dword [eax + 0x18]
add ecx, 3
mov dword [eax + 0x14], ecx
adc edx, 0
mov dword [eax + 0x18], edx
mov dword [esp], eax
mov dword [esp + 4], ebx
call sym.internal_zstd._Reader_.compressedBlock
mov eax, dword [esp + 8]
test eax, eax
jne 0x4e49d7
mov ecx, dword [esp + 0xb8]
mov edx, dword [ecx + 0x14]
mov ebx, dword [ecx + 0x18]
mov ebp, dword [esp + 0x64]
mov esi, ebp
sar ebp, 0x1f
add esi, edx
mov dword [ecx + 0x14], esi
adc ebx, ebp
mov dword [ecx + 0x18], ebx
mov ebp, 3
jmp 0x4e4ac6
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], ecx
add esp, 0xb4
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], 0x12
lea ecx, [0x53447c]
mov dword [eax], ecx
lea ecx, [0x55e744]
cmp dword [0x5fbe58], ecx
jne 0x4e4a54
mov edx, dword [0x5fbe5c]
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 0x4e4a54
lea ecx, [0x55e744]
mov eax, dword [esp + 0x94]
jmp 0x4e4ab1
lea eax, [0x51d2c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xb8]
mov edx, dword [ecx + 0x14]
mov ecx, dword [ecx + 0x18]
add edx, 3
mov dword [eax], edx
adc ecx, 0
mov dword [eax + 4], ecx
lea ecx, [0x55e744]
mov dword [eax + 8], ecx
mov ecx, dword [0x653670]
test ecx, ecx
jne 0x4e4a9a
mov ecx, dword [esp + 0x94]
jmp 0x4e4aa8
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x94]
mov dword [edi], ecx
mov dword [eax + 0xc], ecx
lea ecx, [0x55ea00]
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xc0], eax
add esp, 0xb4
ret
mov dword [esp + 0x24], ebp
movzx eax, byte [ecx + 0xb]
test al, al
jne 0x4e4b19
mov eax, dword [ecx + 0x20]
mov edx, eax
sar eax, 0x1f
mov dword [esp + 0x58], eax
mov ebx, dword [ecx + 0xc]
mov esi, dword [ecx + 0x10]
cmp esi, eax
xchg edi, ebx
sete bl
xchg edi, ebx
xchg ebp, ebx
setb bl
xchg ebp, ebx
cmp ebx, edx
setb al
and edi, eax
or edi, ebp
xchg edi, eax
test al, al
xchg edi, eax
jne 0x4e4f62
sub ebx, edx
mov dword [ecx + 0xc], ebx
mov eax, dword [esp + 0x58]
sbb esi, eax
mov dword [ecx + 0x10], esi
mov ebp, dword [esp + 0x24]
movzx eax, byte [ecx + 9]
test al, al
je 0x4e4b4f
lea eax, [ecx + 0xdc]
mov edx, dword [ecx + 0x1c]
mov ebx, dword [ecx + 0x20]
mov ebp, dword [ecx + 0x24]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebp
call sym.internal_zstd._xxhash64_.update
mov ecx, dword [esp + 0xb8]
mov ebp, dword [esp + 0x24]
mov eax, dword [esp + 0x30]
test eax, 1
je 0x4e4f25
movzx eax, byte [ecx + 0xb]
test al, al
jne 0x4e4b80
mov eax, dword [ecx + 0xc]
mov edx, dword [ecx + 0x10]
test eax, eax
setne al
test edx, edx
setne dl
or edx, eax
test dl, dl
jne 0x4e4e48
movzx eax, byte [ecx + 9]
test al, al
je 0x4e4cf9
mov eax, dword [ecx + 4]
mov edx, dword [ecx]
mov dword [esp], edx
mov dword [esp + 4], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 8], eax
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
je 0x4e4cb2
mov ecx, dword [esp + 0x20]
cmp dword [0x5fbe58], eax
jne 0x4e4c15
mov dword [esp + 0x70], ecx
mov dword [esp + 0x3c], eax
mov edx, dword [0x5fbe5c]
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 0x4e4c0d
mov eax, dword [0x5fbe60]
mov ecx, dword [0x5fbe64]
jmp 0x4e4c15
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x38], eax
mov dword [esp + 0x6c], ecx
cmp dword [0x5fbe58], eax
jne 0x4e4c4e
mov edx, dword [0x5fbe5c]
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 0x4e4c4e
mov ecx, dword [esp + 0x38]
mov eax, dword [esp + 0x6c]
jmp 0x4e4c9d
lea eax, [0x51d2c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xb8]
mov edx, dword [ecx + 0x14]
mov ecx, dword [ecx + 0x18]
mov dword [eax], edx
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x38]
mov dword [eax + 8], ecx
mov ecx, dword [0x653670]
test ecx, ecx
jne 0x4e4c89
mov ecx, dword [esp + 0x6c]
jmp 0x4e4c94
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x6c]
mov dword [edi], ecx
mov dword [eax + 0xc], ecx
lea ecx, [0x55ea00]
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xc0], eax
add esp, 0xb4
ret
mov eax, dword [esp + 0xb8]
lea ecx, [eax + 0xdc]
mov edx, dword [eax + 0xc0]
mov dword [esp + 0x64], edx
nop
mov dword [esp], ecx
call sym.internal_zstd._xxhash64_.digest
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x64]
cmp ecx, eax
jne 0x4e4d02
mov eax, dword [esp + 0xb8]
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 ecx, eax
mov byte [ecx + 8], 0
jmp 0x4e4f45
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], 0
mov dword [esp + 0xb0], 0
mov dword [esp], eax
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5154e0]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 0x64]
mov dword [esp], eax
call sym.runtime.convT32
mov eax, dword [esp + 4]
lea ecx, [0x5154e0]
mov dword [esp + 0xac], ecx
mov dword [esp + 0xb0], eax
lea eax, [0x539c65]
mov dword [esp], eax
mov dword [esp + 4], 0x22
lea eax, [esp + 0xa4]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
mov dword [esp + 0x10], 2
call sym.fmt.Errorf
mov eax, dword [esp + 0x14]
mov dword [esp + 0x34], eax
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x68], ecx
cmp dword [0x5fbe58], eax
jne 0x4e4de4
mov edx, dword [0x5fbe5c]
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 0x4e4de4
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x68]
jmp 0x4e4e33
lea eax, [0x51d2c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xb8]
mov edx, dword [ecx + 0x14]
mov ecx, dword [ecx + 0x18]
mov dword [eax], edx
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x34]
mov dword [eax + 8], ecx
mov ecx, dword [0x653670]
test ecx, ecx
jne 0x4e4e1f
mov ecx, dword [esp + 0x68]
jmp 0x4e4e2a
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x68]
mov dword [edi], ecx
mov dword [eax + 0xc], ecx
lea ecx, [0x55ea00]
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xc0], eax
add esp, 0xb4
ret
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], 0x27
lea ecx, [0x53ac96]
mov dword [eax], ecx
lea ecx, [0x55e744]
cmp dword [0x5fbe58], ecx
jne 0x4e4eac
mov edx, dword [0x5fbe5c]
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 0x4e4eac
lea ecx, [0x55e744]
mov eax, dword [esp + 0x90]
jmp 0x4e4f10
lea eax, [0x51d2c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xb8]
mov edx, dword [ecx + 0x14]
mov ecx, dword [ecx + 0x18]
mov ebx, dword [esp + 0x24]
mov ebp, ebx
sar ebx, 0x1f
add ebp, edx
mov dword [eax], ebp
adc ecx, ebx
mov dword [eax + 4], ecx
lea ecx, [0x55e744]
mov dword [eax + 8], ecx
mov ecx, dword [0x653670]
test ecx, ecx
jne 0x4e4ef9
mov ecx, dword [esp + 0x90]
jmp 0x4e4f07
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x90]
mov dword [edi], ecx
mov dword [eax + 0xc], ecx
lea ecx, [0x55ea00]
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xc0], eax
add esp, 0xb4
ret
lea eax, [ecx + 0x48]
mov edx, dword [ecx + 0x1c]
mov ebx, dword [ecx + 0x20]
mov ecx, dword [ecx + 0x24]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
call sym.internal_zstd._window_.save
mov dword [esp + 0xbc], 0
mov dword [esp + 0xc0], 0
add esp, 0xb4
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], 0x24
lea ecx, [0x53a44f]
mov dword [eax], ecx
lea ecx, [0x55e744]
cmp dword [0x5fbe58], ecx
jne 0x4e4fc6
mov edx, dword [0x5fbe5c]
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 0x4e4fc6
lea ecx, [0x55e744]
mov eax, dword [esp + 0x8c]
jmp 0x4e502a
lea eax, [0x51d2c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xb8]
mov edx, dword [ecx + 0x14]
mov ecx, dword [ecx + 0x18]
mov ebx, dword [esp + 0x24]
mov ebp, ebx
sar ebx, 0x1f
add ebp, edx
mov dword [eax], ebp
adc ecx, ebx
mov dword [eax + 4], ecx
lea ecx, [0x55e744]
mov dword [eax + 8], ecx
mov ecx, dword [0x653670]
test ecx, ecx
jne 0x4e5013
mov ecx, dword [esp + 0x8c]
jmp 0x4e5021
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x8c]
mov dword [edi], ecx
mov dword [eax + 0xc], ecx
lea ecx, [0x55ea00]
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xc0], eax
add esp, 0xb4
ret
mov esi, dword [edx + 0x1c]
mov byte [esi + eax], bl
inc eax
cmp eax, ebp
jge 0x4e5053
mov ecx, dword [edx + 0x20]
cmp eax, ecx
jb 0x4e503f
jmp 0x4e5071
mov eax, dword [edx + 0x14]
mov ebx, dword [edx + 0x18]
add eax, 4
mov dword [edx + 0x14], eax
adc ebx, 0
mov dword [edx + 0x18], ebx
mov ecx, edx
mov ebp, 4
jmp 0x4e4ac6
call sym.runtime.panicIndex
mov ecx, ebx
call sym.runtime.panicSliceAcap
call sym.runtime.panicmakeslicelen
mov ecx, ebx
call sym.runtime.panicSliceAcap
call sym.runtime.panicmakeslicelen
nop
call sym.runtime.morestack_noctxt
jmp sym.internal_zstd._Reader_.readBlock