Function at 0x4824a0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1458
call fcn.005e09b0
mov eax, dword [0x71de04]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
mov edi, ecx
mov dword [ebp - 0x1448], ebx
lea ecx, [ebp - 0x1440]
mov dword [ebp - 0x144c], edi
xor esi, esi
call fcn.00426050
push 0x400
lea eax, [ebp - 0x404]
push esi
push eax
call fcn.004a0318
mov eax, dword [edi]
add esp, 0xc
mov dword [edi + 4], eax
lea eax, [ebx + 3]
mov dword [ebp - 0x1450], eax
lea eax, [ebx + 2]
mov dword [ebp - 0x1454], eax
lea eax, [ebx + 1]
mov dword [ebp - 0x1458], eax
nop dword [eax]
lea ecx, [ebp - 0x1440]
call fcn.00426050
mov eax, dword [ebp - 0x1450]
mov ecx, dword [ebp - 0x1448]
movzx ebx, byte [eax + esi]
mov eax, dword [ebp - 0x1454]
shl ebx, 8
movzx eax, byte [eax + esi]
or ebx, eax
mov eax, dword [ebp - 0x1458]
shl ebx, 8
movzx eax, byte [eax + esi]
or ebx, eax
movzx eax, byte [ecx + esi]
shl ebx, 8
add esi, 4
or ebx, eax
je 0x482935
mov al, byte [ecx + esi]
cmp al, 0x54
jne 0x482669
mov eax, dword [ecx + esi + 1]
mov edx, 0x54
mov dword [ebp - 0xc10], eax
xor ebx, ebx
mov eax, dword [ecx + esi + 5]
add esi, 9
mov word [ebp - 0x1440], dx
mov dword [ebp - 0xc38], eax
lea edx, [ecx + esi]
mov ecx, dword [ebp - 0xc3c]
inc ecx
mov dword [ebp - 0xc3c], ecx
test eax, eax
jle 0x4825da
lea eax, [ebp - 0x143e]
sub eax, edx
mov dword [ebp - 0x1444], eax
mov edi, eax
nop
mov ax, word [edx]
lea edx, [edx + 2]
mov word [edi + edx - 2], ax
inc ebx
mov ecx, dword [ebp - 0xc3c]
add esi, 2
inc ecx
mov dword [ebp - 0xc3c], ecx
cmp ebx, dword [ebp - 0xc38]
jl 0x4825b0
mov edi, dword [ebp - 0x144c]
test ecx, ecx
je 0x482661
mov ebx, dword [edi + 4]
lea eax, [ebp - 0x1440]
cmp eax, ebx
jae 0x482639
mov eax, dword [edi]
lea ecx, [ebp - 0x1440]
cmp eax, ecx
ja 0x482639
sub ecx, eax
mov eax, 0x7cd49a17
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x1444], eax
cmp ebx, dword [edi + 8]
jne 0x482628
push 1
mov ecx, edi
call fcn.00483cd0
mov eax, dword [ebp - 0x1444]
mov ecx, dword [edi + 4]
test ecx, ecx
je 0x48265a
imul eax, eax, 0x834
add eax, dword [edi]
jmp 0x482654
cmp ebx, dword [edi + 8]
jne 0x482647
push 1
mov ecx, edi
call fcn.00483cd0
mov ecx, dword [edi + 4]
test ecx, ecx
je 0x48265a
lea eax, [ebp - 0x1440]
push eax
call fcn.0041de10
add dword [edi + 4], 0x834
add esi, 4
jmp 0x482935
cmp al, 0x4d
jne 0x48285d
movzx eax, al
mov edi, ecx
mov word [ebp - 0x1440], ax
mov edx, 4
movzx eax, byte [edi + esi + 1]
mov ecx, dword [edi + esi + 3]
mov word [ebp - 0x143e], ax
movzx eax, byte [edi + esi + 2]
add esi, 7
mov word [ebp - 0x143c], ax
mov eax, dword [ebp - 0xc14]
mov dword [ebp + eax*4 - 0xc34], ecx
movzx eax, word [ebp - 0xc14]
inc dword [ebp - 0xc14]
mov word [ebp - 0x143a], ax
mov eax, dword [ebp - 0xc3c]
add eax, edx
mov dword [ebp - 0xc3c], eax
mov cl, byte [edi + esi]
cmp cl, 0x4e
je 0x482762
cmp cl, 0x41
je 0x482762
cmp cl, 0x54
jne 0x4827a7
mov eax, dword [edi + esi + 1]
xor ecx, ecx
mov dword [ebp - 0xc10], eax
mov eax, dword [edi + esi + 5]
add esi, 9
mov dword [ebp - 0xc38], eax
mov eax, 0x54
mov word [ebp + edx*2 - 0x1440], ax
inc edx
mov eax, dword [ebp - 0xc3c]
inc eax
lea ebx, [edi + esi]
mov dword [ebp - 0xc3c], eax
cmp dword [ebp - 0xc38], ecx
jle 0x4826d0
nop dword [eax]
mov ax, word [ebx + ecx*2]
add esi, 2
xor ax, word [ebp - 0xc38]
inc ecx
mov word [ebp + edx*2 - 0x1440], ax
inc edx
mov eax, dword [ebp - 0xc3c]
inc eax
mov dword [ebp - 0xc3c], eax
cmp ecx, dword [ebp - 0xc38]
jl 0x482730
jmp 0x4826d0
movzx eax, cl
mov ecx, dword [edi + esi + 1]
add esi, 5
mov word [ebp + edx*2 - 0x1440], ax
mov eax, dword [ebp - 0xc14]
mov dword [ebp + eax*4 - 0xc34], ecx
mov ax, word [ebp - 0xc14]
mov word [ebp + edx*2 - 0x143e], ax
add edx, 2
mov eax, dword [ebp - 0xc3c]
inc dword [ebp - 0xc14]
add eax, 2
jmp 0x4826ca
mov edi, dword [ebp - 0x144c]
cmp edx, 0x400
jge 0x482951
cmp dword [ebp - 0xc14], 8
jge 0x482951
test eax, eax
je 0x482661
mov ebx, dword [edi + 4]
lea eax, [ebp - 0x1440]
cmp eax, ebx
jae 0x482829
mov eax, dword [edi]
lea ecx, [ebp - 0x1440]
cmp eax, ecx
ja 0x482829
sub ecx, eax
mov eax, 0x7cd49a17
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x1444], eax
cmp ebx, dword [edi + 8]
jne 0x482814
push 1
mov ecx, edi
call fcn.00483cd0
mov eax, dword [ebp - 0x1444]
mov ecx, dword [edi + 4]
test ecx, ecx
je 0x48265a
imul eax, eax, 0x834
add eax, dword [edi]
jmp 0x482848
cmp ebx, dword [edi + 8]
jne 0x482837
push 1
mov ecx, edi
call fcn.00483cd0
mov ecx, dword [edi + 4]
test ecx, ecx
je 0x48265a
lea eax, [ebp - 0x1440]
push eax
call fcn.0041de10
add dword [edi + 4], 0x834
add esi, 4
jmp 0x482935
cmp al, 0x53
jne 0x482935
push 0x400
lea eax, [ebp - 0x404]
push 0
push eax
call fcn.004a0318
add esp, 0xc
inc esi
test ebx, ebx
jle 0x48289b
mov eax, dword [ebp - 0x1448]
add eax, esi
push ebx
push eax
lea eax, [ebp - 0x404]
push eax
call fcn.004a030c
add esp, 0xc
add esi, ebx
push 0x400
lea eax, [ebp - 0x404]
push eax
lea eax, [ebp - 0x1440]
push eax
call fcn.004a030c
mov ebx, dword [edi + 4]
lea eax, [ebp - 0x1440]
add esp, 0xc
cmp eax, ebx
jae 0x48290d
mov eax, dword [edi]
lea ecx, [ebp - 0x1440]
cmp eax, ecx
ja 0x48290d
sub ecx, eax
mov eax, 0x7cd49a17
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x1444], eax
cmp ebx, dword [edi + 8]
jne 0x4828fc
push 1
mov ecx, edi
call fcn.00483cd0
mov eax, dword [ebp - 0x1444]
mov ecx, dword [edi + 4]
test ecx, ecx
je 0x48292e
imul eax, eax, 0x834
add eax, dword [edi]
jmp 0x482928
cmp ebx, dword [edi + 8]
jne 0x48291b
push 1
mov ecx, edi
call fcn.00483cd0
mov ecx, dword [edi + 4]
test ecx, ecx
je 0x48292e
lea eax, [ebp - 0x1440]
push eax
call fcn.0041de10
add dword [edi + 4], 0x834
cmp esi, dword [ebp + 0xc]
jl 0x482510
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.005e0710
mov esp, ebp
pop ebp
ret 0xc
lea eax, [ebp - 0xc0c]
push 0x662c04
push eax
call fcn.0041ddb0
add esp, 8
lea eax, [ebp - 0xc0c]
mov dword [ebp - 0x1444], eax
lea eax, [ebp - 0x1444]
push 0x6c5834
push eax
call fcn.004a0300
int3