Function at 0x488dc0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x108
mov dword [esp - 0x18], ecx
mov eax, dword [0x4ba460]
xor eax, 0x44ea390e
mov dword [ebp - 0x48], eax
mov eax, dword [0x4ba464]
xchg ebp, ebp
xor eax, 0x44ea390e
mov dword [ebp - 0x44], eax
mov eax, dword [0x4ba468]
xor eax, 0x44ea390e
xchg ecx, ecx
mov dword [ebp - 0x40], eax
mov eax, dword [0x4ba46c]
xor eax, 0x44ea390e
mov edi, edi
mov dword [ebp - 0x3c], eax
mov eax, dword [0x4ba470]
xor eax, 0x44ea390e
mov dword [ebp - 0x38], eax
xchg edi, edi
mov eax, dword [0x4ba474]
xor eax, 0x44ea390e
mov dword [ebp - 0x34], eax
xchg esi, esi
mov eax, dword [0x4ba478]
xor eax, 0x44ea390e
mov dword [ebp - 0x30], eax
mov eax, dword [0x4ba47c]
mov esp, esp
xor eax, 0x44ea390e
mov dword [ebp - 0x2c], eax
mov eax, dword [0x4ba480]
mov edx, edx
xor eax, 0x44ea390e
mov dword [ebp - 0x28], eax
mov eax, dword [0x4ba484]
mov dword [esp - 0x38], ecx
xor eax, 0x44ea390e
mov dword [ebp - 0x24], eax
mov eax, dword [0x4ba488]
mov dword [esp - 0x18], ecx
xor eax, 0x44ea390e
mov dword [ebp - 0x20], eax
mov eax, dword [0x4ba48c]
xor eax, 0x44ea390e
xchg ebp, ebp
mov dword [ebp - 0x1c], eax
mov eax, dword [0x4ba490]
xor eax, 0x44ea390e
xchg edx, edx
mov dword [ebp - 0x18], eax
mov eax, dword [0x4ba494]
xor eax, 0x44ea390e
mov dword [esp - 0x30], esp
mov dword [ebp - 0x14], eax
mov eax, dword [0x4ba498]
xor eax, 0x44ea390e
mov dword [ebp - 0x10], eax
mov dword [esp - 0x24], esi
mov eax, dword [0x4ba49c]
xor eax, 0x44ea390e
mov dword [ebp - 0xc], eax
mov dword [esp - 0x1c], esi
mov eax, dword [0x4ba420]
xor eax, 0x44ea390e
mov dword [ebp - 0x88], eax
mov dword [esp - 0x28], 0x406e34e2
mov eax, dword [0x4ba424]
xor eax, 0x44ea390e
mov dword [ebp - 0x84], eax
mov edi, edi
mov eax, dword [0x4ba428]
xor eax, 0x44ea390e
mov dword [ebp - 0x80], eax
mov eax, dword [0x4ba42c]
mov dword [esp - 0x20], ebx
xor eax, 0x44ea390e
mov dword [ebp - 0x7c], eax
mov eax, dword [0x4ba430]
xor eax, 0x44ea390e
xchg ecx, ecx
mov dword [ebp - 0x78], eax
mov eax, dword [0x4ba434]
xor eax, 0x44ea390e
mov dword [esp - 0x14], 0x234bff50
mov dword [ebp - 0x74], eax
mov eax, dword [0x4ba438]
xor eax, 0x44ea390e
xchg ebx, ebx
mov dword [ebp - 0x70], eax
mov eax, dword [0x4ba43c]
xor eax, 0x44ea390e
mov dword [esp - 0x34], edx
mov dword [ebp - 0x6c], eax
mov eax, dword [0x4ba440]
xor eax, 0x44ea390e
mov dword [esp - 0x28], esi
mov dword [ebp - 0x68], eax
mov eax, dword [0x4ba444]
xor eax, 0x44ea390e
mov dword [ebp - 0x64], eax
mov dword [esp - 0x3c], 0x61a4d512
mov eax, dword [0x4ba448]
xor eax, 0x44ea390e
mov dword [ebp - 0x60], eax
mov eax, dword [0x4ba44c]
mov esi, esi
xor eax, 0x44ea390e
mov dword [ebp - 0x5c], eax
mov eax, dword [0x4ba450]
xor eax, 0x44ea390e
mov dword [esp - 0x1c], 0x692b9fd8
mov dword [ebp - 0x58], eax
mov eax, dword [0x4ba454]
xor eax, 0x44ea390e
mov dword [ebp - 0x54], eax
mov dword [esp - 0x2c], ebp
mov eax, dword [0x4ba458]
xor eax, 0x44ea390e
mov dword [ebp - 0x50], eax
mov eax, dword [0x4ba45c]
mov dword [esp - 0x20], esp
xor eax, 0x44ea390e
xor ecx, ecx
mov dword [ebp - 0x4c], eax
mov ecx, ecx
mov eax, dword [ecx + 0x4ba4a0]
xor eax, 0x44ea390e
mov dword [ebp + ecx - 0x108], eax
add ecx, 4
mov dword [esp - 0x28], 0x8f3619c
cmp ecx, 0x80
jb 0x488fd9
push ebx
push esi
mov dword [esp - 0x10], 0x33fe2e17
push edi
xor edi, edi
mov eax, edi
mov dword [esp - 0x44], edi
mov ecx, edi
shr eax, 1
movzx edx, al
mov ebx, ebx
mov eax, edi
shr ecx, 8
and eax, 1
mov edx, edx
and ecx, 2
mov dword [ebp - 8], edx
or ecx, eax
mov dword [esp - 0x3c], ebx
lea ebx, [ecx*4]
mov eax, dword [ebp + ebx - 0x48]
xor eax, edx
mov dword [ebp - 4], eax
mov dword [esp - 0x20], ecx
jne 0x48904a
xor edx, edx
jmp 0x4890c1
mov esi, dword [ebp + ebx - 0x88]
push esi
mov dword [esp - 0x14], 0x10dce81a
push esi
push eax
push eax
call fcn.00488d50
mov dword [esp - 0x1c], 0x174c53a2
add esp, 0xc
push eax
push dword [ebp - 4]
xchg ebp, ebp
call fcn.00488d50
add esp, 0xc
push esi
push esi
mov esi, esi
push eax
push eax
call fcn.00488d50
add esp, 0xc
xchg edx, edx
push eax
push dword [ebp - 4]
call fcn.00488d50
xchg edx, edx
shl eax, 0x18
lea ecx, [ebp - 0x108]
add esp, 0xc
xchg ebx, ebx
xor edx, edx
test eax, eax
je 0x4890c1
test al, 1
xchg esi, esi
je 0x4890b2
or edx, dword [ecx]
add ecx, 4
shr eax, 1
mov dword [esp - 0x10], 0x59727c31
jne 0x4890aa
mov eax, dword [ebp + ebx - 0x38]
xor edx, 0x44ea390e
xor eax, dword [ebp - 8]
xchg ebp, ebp
mov dword [edi*4 + 0x4bb5a8], edx
mov dword [ebp - 4], eax
jne 0x4890e8
mov dword [esp - 0x28], 0x1c4ae2c0
xor edx, edx
jmp 0x489154
mov esi, dword [ebp + ebx - 0x78]
push esi
push esi
push eax
xchg edi, edi
push eax
call fcn.00488d50
add esp, 0xc
xchg edi, edi
push eax
push dword [ebp - 4]
call fcn.00488d50
add esp, 0xc
mov dword [esp - 0x30], edi
push esi
push esi
push eax
xchg ebp, ebp
push eax
call fcn.00488d50
add esp, 0xc
push eax
mov dword [esp - 0x14], 0x1abd1b8f
push dword [ebp - 4]
call fcn.00488d50
shl eax, 0x10
lea ecx, [ebp - 0x108]
xchg edi, edi
add esp, 0xc
xor edx, edx
test eax, eax
je 0x489154
mov edx, edx
test al, 1
je 0x48914b
or edx, dword [ecx]
mov dword [esp - 0x20], esi
add ecx, 4
shr eax, 1
jne 0x489141
xchg ecx, ecx
mov eax, dword [ebp + ebx - 0x28]
xor edx, 0x44ea390e
xor eax, dword [ebp - 8]
xchg ebx, ebx
mov dword [edi*4 + 0x4bc5a8], edx
mov dword [ebp - 4], eax
jne 0x489175
xor edx, edx
mov edx, edx
jmp 0x4891df
mov esi, dword [ebp + ebx - 0x68]
push esi
push esi
push eax
xchg edi, edi
push eax
call fcn.00488d50
add esp, 0xc
push eax
xchg edi, edi
push dword [ebp - 4]
call fcn.00488d50
add esp, 0xc
mov dword [esp - 0x2c], 0x2e414843
push esi
push esi
push eax
push eax
mov dword [esp - 0x38], edi
call fcn.00488d50
add esp, 0xc
push eax
push dword [ebp - 4]
mov ebp, ebp
call fcn.00488d50
shl eax, 8
lea ecx, [ebp - 0x108]
add esp, 0xc
mov edi, edi
xor edx, edx
test eax, eax
je 0x4891df
mov edx, edx
test al, 1
je 0x4891d4
or edx, dword [ecx]
add ecx, 4
mov dword [esp - 0x1c], ecx
shr eax, 1
jne 0x4891ce
mov eax, dword [ebp + ebx - 0x18]
mov dword [esp - 0x24], 0x6a4c50a2
xor edx, 0x44ea390e
xor eax, dword [ebp - 8]
mov dword [edi*4 + 0x4bd5a8], edx
mov dword [ebp - 4], eax
xchg ebx, ebx
jne 0x489206
xor ecx, ecx
jmp 0x489279
mov esi, dword [ebp + ebx - 0x58]
push esi
push esi
mov dword [esp - 0x2c], ebx
push eax
push eax
call fcn.00488d50
mov ebx, dword [ebp - 4]
mov dword [esp - 0xc], 0x13cc9a73
add esp, 0xc
push eax
push ebx
mov dword [esp - 0x1c], ebx
call fcn.00488d50
add esp, 0xc
push esi
push esi
mov dword [esp - 0xc], 0x9a484c0
push eax
push eax
call fcn.00488d50
xchg ecx, ecx
add esp, 0xc
push eax
push ebx
call fcn.00488d50
mov dword [esp - 0x3c], esi
add esp, 0xc
lea edx, [ebp - 0x108]
xor ecx, ecx
test eax, eax
mov esp, esp
je 0x489279
jmp 0x48926a
test al, 1
je 0x489270
or ecx, dword [edx]
add edx, 4
xchg edx, edx
shr eax, 1
jne 0x48926a
xor ecx, 0x44ea390e
mov dword [esp - 0x40], edi
mov dword [edi*4 + 0x4be5a8], ecx
inc edi
cmp edi, 0x400
mov dword [esp - 0x20], 0x367b336
jl 0x48900b
pop edi
pop esi
mov edi, edi
pop ebx
mov esp, ebp
pop ebp
ret