Function at 0x4e4780
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4f4bcc
mov eax, dword fs:[0]
push eax
sub esp, 0x54
mov eax, dword [0x52f098]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x58], esi
mov dword [ebp - 0x60], esi
mov dword [ebp - 0x5c], 0
push 3
mov dword [ebp - 4], 1
call fcn.00452f00
add esp, 4
call fcn.00452c90
mov dword [esi + 0x10], 0
mov edi, eax
mov dword [esi + 0x14], 0
mov dword [esi + 0x14], 0xf
cmp dword [esi + 0x14], 0x10
mov dword [esi + 0x10], 0
jb 0x4e47f8
mov eax, dword [esi]
jmp 0x4e47fa
mov eax, esi
mov byte [eax], 0
mov dword [ebp - 0x5c], 1
test edi, edi
je 0x4e49db
cmp dword [ebp + 0x1c], 0x10
lea eax, [ebp + 8]
cmovae eax, dword [ebp + 8]
push eax
push 0x2712
push edi
call fcn.00457310
add esp, 0xc
call fcn.004e21d0
mov bh, 0x15
mov byte [ebp - 0x14], 0
push eax
mov dl, 0x61
mov byte [ebp - 0x1c], bh
mov dh, 0x71
mov byte [ebp - 0x14], 0
xor dl, bh
xor dh, bh
mov byte [ebp - 0x19], dl
sub esp, 0x18
mov byte [ebp - 0x15], dh
mov al, 0x74
mov edx, esp
mov cl, 0x67
mov bl, 0x6c
mov ah, 0x38
mov ch, 0x30
xor al, bh
xor cl, bh
mov byte [ebp - 0x1b], al
xor bl, bh
mov byte [ebp - 0x1a], cl
xor ah, bh
mov byte [ebp - 0x18], bl
xor ch, bh
mov byte [ebp - 0x17], ah
mov byte [ebp - 0x16], ch
mov dword [edx + 0x14], 0xf
mov dword [edx + 0x10], 0
cmp dword [edx + 0x14], 0x10
jb 0x4e4887
mov eax, dword [edx]
jmp 0x4e4889
mov eax, edx
mov byte [eax], 0
cmp byte [ebp - 0x1b], 0
jne 0x4e4896
xor ecx, ecx
jmp 0x4e48a9
lea ecx, [ebp - 0x1b]
lea ebx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4e48a0
sub ecx, ebx
push ecx
lea eax, [ebp - 0x1b]
mov ecx, edx
push eax
call fcn.00445cb0
lea eax, [ebp - 0x34]
push eax
call fcn.004ed610
mov byte [ebp - 4], 2
lea eax, [ebp - 0x34]
cmp dword [ebp - 0x20], 0x10
cmovae eax, dword [ebp - 0x34]
push eax
push 0x2722
push edi
call fcn.00457310
add esp, 0x2c
push 0
push 0x40
push edi
call fcn.00457310
add esp, 0xc
push 0
push 0x51
push edi
call fcn.00457310
add esp, 0xc
push 0x4e4a10
push 0x4e2b
push edi
call fcn.00457310
add esp, 0xc
push esi
push 0x2711
push edi
call fcn.00457310
add esp, 0xc
push 1
push 0x29
push edi
call fcn.00457310
add esp, 0xc
push edi
call fcn.00452cd0
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x4e49bd
sub esp, 0x18
mov ecx, esp
mov dword [ecx + 0x14], 0xf
mov dword [ecx + 0x10], 0
cmp dword [ecx + 0x14], 0x10
jb 0x4e4955
mov eax, dword [ecx]
jmp 0x4e4957
mov eax, ecx
push 0xffffffffffffffff
mov byte [eax], 0
lea eax, [ebp + 8]
push 0
push eax
call fcn.00445490
call fcn.004eaf50
push ebx
call fcn.00453930
movaps xmm0, xmmword [0x525cf0]
sub esp, 0x14
movups xmmword [ebp - 0x54], xmm0
mov ebx, esp
xor ecx, ecx
movaps xmm0, xmmword [0x525970]
push eax
movups xmmword [ebp - 0x44], xmm0
mov al, byte [ebp - 0x54]
xor byte [ebp + ecx - 0x53], al
inc ecx
cmp ecx, 0x1e
jb 0x4e4990
sub esp, 0x18
mov byte [ebp - 0x35], 0
lea eax, [ebp - 0x53]
mov ecx, esp
push eax
call fcn.00445060
push ebx
call fcn.004ed610
add esp, 0x20
call fcn.004eaf50
push edi
call fcn.00452c50
mov eax, dword [ebp - 0x20]
add esp, 4
cmp eax, 0x10
jb 0x4e49db
inc eax
lea ecx, [ebp - 0x34]
push eax
push dword [ebp - 0x34]
call fcn.00445a30
mov ecx, dword [ebp + 0x1c]
cmp ecx, 0x10
jb 0x4e49f0
inc ecx
push ecx
push dword [ebp + 8]
lea ecx, [ebp + 8]
call fcn.00445a30
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0049e623
mov esp, ebp
pop ebp
ret