Function at 0x44b374
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ecx
push ecx
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
mov esi, dword [eax + 4]
push 0x1d
push dword [eax]
call fcn.0063e738
push 0x1d
push esi
mov dword [ebp - 4], eax
call fcn.0063e738
mov ecx, dword [ebp - 4]
add esp, 0x10
cmp dword [ebp + 0x10], 0
mov dword [ebp - 8], eax
mov eax, dword [ebp + 0xc]
push 0x3f
pop ebx
je 0x44b4e1
add eax, 8
mov dword [ebp + 0x10], 8
mov dword [ebp + 0xc], eax
mov edi, dword [eax - 8]
mov eax, dword [eax - 4]
xor edi, ecx
xor eax, ecx
push 4
push eax
call fcn.0063e738
mov esi, eax
mov eax, edi
mov edx, esi
shr eax, 0x12
shr edx, 0x12
mov ecx, esi
and edx, ebx
shr ecx, 0xa
and ecx, ebx
and eax, ebx
push 4
mov edx, dword [edx*4 + 0x68e5a8]
xor edx, dword [ecx*4 + 0x68e3a8]
mov ecx, esi
shr ecx, 2
and ecx, ebx
shr esi, 0x1a
xor edx, dword [ecx*4 + 0x68e1a8]
xor edx, dword [eax*4 + 0x68e4a8]
mov eax, edi
mov ecx, dword [ebp - 8]
shr eax, 0xa
and eax, ebx
xor edx, dword [eax*4 + 0x68e2a8]
mov eax, edi
shr eax, 2
and eax, ebx
shr edi, 0x1a
xor edx, dword [eax*4 + 0x68e0a8]
mov eax, dword [ebp + 0xc]
xor edx, dword [esi*4 + 0x68e7a8]
xor edx, dword [edi*4 + 0x68e6a8]
xor ecx, edx
mov edi, dword [eax]
mov eax, dword [eax + 4]
xor edi, ecx
xor eax, ecx
mov dword [ebp - 8], ecx
push eax
call fcn.0063e738
mov esi, eax
add esp, 0x10
mov edx, esi
mov ecx, esi
shr edx, 0x12
mov eax, edi
and edx, ebx
shr ecx, 0xa
and ecx, ebx
shr eax, 0x12
and eax, ebx
mov edx, dword [edx*4 + 0x68e5a8]
xor edx, dword [ecx*4 + 0x68e3a8]
mov ecx, esi
shr ecx, 2
and ecx, ebx
shr esi, 0x1a
xor edx, dword [ecx*4 + 0x68e1a8]
xor edx, dword [eax*4 + 0x68e4a8]
mov eax, edi
mov ecx, dword [ebp - 4]
shr eax, 0xa
and eax, ebx
xor edx, dword [eax*4 + 0x68e2a8]
mov eax, edi
shr eax, 2
and eax, ebx
shr edi, 0x1a
xor edx, dword [eax*4 + 0x68e0a8]
xor edx, dword [esi*4 + 0x68e7a8]
xor edx, dword [edi*4 + 0x68e6a8]
mov eax, dword [ebp + 0xc]
xor ecx, edx
mov dword [ebp - 4], ecx
add eax, 0x10
sub dword [ebp + 0x10], 1
mov dword [ebp + 0xc], eax
jne 0x44b3bc
jmp 0x44b60e
add eax, 0x70
mov dword [ebp + 0x10], 8
mov dword [ebp + 0xc], eax
mov edi, dword [eax + 8]
mov eax, dword [eax + 0xc]
xor edi, ecx
xor eax, ecx
push 4
push eax
call fcn.0063e738
mov esi, eax
mov eax, edi
mov edx, esi
shr eax, 0x12
shr edx, 0x12
mov ecx, esi
and edx, ebx
shr ecx, 0xa
and ecx, ebx
and eax, ebx
push 4
mov edx, dword [edx*4 + 0x68e5a8]
xor edx, dword [ecx*4 + 0x68e3a8]
mov ecx, esi
shr ecx, 2
and ecx, ebx
shr esi, 0x1a
xor edx, dword [ecx*4 + 0x68e1a8]
xor edx, dword [eax*4 + 0x68e4a8]
mov eax, edi
mov ecx, dword [ebp - 8]
shr eax, 0xa
and eax, ebx
xor edx, dword [eax*4 + 0x68e2a8]
mov eax, edi
shr eax, 2
and eax, ebx
shr edi, 0x1a
xor edx, dword [eax*4 + 0x68e0a8]
mov eax, dword [ebp + 0xc]
xor edx, dword [esi*4 + 0x68e7a8]
xor edx, dword [edi*4 + 0x68e6a8]
xor ecx, edx
mov edi, dword [eax]
mov eax, dword [eax + 4]
xor edi, ecx
xor eax, ecx
mov dword [ebp - 8], ecx
push eax
call fcn.0063e738
mov esi, eax
add esp, 0x10
mov edx, esi
mov ecx, esi
shr edx, 0x12
mov eax, edi
and edx, ebx
shr ecx, 0xa
and ecx, ebx
shr eax, 0x12
and eax, ebx
mov edx, dword [edx*4 + 0x68e5a8]
xor edx, dword [ecx*4 + 0x68e3a8]
mov ecx, esi
shr ecx, 2
and ecx, ebx
shr esi, 0x1a
xor edx, dword [ecx*4 + 0x68e1a8]
xor edx, dword [eax*4 + 0x68e4a8]
mov eax, edi
mov ecx, dword [ebp - 4]
shr eax, 0xa
and eax, ebx
xor edx, dword [eax*4 + 0x68e2a8]
mov eax, edi
shr eax, 2
and eax, ebx
shr edi, 0x1a
xor edx, dword [eax*4 + 0x68e0a8]
xor edx, dword [esi*4 + 0x68e7a8]
xor edx, dword [edi*4 + 0x68e6a8]
mov eax, dword [ebp + 0xc]
xor ecx, edx
mov dword [ebp - 4], ecx
sub eax, 0x10
sub dword [ebp + 0x10], 1
mov dword [ebp + 0xc], eax
jne 0x44b4ee
mov eax, dword [ebp - 8]
push 3
push eax
call fcn.0063e738
mov esi, dword [ebp + 8]
push 3
mov dword [esi], eax
mov eax, dword [ebp - 4]
push eax
call fcn.0063e738
add esp, 0x10
mov dword [esi + 4], eax
pop edi
pop esi
pop ebx
leave
ret