Function at 0x6b477580
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 + 0x1c], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x30], ebp
mov esi, dword [eax]
mov edi, dword [eax + 4]
mov eax, dword [esp + 0x78]
sub eax, 8
mov dword [esp + 0x34], eax
test edx, edx
je 0x6b4776c0
test eax, eax
js 0x6b4778b0
shr eax, 3
lea ecx, [esp + 0x44]
mov edx, edi
mov dword [esp + 0x28], eax
lea eax, [eax*8 + 8]
mov dword [esp + 0x24], eax
add eax, ebx
mov dword [esp + 0x20], eax
mov eax, esi
mov esi, ecx
lea esi, [esi]
nop
mov edi, dword [ebp]
mov ecx, dword [ebp + 4]
mov dword [esp], esi
add ebx, 8
mov dword [esp + 8], 1
add ebp, 8
xor eax, edi
xor edx, ecx
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x48], edx
mov dword [esp + 4], eax
call sym.libcrypto_1_1.dll_DES_encrypt1
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 + 0x20]
jne 0x6b477600
mov esi, eax
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
mov edi, edx
add dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x78]
neg eax
shl eax, 3
lea edx, [ecx + eax - 0x10]
add eax, dword [esp + 0x34]
mov dword [esp + 0x78], eax
cmp edx, 0xfffffff8
je case.0x6b4777d6.68
mov eax, dword [esp + 0x30]
cmp dword [esp + 0x78], 7
lea eax, [eax + edx + 8]
ja case.0x6b4776af.0
mov ecx, dword [esp + 0x78]
jmp dword [ecx*4 + 0x6b5db880]
test eax, eax
js 0x6b4778c0
shr eax, 3
mov dword [esp + 0x3c], eax
lea eax, [eax*8 + 8]
mov dword [esp + 0x38], eax
add eax, ebx
mov dword [esp + 0x28], eax
lea eax, [esp + 0x44]
mov dword [esp + 0x2c], eax
lea esi, [esi]
nop
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x24], esi
add ebx, 8
add ebp, 8
mov esi, dword [ebp - 8]
mov dword [esp + 0x20], edi
mov edi, dword [ebp - 4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 8], 0
mov dword [esp + 0x44], esi
mov dword [esp], eax
mov dword [esp + 0x48], edi
call sym.libcrypto_1_1.dll_DES_encrypt1
mov edx, dword [esp + 0x24]
xor edx, dword [esp + 0x44]
mov byte [ebx - 8], dl
mov ecx, edx
mov eax, dword [esp + 0x20]
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 dword [esp + 0x28], ebx
jne 0x6b4776f0
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x38]
add dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x78]
neg eax
shl eax, 3
lea ebp, [ecx + eax - 0x10]
add eax, dword [esp + 0x34]
mov dword [esp + 0x78], eax
cmp ebp, 0xfffffff8
je case.0x6b4777d6.68
mov ecx, dword [esp + 0x30]
mov eax, dword [ecx]
mov dword [esp + 0x44], eax
mov eax, dword [ecx + 4]
mov dword [esp + 8], 0
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 4], eax
lea eax, [esp + 0x44]
mov dword [esp], eax
call sym.libcrypto_1_1.dll_DES_encrypt1
xor esi, dword [esp + 0x44]
xor edi, dword [esp + 0x48]
lea eax, [ebx + ebp + 8]
cmp dword [esp + 0x78], 7
mov edx, esi
ja case.0x6b4777d6.68
mov esi, dword [esp + 0x78]
jmp dword [esi*4 + 0x6b5db8a0]
mov ecx, edi
sub eax, 1
shr ecx, 0x10
mov byte [eax], cl
mov ecx, edi
sub eax, 1
mov byte [eax], ch
mov ebx, edi
lea ecx, [eax - 1]
mov byte [eax - 1], bl
mov ebx, edx
lea eax, [ecx - 1]
shr ebx, 0x18
mov byte [ecx - 1], bl
mov ebx, edx
lea ecx, [eax - 1]
shr ebx, 0x10
mov byte [eax - 1], bl
mov byte [ecx - 1], dh
lea eax, [ecx - 1]
mov byte [eax - 1], dl
mov eax, dword [esp + 0x4c]
xor eax, dword [sym.imp.libssp_0.dll___stack_chk_guard]
jne 0x6b47792f
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 edi, edx
lea eax, [ecx - 1]
movzx ecx, byte [ecx - 1]
shl ecx, 0x18
movzx edx, byte [eax - 1]
lea ebp, [eax - 1]
shl edx, 0x10
or ecx, edx
movzx edx, byte [ebp - 1]
lea eax, [ebp - 1]
shl edx, 8
or edx, ecx
movzx eax, byte [eax - 1]
or edx, eax
xor esi, edx
mov eax, dword [esp + 0x1c]
mov dword [esp + 8], 1
mov dword [esp + 0x44], esi
mov dword [esp + 4], eax
lea eax, [esp + 0x44]
mov dword [esp], eax
mov dword [esp + 0x48], edi
call sym.libcrypto_1_1.dll_DES_encrypt1
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x48]
mov dword [ebx], eax
mov dword [ebx + 4], edx
jmp case.0x6b4777d6.68
mov edx, eax
jmp 0x6b47768f
mov ebp, eax
jmp 0x6b477787
xor edx, edx
jmp 0x6b47786b
mov ebp, eax
xor ecx, ecx
jmp 0x6b47785f
xor ecx, ecx
jmp 0x6b477853
mov ecx, eax
jmp 0x6b477849
xor edx, edx
jmp 0x6b47783e
movzx edx, byte [eax - 1]
sub eax, 1
mov ecx, edx
shl ecx, 0x10
jmp 0x6b477832
mov ecx, eax
jmp 0x6b47780c
mov ecx, eax
jmp 0x6b4777f6
call sym.___stack_chk_fail
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop