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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4bb7c4
sub esp, 0x70
mov eax, dword [esp + 0x74]
mov ecx, dword [eax + 0x14]
cmp ecx, 0xe
jae 0x4bb235
mov dword [esp], eax
call dbg.compress/flate.(*decompressor).moreBits
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
test ecx, ecx
je 0x4bb209
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], eax
add esp, 0x70
ret
mov ecx, dword [eax + 0x10]
mov edx, ecx
and ecx, 0x1f
lea ebx, [ecx + 0x101]
cmp ebx, 0x11e
jg 0x4bb762
mov ebp, edx
shr edx, 5
mov dword [eax + 0x10], edx
and edx, 0x1f
lea esi, [edx + 1]
cmp esi, 0x1e
jg 0x4bb72a
mov dword [esp + 0x38], ecx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x34], edx
mov esi, ebp
shr ebp, 0xe
mov dword [eax + 0x10], ebp
mov ebp, dword [eax + 0x14]
add ebp, 0xfffffff2
mov dword [eax + 0x14], ebp
shr esi, 0xa
and esi, 0xf
lea ebp, [esi + 4]
mov dword [esp + 0x24], ebp
xor esi, esi
jmp 0x4bb322
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x24]
mov esi, dword [esp + 0x28]
mov edi, dword [eax + 0x14]
cmp edi, 3
jae 0x4bb2d7
mov dword [esp], eax
call dbg.compress/flate.(*decompressor).moreBits
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
test ecx, ecx
je 0x4bb297
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], eax
add esp, 0x70
ret
mov edi, dword [eax + 0x1044]
test byte [edi], al
mov ebx, dword [eax + 0x10]
cmp esi, 0x13
jae 0x4bb7bd
lea ecx, [0x70fae0]
mov edx, dword [ecx + esi*4]
cmp edx, 0x13
jae 0x4bb7bd
and ebx, 7
mov dword [edi + edx*4], ebx
mov edi, dword [eax + 0x10]
shr edi, 3
mov dword [eax + 0x10], edi
mov edi, dword [eax + 0x14]
add edi, 0xfffffffd
mov dword [eax + 0x14], edi
inc esi
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x18]
cmp esi, ebp
jge 0x4bb338
mov dword [esp + 0x28], esi
jmp 0x4bb2af
mov dword [esi + ebx*4], 0
inc ebp
mov ebx, dword [esp + 0x18]
cmp ebp, 0x13
jge 0x4bb361
mov esi, dword [eax + 0x1044]
test byte [esi], al
cmp ebp, 0x13
jae 0x4bb7b6
lea edi, [0x70fae0]
mov ebx, dword [edi + ebp*4]
cmp ebx, 0x13
jb 0x4bb32c
jmp 0x4bb7b6
mov ecx, dword [eax + 0x1044]
test byte [ecx], al
lea edx, [eax + 0x18]
mov dword [esp + 0x6c], edx
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x13
mov dword [esp + 0xc], 0x13
call dbg.compress/flate.(*huffmanDecoder).init
movzx eax, byte [esp + 0x10]
test al, al
je 0x4bb6ee
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x34]
lea ecx, [ecx + eax + 0x102]
mov dword [esp + 0x20], ecx
xor edx, edx
jmp 0x4bb3ba
mov eax, dword [esp + 0x38]
mov edx, ecx
mov ecx, dword [esp + 0x20]
cmp edx, ecx
jge 0x4bb5d1
mov dword [esp + 0x2c], edx
mov eax, dword [esp + 0x6c]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x74]
mov dword [esp], ecx
call dbg.compress/flate.(*decompressor).huffSym
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
test ecx, ecx
jne 0x4bb5c5
cmp edx, 0x10
jge 0x4bb417
mov eax, dword [esp + 0x74]
mov ecx, dword [eax + 0x1040]
test byte [ecx], al
mov ebx, dword [esp + 0x2c]
cmp ebx, 0x13c
jae 0x4bb7af
mov dword [ecx + ebx*4], edx
lea ecx, [ebx + 1]
jmp 0x4bb3b0
jne 0x4bb571
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x4bb535
mov edx, dword [esp + 0x74]
mov ebx, dword [edx + 0x1040]
test byte [ebx], al
lea ebp, [eax - 1]
cmp ebp, 0x13c
jae 0x4bb7a8
mov ebx, dword [ebx + eax*4 - 4]
mov ecx, 2
mov ebp, 3
mov dword [esp + 0x30], ebx
mov dword [esp + 0x14], ebp
mov dword [esp + 0x1c], ecx
jmp 0x4bb474
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x74]
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x14]
mov esi, dword [edx + 0x14]
cmp esi, ecx
jae 0x4bb49b
mov dword [esp], edx
call dbg.compress/flate.(*decompressor).moreBits
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
test ecx, ecx
je 0x4bb460
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], eax
add esp, 0x70
ret
mov esi, dword [edx + 0x10]
mov edi, esi
shr esi, cl
cmp ecx, 0x20
sbb ebx, ebx
and esi, ebx
mov dword [edx + 0x10], esi
mov esi, dword [edx + 0x14]
sub esi, ecx
mov dword [edx + 0x14], esi
mov esi, 1
shl esi, cl
and esi, ebx
lea ebx, [esi - 1]
and ebx, edi
add ebx, ebp
lea ebp, [eax + ebx]
mov esi, dword [esp + 0x20]
cmp ebp, esi
jg 0x4bb4fd
mov ecx, dword [esp + 0x30]
xor ebp, ebp
jmp 0x4bb4dc
mov dword [edi + eax*4], ecx
inc ebp
inc eax
cmp ebp, ebx
jge 0x4bb4f4
mov edi, dword [edx + 0x1040]
test byte [edi], al
cmp eax, 0x13c
jb 0x4bb4d7
jmp 0x4bb7a1
mov ecx, eax
mov eax, edx
jmp 0x4bb3b0
mov eax, dword [edx + 0xc]
mov ecx, dword [edx + 8]
mov dword [esp + 0x44], ecx
mov dword [esp + 0x48], eax
lea eax, [0x641450]
mov dword [esp], eax
lea eax, [esp + 0x44]
mov dword [esp + 4], eax
call dbg.runtime.convT2I64
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], ecx
add esp, 0x70
ret
mov eax, dword [esp + 0x74]
mov ecx, dword [eax + 0xc]
mov eax, dword [eax + 8]
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], ecx
lea eax, [0x641450]
mov dword [esp], eax
lea eax, [esp + 0x4c]
mov dword [esp + 4], eax
call dbg.runtime.convT2I64
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], eax
add esp, 0x70
ret
cmp edx, 0x11
jne 0x4bb58f
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x74]
mov ecx, 3
mov ebp, 3
xor ebx, ebx
jmp 0x4bb452
cmp edx, 0x12
jne 0x4bb5ad
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x74]
mov ecx, 7
mov ebp, 0xb
xor ebx, ebx
jmp 0x4bb452
lea eax, [0x641470]
mov dword [esp + 0x78], eax
lea eax, [0x640188]
mov dword [esp + 0x7c], eax
add esp, 0x70
ret
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], eax
add esp, 0x70
ret
mov edx, dword [esp + 0x74]
mov ebx, dword [edx + 0x1040]
test byte [ebx], al
mov ebp, dword [esp + 0x18]
cmp ebp, 0x13c
ja 0x4bb79a
mov eax, dword [esp + 0x6c]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 0x13c
call dbg.compress/flate.(*huffmanDecoder).init
movzx eax, byte [esp + 0x10]
test al, al
je 0x4bb6b2
mov eax, dword [esp + 0x74]
mov ecx, dword [eax + 0x1040]
test byte [ecx], al
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x20]
cmp edx, ebx
ja 0x4bb79a
cmp ebx, 0x13c
ja 0x4bb79a
lea ebp, [eax + 0x82c]
mov dword [esp], ebp
mov ebp, dword [esp + 0x38]
add ebp, 0xffffffc5
xchg ebp, ebx
neg ebx
xchg ebp, ebx
mov esi, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
mov edi, edx
shl edx, 2
sar ebp, 0x1f
and edx, ebp
add ecx, edx
mov dword [esp + 4], ecx
sub ebx, edi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
call dbg.compress/flate.(*huffmanDecoder).init
movzx eax, byte [esp + 0x10]
test al, al
je 0x4bb6b2
mov eax, dword [esp + 0x74]
mov ecx, dword [eax + 0x1040]
mov edx, dword [eax + 0x18]
mov ecx, dword [ecx + 0x400]
cmp edx, ecx
jge 0x4bb69e
mov dword [eax + 0x18], ecx
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
add esp, 0x70
ret
mov eax, dword [esp + 0x74]
mov ecx, dword [eax + 8]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], eax
lea eax, [0x641450]
mov dword [esp], eax
lea eax, [esp + 0x3c]
mov dword [esp + 4], eax
call dbg.runtime.convT2I64
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], eax
add esp, 0x70
ret
mov eax, dword [esp + 0x74]
mov ecx, dword [eax + 0xc]
mov eax, dword [eax + 8]
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], ecx
lea eax, [0x641450]
mov dword [esp], eax
lea eax, [esp + 0x54]
mov dword [esp + 4], eax
call dbg.runtime.convT2I64
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], eax
add esp, 0x70
ret
mov ecx, dword [eax + 8]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x60], eax
lea eax, [0x641450]
mov dword [esp], eax
lea eax, [esp + 0x5c]
mov dword [esp + 4], eax
call dbg.runtime.convT2I64
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], eax
add esp, 0x70
ret
mov ecx, dword [eax + 0xc]
mov eax, dword [eax + 8]
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], ecx
lea eax, [0x641450]
mov dword [esp], eax
lea eax, [esp + 0x64]
mov dword [esp + 4], eax
call dbg.runtime.convT2I64
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], eax
add esp, 0x70
ret
call dbg.runtime.panicslice
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.panicindex
ud2
call dbg.runtime.morestack_noctxt
jmp dbg.compress/flate.(*decompressor).readHuffman