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

Disassembly:
mov ecx, dword [0x6e06e0]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x51b4b9
sub esp, 0x64
mov ebx, dword [esp + 0x78]
cmp ebx, 0x102
jl 0x51b218
mov ebx, 0x102
mov ebp, dword [esp + 0x68]
test byte [ebp], al
mov edx, dword [ebp + 0xa0044]
mov eax, dword [esp + 0x6c]
lea ecx, [ebx + eax]
cmp edx, ecx
jb 0x51b4b3
mov esi, dword [ebp + 0xc]
cmp ebx, esi
jg 0x51b23d
mov esi, ebx
mov dword [esp + 0x20], esi
mov edi, dword [ebp + 0x10]
mov esi, dword [esp + 0x74]
cmp dword [ebp + 4], esi
jg 0x51b250
sar edi, 2
mov dword [esp + 0x24], ebx
lea ebx, [esi + eax]
cmp ebx, ecx
jae 0x51b4ac
mov ebp, dword [ebp + 0xa003c]
movzx ebx, byte [ebp + ebx]
cmp eax, ecx
ja 0x51b4a7
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
mov dword [esp + 0x5c], ebp
sub edx, eax
mov dword [esp + 0x18], edx
neg edx
sar edx, 0x1f
and edx, eax
add edx, ebp
mov dword [esp + 0x60], edx
add eax, 0xffff8000
mov dword [esp + 0x28], eax
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x4c], ecx
xor ecx, ecx
mov dword [esp + 0x38], ecx
xor ecx, ecx
mov byte [esp + 0xb], cl
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x4c]
jmp 0x51b2d7
mov ebp, dword [esp + 0x1c]
dec ebp
mov dword [esp + 0x2c], edi
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x60]
mov edi, ebp
mov ebp, dword [esp + 0x5c]
test edi, edi
jle 0x51b370
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0x2c]
lea edx, [edi + esi]
cmp edx, ecx
jae 0x51b4a0
add edx, ebp
cmp byte [edx], bl
jne 0x51b343
cmp edi, ecx
ja 0x51b499
mov edx, dword [esp + 0x14]
sub edx, edi
mov dword [esp + 0x30], edx
neg edx
sar edx, 0x1f
and edx, edi
add edx, ebp
mov ebp, dword [esp + 0x24]
mov edi, dword [esp + 0x30]
cmp ebp, edi
ja 0x51b490
mov edi, dword [esp + 0x18]
cmp ebp, edi
ja 0x51b487
mov byte [esp + 0xa], bl
mov dword [esp + 0x44], eax
xor eax, eax
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x44]
jmp 0x51b3b9
mov edx, dword [esp + 0x38]
cmp edi, eax
je 0x51b398
and edi, 0x7fff
mov ebp, dword [esp + 0x68]
mov edi, dword [ebp + edi*4 + 0x80034]
sub edi, dword [ebp + 0xa0034]
cmp edi, eax
jl 0x51b38f
test edi, edi
jge 0x51b2c0
jmp 0x51b38f
mov eax, dword [esp + 0x38]
movzx ecx, byte [esp + 0xb]
mov dword [esp + 0x7c], esi
mov dword [esp + 0x80], eax
mov byte [esp + 0x84], cl
add esp, 0x64
ret
mov eax, edx
movzx ecx, byte [esp + 0xb]
jmp 0x51b379
mov eax, edx
movzx ecx, byte [esp + 0xb]
jmp 0x51b379
lea eax, [edi + 1]
mov ecx, dword [esp + 0x10]
movzx ebx, byte [esp + 0xa]
mov edi, dword [esp + 0x18]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0xc]
cmp edi, ebp
jge 0x51b3e3
movzx eax, byte [edi + edx]
mov ebx, dword [esp + 0x60]
lea ecx, [edi + ebx]
cmp byte [ecx], al
je 0x51b3a1
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x10]
mov edx, ebp
movzx ebx, byte [esp + 0xa]
mov ebp, edi
jmp 0x51b3e5
mov edx, ebp
cmp esi, ebp
jge 0x51b45e
cmp ebp, 4
jg 0x51b408
mov dword [esp + 0x34], ebp
mov edi, dword [esp + 0x6c]
mov ebp, dword [esp + 0x2c]
sub edi, ebp
cmp edi, 0x1000
jg 0x51b44d
mov ebp, dword [esp + 0x34]
mov ebx, dword [esp + 0x6c]
mov esi, dword [esp + 0x2c]
mov edi, ebx
sub ebx, esi
mov esi, dword [esp + 0x20]
cmp esi, ebp
jle 0x51b43f
lea esi, [ebp + edi]
cmp esi, ecx
jae 0x51b480
mov edi, dword [esp + 0x5c]
movzx esi, byte [edi + esi]
mov dword [esp + 0x3c], eax
mov eax, 1
mov byte [esp + 0xb], al
mov eax, dword [esp + 0x3c]
jmp 0x51b46d
mov esi, ebp
mov eax, ebx
mov ecx, 1
jmp 0x51b379
mov edi, dword [esp + 0x5c]
mov ebx, dword [esp + 0x38]
mov ebp, esi
movzx esi, byte [esp + 0xa]
jmp 0x51b46d
mov edi, dword [esp + 0x5c]
mov ebx, dword [esp + 0x38]
mov ebp, esi
movzx esi, byte [esp + 0xa]
mov edi, dword [esp + 0x2c]
mov edx, ebx
mov ebx, esi
mov esi, ebp
mov ebp, dword [esp + 0x5c]
jmp 0x51b347
mov eax, esi
call sym.runtime.panicIndex
mov ecx, ebp
mov edx, edi
call sym.runtime.panicSliceAcap
mov ecx, ebp
mov edx, edi
call sym.runtime.panicSliceAcap
mov eax, edi
call sym.runtime.panicSliceB
mov eax, edx
call sym.runtime.panicIndex
call sym.runtime.panicSliceB
mov eax, ebx
call sym.runtime.panicIndex
call sym.runtime.panicSliceAcap
nop
call sym.runtime.morestack_noctxt
jmp sym.compress_flate._compressor_.findMatch