Function at 0x10001430
Capabilities:
Encode data using xor
Encrypt data using des

Disassembly:
push ecx
mov eax, dword [esp + 8]
push ebx
push ebp
push esi
mov esi, dword [eax]
mov ebx, dword [eax + 4]
push edi
push 4
push esi
call fcn.10001040
xor eax, ebx
push 4
and eax, 0xf0f0f0f
push eax
xor ebx, eax
call section..text
xor esi, eax
push 0x10
push esi
call fcn.10001040
xor eax, ebx
push 0x10
and eax, 0xffff
push eax
xor ebx, eax
call section..text
push 2
push ebx
xor esi, eax
call fcn.10001040
xor eax, esi
push 2
and eax, 0x33333333
push eax
xor esi, eax
call section..text
xor ebx, eax
push 8
push ebx
call fcn.10001040
xor eax, esi
push 8
and eax, 0xff00ff
push eax
xor esi, eax
call section..text
add esp, 0x40
xor ebx, eax
push 0x1f
push ebx
call fcn.10001040
mov edi, eax
lea eax, [ebx + ebx]
and edi, 1
push 0x1f
or edi, eax
mov eax, edi
xor eax, esi
and eax, 0xaaaaaaaa
xor esi, eax
xor edi, eax
push esi
call fcn.10001040
mov ebx, eax
push 1
push esi
and ebx, 1
call section..text
add esp, 0x18
or ebx, eax
mov dword [esp + 0x10], 8
push 0x1c
push edi
call section..text
push 4
push edi
mov ebp, eax
call fcn.10001040
or ebp, eax
mov eax, dword [esp + 0x2c]
push 8
mov ecx, dword [eax]
add eax, 4
xor ebp, ecx
mov dword [esp + 0x30], eax
mov ecx, ebp
push ebp
and ecx, 0x3f
mov esi, dword [ecx*4 + 0x1000b710]
call fcn.10001040
and eax, 0x3f
push 0x10
push ebp
or esi, dword [eax*4 + 0x1000b510]
call fcn.10001040
and eax, 0x3f
push 0x18
push ebp
or esi, dword [eax*4 + 0x1000b310]
call fcn.10001040
and eax, 0x3f
push 8
mov ebp, dword [eax*4 + 0x1000b110]
mov eax, dword [esp + 0x48]
or esi, ebp
mov ebp, dword [eax]
add eax, 4
xor ebp, edi
mov dword [esp + 0x48], eax
mov edx, ebp
push ebp
and edx, 0x3f
or esi, dword [edx*4 + 0x1000b810]
call fcn.10001040
and eax, 0x3f
push 0x10
push ebp
or esi, dword [eax*4 + 0x1000b610]
call fcn.10001040
and eax, 0x3f
push 0x18
push ebp
or esi, dword [eax*4 + 0x1000b410]
call fcn.10001040
and eax, 0x3f
add esp, 0x40
mov eax, dword [eax*4 + 0x1000b210]
push 0x1c
or eax, esi
xor ebx, eax
push ebx
call section..text
push 4
push ebx
mov ebp, eax
call fcn.10001040
or ebp, eax
mov eax, dword [esp + 0x2c]
push 8
mov ecx, dword [eax]
add eax, 4
xor ebp, ecx
mov dword [esp + 0x30], eax
mov ecx, ebp
push ebp
and ecx, 0x3f
mov esi, dword [ecx*4 + 0x1000b710]
call fcn.10001040
and eax, 0x3f
push 0x10
push ebp
or esi, dword [eax*4 + 0x1000b510]
call fcn.10001040
and eax, 0x3f
push 0x18
push ebp
or esi, dword [eax*4 + 0x1000b310]
call fcn.10001040
and eax, 0x3f
push 8
mov ebp, dword [eax*4 + 0x1000b110]
mov eax, dword [esp + 0x48]
or esi, ebp
mov ebp, dword [eax]
add eax, 4
xor ebp, ebx
mov dword [esp + 0x48], eax
mov edx, ebp
push ebp
and edx, 0x3f
or esi, dword [edx*4 + 0x1000b810]
call fcn.10001040
and eax, 0x3f
push 0x10
push ebp
or esi, dword [eax*4 + 0x1000b610]
call fcn.10001040
and eax, 0x3f
push 0x18
push ebp
or esi, dword [eax*4 + 0x1000b410]
call fcn.10001040
and eax, 0x3f
add esp, 0x40
mov eax, dword [eax*4 + 0x1000b210]
or eax, esi
xor edi, eax
mov eax, dword [esp + 0x10]
dec eax
mov dword [esp + 0x10], eax
jne 0x100014ee
push 0x1f
push edi
call section..text
push 1
push edi
mov esi, eax
call fcn.10001040
or esi, eax
push 0x1f
mov eax, esi
xor eax, ebx
and eax, 0xaaaaaaaa
xor ebx, eax
xor esi, eax
push ebx
call section..text
push 1
push ebx
mov edi, eax
call fcn.10001040
or edi, eax
push 8
push edi
call fcn.10001040
xor eax, esi
push 8
and eax, 0xff00ff
push eax
xor esi, eax
call section..text
xor edi, eax
push 2
push edi
call fcn.10001040
xor eax, esi
push 2
and eax, 0x33333333
push eax
xor esi, eax
call section..text
add esp, 0x40
xor edi, eax
push 0x10
push esi
call fcn.10001040
xor eax, edi
push 0x10
and eax, 0xffff
push eax
xor edi, eax
call section..text
xor esi, eax
push 4
push esi
call fcn.10001040
mov ebx, eax
push 4
xor ebx, edi
and ebx, 0xf0f0f0f
push ebx
call section..text
mov ecx, eax
mov eax, dword [esp + 0x38]
add esp, 0x20
xor ecx, esi
xor ebx, edi
mov dword [eax], ecx
pop edi
pop esi
mov dword [eax + 4], ebx
pop ebp
pop ebx
pop ecx
ret