Function at 0x6b553490
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x5c
mov esi, dword [sym.imp.libssp_0.dll___stack_chk_guard]
mov dword [esp + 0x4c], esi
xor esi, esi
mov eax, dword [esp + 0x7c]
mov ebp, dword [esp + 0x70]
mov edx, dword [esp + 0x84]
mov ebx, dword [esp + 0x74]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x2c], ebp
mov edi, dword [eax]
mov esi, dword [eax + 4]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x78]
sub eax, 8
mov dword [esp + 0x30], eax
test edx, edx
je 0x6b5535c0
test eax, eax
js 0x6b553840
shr eax, 3
lea ecx, [esp + 0x44]
mov edx, esi
mov dword [esp + 0x20], eax
lea eax, [eax*8 + 8]
mov esi, ecx
mov dword [esp + 0x24], eax
add eax, ebx
mov dword [esp + 0x1c], eax
mov eax, edi
lea esi, [esi]
nop
mov edi, dword [ebp]
mov ecx, dword [ebp + 4]
mov dword [esp], esi
add ebx, 8
add ebp, 8
xor eax, edi
xor edx, ecx
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x48], edx
mov dword [esp + 4], eax
call sym.libcrypto_1_1.dll_RC2_encrypt
mov eax, dword [esp + 0x44]
mov edx, eax
mov byte [ebx - 8], al
shr edx, 0x10
mov byte [ebx - 7], ah
mov byte [ebx - 6], dl
mov edx, eax
shr edx, 0x18
mov byte [ebx - 5], dl
mov edx, dword [esp + 0x48]
mov ecx, edx
mov byte [ebx - 4], dl
shr ecx, 0x10
mov byte [ebx - 3], dh
mov byte [ebx - 2], cl
mov ecx, edx
shr ecx, 0x18
mov byte [ebx - 1], cl
cmp ebx, dword [esp + 0x1c]
jne 0x6b553510
mov edi, eax
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov esi, edx
add dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x78]
neg eax
shl eax, 3
lea edx, [ecx + eax - 0x10]
add eax, dword [esp + 0x30]
mov dword [esp + 0x78], eax
cmp edx, 0xfffffff8
je 0x6b553860
mov eax, dword [esp + 0x2c]
cmp dword [esp + 0x78], 7
lea eax, [eax + edx + 8]
ja case.0x6b5535b7.0
mov ecx, dword [esp + 0x78]
jmp dword [ecx*4 + 0x6b61314c]
test eax, eax
js 0x6b553850
shr eax, 3
mov dword [esp + 0x38], eax
lea eax, [eax*8 + 8]
mov dword [esp + 0x3c], eax
add eax, ebx
mov dword [esp + 0x24], eax
lea eax, [esp + 0x44]
mov dword [esp + 0x28], eax
lea esi, [esi]
nop
mov eax, dword [esp + 0x18]
mov dword [esp + 0x20], edi
add ebx, 8
add ebp, 8
mov edi, dword [ebp - 8]
mov dword [esp + 0x1c], esi
mov esi, dword [ebp - 4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x44], edi
mov dword [esp + 0x48], esi
mov dword [esp], eax
call sym.libcrypto_1_1.dll_RC2_decrypt
mov edx, dword [esp + 0x20]
xor edx, dword [esp + 0x44]
mov byte [ebx - 8], dl
mov ecx, edx
mov eax, dword [esp + 0x1c]
mov byte [ebx - 7], dh
shr edx, 0x18
xor eax, dword [esp + 0x48]
shr ecx, 0x10
mov byte [ebx - 5], dl
mov edx, eax
mov byte [ebx - 4], al
shr edx, 0x10
mov byte [ebx - 3], ah
shr eax, 0x18
mov byte [ebx - 6], cl
mov byte [ebx - 2], dl
mov byte [ebx - 1], al
cmp ebx, dword [esp + 0x24]
jne 0x6b5535f0
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
add dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x78]
neg eax
shl eax, 3
lea ebp, [ecx + eax - 0x10]
add eax, dword [esp + 0x30]
mov dword [esp + 0x78], eax
cmp ebp, 0xfffffff8
je 0x6b553732
mov ecx, dword [esp + 0x2c]
lea ebx, [ebx + ebp + 8]
mov eax, dword [ecx]
mov edx, dword [ecx + 4]
lea ecx, [esp + 0x44]
mov dword [esp], ecx
mov dword [esp + 0x44], eax
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x48], edx
mov dword [esp + 4], eax
mov dword [esp + 0x1c], edx
call sym.libcrypto_1_1.dll_RC2_decrypt
xor edi, dword [esp + 0x44]
xor esi, dword [esp + 0x48]
cmp dword [esp + 0x78], 7
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x18], edi
mov eax, dword [esp + 0x20]
ja case.0x6b5536dc.0
mov edi, dword [esp + 0x78]
jmp dword [edi*4 + 0x6b61316c]
mov edi, esi
sub ebx, 1
shr edi, 0x10
mov ecx, edi
mov byte [ebx], cl
mov ecx, esi
sub ebx, 1
mov byte [ebx], ch
mov ecx, esi
lea edi, [ebx - 1]
mov byte [ebx - 1], cl
mov esi, dword [esp + 0x18]
lea ebx, [edi - 1]
shr esi, 0x18
mov ecx, esi
mov byte [edi - 1], cl
mov edi, dword [esp + 0x18]
lea esi, [ebx - 1]
shr edi, 0x10
mov ecx, edi
mov byte [ebx - 1], cl
mov ecx, dword [esp + 0x18]
lea ebx, [esi - 1]
mov byte [esi - 1], ch
movzx ecx, byte [esp + 0x18]
mov esi, edx
mov edi, eax
mov byte [ebx - 1], cl
mov eax, dword [esp + 0x34]
mov dword [eax], edi
mov dword [eax + 4], esi
mov eax, dword [esp + 0x4c]
xor eax, dword [sym.imp.libssp_0.dll___stack_chk_guard]
jne 0x6b5538ff
add esp, 0x5c
pop ebx
pop esi
pop edi
pop ebp
ret
xor ecx, ecx
movzx edx, byte [eax - 1]
sub eax, 1
shl edx, 8
or edx, ecx
lea ecx, [eax - 1]
movzx eax, byte [eax - 1]
or edx, eax
xor esi, edx
lea eax, [ecx - 1]
movzx ecx, byte [ecx - 1]
shl ecx, 0x18
mov edx, ecx
movzx ecx, byte [eax - 1]
lea ebp, [eax - 1]
shl ecx, 0x10
or ecx, edx
movzx edx, byte [ebp - 1]
lea eax, [ebp - 1]
shl edx, 8
or edx, ecx
movzx ecx, byte [eax - 1]
or edx, ecx
xor edi, edx
mov eax, dword [esp + 0x18]
mov dword [esp + 0x44], edi
mov dword [esp + 0x48], esi
mov dword [esp + 4], eax
lea eax, [esp + 0x44]
mov dword [esp], eax
call sym.libcrypto_1_1.dll_RC2_encrypt
mov edi, dword [esp + 0x44]
mov esi, dword [esp + 0x48]
mov eax, edi
mov edx, edi
mov ebp, edi
shr edi, 0x18
movzx ecx, ah
mov eax, esi
shr edx, 0x10
mov byte [esp + 0x1c], al
mov eax, esi
movzx eax, ah
mov byte [esp + 0x18], dl
mov edx, dword [esp + 0x48]
mov dword [esp + 0x20], eax
mov eax, esi
shr esi, 0x18
shr eax, 0x10
mov dword [ebx + 4], edx
mov byte [esp + 0x24], al
mov eax, dword [esp + 0x44]
mov dword [ebx], eax
mov eax, dword [esp + 0x34]
mov ebx, ebp
mov byte [eax + 1], cl
movzx ecx, byte [esp + 0x18]
mov byte [eax], bl
mov byte [eax + 2], cl
mov ecx, edi
mov edi, eax
mov byte [eax + 3], cl
movzx ecx, byte [esp + 0x1c]
mov byte [eax + 4], cl
movzx ecx, byte [esp + 0x20]
mov byte [eax + 5], cl
movzx ecx, byte [esp + 0x24]
mov byte [eax + 6], cl
mov eax, esi
mov byte [edi + 7], al
jmp 0x6b55373b
mov edx, eax
jmp 0x6b553597
mov ebp, eax
jmp 0x6b55367f
mov eax, edi
mov edx, edi
mov ebp, edi
shr edi, 0x18
movzx ecx, ah
mov eax, esi
shr edx, 0x10
mov byte [esp + 0x1c], al
mov eax, esi
movzx eax, ah
mov byte [esp + 0x18], dl
mov dword [esp + 0x20], eax
mov eax, esi
shr esi, 0x18
shr eax, 0x10
mov byte [esp + 0x24], al
jmp 0x6b5537fc
xor edx, edx
jmp 0x6b553795
mov ebp, eax
xor ecx, ecx
jmp 0x6b553789
xor edx, edx
jmp 0x6b55377d
mov ecx, eax
jmp 0x6b553771
xor edx, edx
jmp 0x6b553766
movzx edx, byte [eax - 1]
sub eax, 1
mov ecx, edx
shl ecx, 0x10
jmp 0x6b55375a
mov esi, ebx
jmp 0x6b55371c
mov edi, ebx
jmp 0x6b5536fe
call sym.___stack_chk_fail
mov esi, edx
mov edi, eax
jmp 0x6b553732