Function at 0x6c2974a4
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x3c
mov ebx, dword [esp + 0x50]
mov esi, dword [esp + 0x58]
mov eax, dword [ebx + 0x1af34]
mov dl, byte [ebx + 0x1af38]
mov byte [ebx + eax + 0x19f2c], dl
mov eax, dword [ebx + 0x1af50]
cmp word [eax], 0xffff
je 0x6c297744
lea eax, [ebx + 0xf90]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.6c2964dc
mov eax, dword [ebx + 0x1af40]
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x1af3c]
mov dword [esp + 4], eax
mov dword [esp], str._nlit_data:_dyn__ld__stat__ld
call fcn.6c295d9c
lea eax, [ebx + 0xfac]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.6c2964dc
mov eax, dword [ebx + 0x1af40]
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x1af3c]
mov dword [esp + 4], eax
mov dword [esp], str._ndist_data:_dyn__ld__stat__ld
call fcn.6c295d9c
mov dword [esp], ebx
call fcn.6c296824
mov dword [esp + 0x2c], eax
mov edx, dword [ebx + 0x1af3c]
lea eax, [edx + 0xa]
shr eax, 3
mov ecx, dword [ebx + 0x1af40]
lea ebp, [ecx + 0xa]
shr ebp, 3
add dword [ebx + 0x1af4c], esi
mov edi, dword [ebx + 0x1af30]
mov dword [esp + 0x1c], edi
mov edi, dword [ebx + 0x1af2c]
mov dword [esp + 0x18], edi
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov dword [esp], str._nopt__lu__lu__stat__lu__lu__stored__lu_lit__u_dist__u
mov dword [esp + 0x28], eax
call fcn.6c295d9c
mov eax, dword [esp + 0x28]
cmp ebp, eax
cmovbe eax, ebp
lea edx, [esi + 4]
cmp edx, eax
ja 0x6c297624
mov edx, dword [esp + 0x54]
test edx, edx
je 0x6c297624
mov dword [esp + 8], 3
mov edi, dword [esp + 0x5c]
mov dword [esp + 4], edi
mov dword [esp], ebx
call fcn.6c296bc4
mov eax, dword [ebx + 0x1af48]
add eax, 0xa
shr eax, 3
mov edx, dword [ebx + 0x1af44]
add edx, esi
lea eax, [edx + eax + 4]
mov dword [ebx + 0x1af44], eax
mov dword [ebx + 0x1af48], 0
mov dword [esp + 0xc], 1
mov dword [esp + 8], esi
mov edi, dword [esp + 0x54]
mov dword [esp + 4], edi
mov dword [esp], ebx
call fcn.6c297338
mov eax, dword [ebx + 0x1af44]
mov edx, dword [ebx + 0x1af48]
jmp 0x6c2976b0
mov dword [esp + 8], 3
cmp ebp, eax
mov eax, dword [esp + 0x5c]
je 0x6c297708
add eax, 4
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.6c296bc4
mov eax, dword [esp + 0x2c]
inc eax
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0xfc4]
inc eax
mov dword [esp + 8], eax
mov eax, dword [ebx + 0xfa8]
inc eax
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.6c29707c
lea eax, [ebx + 0x908]
mov dword [esp + 8], eax
lea eax, [ebx + 0x14]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.6c296c94
mov edx, dword [ebx + 0x1af48]
add edx, dword [ebx + 0x1af3c]
add edx, 3
mov eax, edx
shr eax, 3
add eax, dword [ebx + 0x1af44]
mov dword [ebx + 0x1af44], eax
and edx, 7
mov dword [ebx + 0x1af48], edx
lea eax, [edx + eax*8]
cmp eax, dword [ebx + 0x1af6c]
je 0x6c2976c5
mov dword [ebx + 0x6afa4], str.bad_compressed_size
mov dword [esp], ebx
call fcn.6c295da4
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x6c2976e4
mov dword [esp], ebx
call fcn.6c297218
add dword [ebx + 0x1af48], 7
mov dword [esp], 0x6c377dbb
call fcn.6c295d9c
mov eax, dword [ebx + 0x1af48]
shr eax, 3
add eax, dword [ebx + 0x1af44]
add esp, 0x3c
pop ebx
pop esi
pop edi
pop ebp
ret
add eax, 2
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.6c296bc4
lea eax, [ebx + 0xe7c]
mov dword [esp + 8], eax
lea eax, [ebx + 0x9fc]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.6c296c94
mov edx, dword [ebx + 0x1af48]
add edx, dword [ebx + 0x1af40]
jmp 0x6c297693
mov dword [esp], ebx
call fcn.6c296b24
jmp 0x6c2974d6