Function at 0x53ea8a
Capabilities:
Encrypt data using rc4 prga

Disassembly:
add byte [ebx + 0x56], bl
add byte [ebx], ch
inc ebp
cld
shl eax, 2
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [0x565aa4]
lea eax, [edx + ecx*4 + 4]
push eax
mov ecx, dword [ebp - 4]
mov edx, dword [0x565aa4]
lea eax, [edx + ecx*4]
push eax
call fcn.0053f5e0
add esp, 0xc
mov esp, ebp
pop ebp
ret
push ebp
mov ebp, esp
sub esp, 0x2d4
push ebx
push esi
push edi
mov ax, word [0x5627c4]
mov word [ebp - 8], ax
mov cl, byte [0x5627c6]
mov byte [ebp - 6], cl
cmp dword [ebp + 0x10], 0
push esi
add byte [eax + 0x7d83fa4d], cl
adc byte [eax], al
jne 0x53eba4
pushfd
pushal
jmp 0x53eae2
sub edx, edx
jo 0x53eac8
jmp 0x53ead9
xor ecx, ecx
je 0x53eac0
jmp 0x53ead2
stc
xor ecx, 3
je 0x53ea58
jmp 0x53eacf
jmp 0x53eadd
jae 0x53eacb
sbb bl, bl
sbb bl, bl
xor ebx, ebx
jmp 0x53eac2
jmp 0x53eabc
sbb al, 0xdb
jmp 0x53eae5
jmp 0x53eab6
popal
popfd
push 0x2cc
push 0
lea edx, [ebp - 0x2d4]
push edx
call fcn.0053f9d0
add esp, 0xc
pushal
xor eax, eax
jne 0x53eb04
jmp 0x53eb19
jmp 0x53eb39
xor eax, eax
jne 0x53eb21
jp 0x53eb17
jo 0x53eb1b
push cs
jmp 0x53eb1c
jb 0x53eb20
jns 0x53eb05
call dword [0x74097900]
invalid
jns 0x53eb22
je 0x53eb0b
jmp 0x53eaa4
xchg ebx, ebx
jp 0x53eb10
mov al, byte [0x85c76133]
sub al, 0xfd
invalid
xor esp, dword [ecx - 0x39]
test dword [edi*8 + 0x1ffff], ebp
add dword [eax], eax
popal
mov dword [ebp - 0x2d4], 0x10001
pushal
xor eax, eax
jne 0x53eb34
jmp 0x53eb49
jmp 0x53eb69
xor eax, eax
jne 0x53eb51
jp 0x53eb47
jo 0x53eb4b
jmp 0x53eb4c
jb 0x53eb50
jns 0x53eb35
call dword [0x74097900]
invalid
jns 0x53eb52
je 0x53eb3b
jmp 0x53ead4
xchg ebx, ebx
jp 0x53eb40
mov al, byte [0x858d6133]
sub al, 0xfd
invalid
xor esp, dword [ecx - 0x73]
test dword [edi*8 - 0x74af0001], ebp
dec ebp
or byte [ebx - 0xadfbaf], cl
adc eax, sym.imp.KERNEL32.dll_GetThreadContext
popal
lea eax, [ebp - 0x2d4]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetThreadContext]
pushfd
pushal
jmp 0x53eb96
sub edx, edx
jo 0x53eb7c
jmp 0x53eb8d
xor ecx, ecx
je 0x53eb74
jmp 0x53eb86
stc
xor ecx, 3
je 0x53eb0c
jmp 0x53eb83
jmp 0x53eb91
jae 0x53eb7f
sbb bl, bl
sbb bl, bl
xor ebx, ebx
jmp 0x53eb76
jmp 0x53eb70
sbb al, 0xdb
jmp 0x53eb99
jmp 0x53eb6a
popal
popfd
mov eax, dword [ebp - 0x21c]
mov dword [ebp + 0x10], eax
mov ecx, dword [ebp + 0xc]
and ecx, 0xff
test ecx, ecx
je 0x53ec46
lea edx, [ebp - 4]
push edx
push 2
push 0x565aa8
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
push edx
call dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
pushal
xor eax, eax
jne 0x53ebd7
jmp 0x53ebec
jmp 0x53ec0c
xor eax, eax
jne 0x53ebf4
jp 0x53ebea
jo 0x53ebee
jmp 0x53ebef
jb 0x53ebf3
jns 0x53ebd8
call dword [0x74097900]
invalid
jns 0x53ebf5
je 0x53ebde
jmp 0x53eb77
xchg ebx, ebx
jp 0x53ebe3
mov al, byte [0x458d6133]
xor esp, dword [ecx - 0x73]
inc ebp
popal
lea eax, [ebp - 4]
cld
push eax
push 2
lea ecx, [ebp - 8]
push ecx
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
push ecx
call dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
or byte [ebx + 0x15ff5108], cl
pop esp
and dword [esi], edx
pushfd
pushal
jmp 0x53ec3f
sub edx, edx
jo 0x53ec25
jmp 0x53ec36
xor ecx, ecx
je 0x53ec1d
jmp 0x53ec2f
stc
xor ecx, 3
je 0x53ebb5
jmp 0x53ec2c
jmp 0x53ec3a
jae 0x53ec28
sbb bl, bl
sbb bl, bl
xor ebx, ebx
jmp 0x53ec1f
jmp 0x53ec19
sbb al, 0xdb
jmp 0x53ec42
jmp 0x53ec13
popal
popfd
jmp 0x53ec95
lea edx, [ebp - 4]
push edx
push 2
push 0x565aa8
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
push edx
call dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
pushfd
pushal
jmp 0x53ec90
sub edx, edx
jo 0x53ec76
jmp 0x53ec87
xor ecx, ecx
je 0x53ec6e
jmp 0x53ec80
stc
xor ecx, 3
je 0x53ec06
jmp 0x53ec7d
jmp 0x53ec8b
jae 0x53ec79
sbb bl, bl
sbb bl, bl
xor ebx, ebx
jmp 0x53ec70
jmp 0x53ec6a
sbb al, 0xdb
jmp 0x53ec93
jmp 0x53ec64
popal
popfd
mov al, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret