Function at 0x54c6b0
Capabilities:
Encrypt data using rc4 prga
Resolve function by parsing pe exports

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xe0
mov dword [esp + 0xc], ecx
mov eax, dword [0x87aa4c]
xor eax, esp
mov dword [esp + 0xdc], eax
call fcn.0054e770
mov edx, dword [0x85184c]
mov ecx, dword [0x8517d4]
mov ebp, 0xffff8e98
sub ebp, eax
sub ecx, ebp
add ecx, edx
call dword [0x834360]
call ecx
mov edi, eax
mov dword [esp + 8], eax
mov eax, dword [0x851834]
mov ecx, dword [0x851764]
sub ecx, ebp
add ecx, eax
call dword [0x834360]
lea eax, [esp + 0xd8]
lea edx, [esp + 0xd0]
lea esi, [esp + 0xcc]
lea ebx, [esp + 0xc4]
push 0xa28ca77d
push eax
push edx
push esi
push ebx
mov ebx, dword [esp + 0x20]
push ebx
push dword [esp + 0x10c]
push edi
call ecx
add esp, 0x20
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x6c], eax
mov edi, dword [esp + 0xcc]
mov dword [esp + 0x24], edi
mov eax, dword [esp + 0xd0]
mov dword [esp + 4], eax
mov esi, dword [esp + 0xd8]
mov eax, dword [0x851804]
mov ecx, dword [0x8517b4]
sub ecx, ebp
add ecx, eax
call dword [0x834360]
lea eax, [esp + 0xd4]
push 0xb06877bf
push eax
lea eax, [esp + 0xd4]
push eax
lea eax, [esp + 0xd0]
push eax
push edi
push ebx
mov edi, dword [esp + 0x20]
push edi
mov dword [esp + 0x84], esi
push esi
push dword [esp + 0x24]
call ecx
add esp, 0x24
mov ebx, dword [esp + 0xc4]
mov esi, dword [esp + 0xcc]
mov eax, dword [esp + 0xd4]
mov dword [esp + 4], eax
mov eax, dword [0x851848]
mov ecx, dword [0x85178c]
sub ecx, ebp
add ecx, eax
call dword [0x834360]
push 0xdd0bd419
lea eax, [esp + 0xd8]
push eax
lea eax, [esp + 0xd4]
push eax
push edi
mov dword [esp + 0x38], ebx
push ebx
push dword [esp + 0x18]
push dword [esp + 0x24]
call ecx
add esp, 0x1c
mov eax, dword [esp + 0xcc]
mov dword [esp + 4], eax
mov ebx, dword [esp + 0xd4]
mov eax, dword [0x851830]
mov ecx, dword [0x851780]
mov dword [esp], ebp
sub ecx, ebp
add ecx, eax
call dword [0x834360]
push 0xd0124a3e
mov dword [esp + 0x30], esi
push esi
mov esi, dword [esp + 0x2c]
push edi
push ebx
push dword [esp + 0x14]
call ecx
add esp, 0x14
test al, 1
je 0x54c8c1
mov eax, dword [0x85186c]
mov ecx, dword [0x8517cc]
sub ecx, dword [esp]
add ecx, eax
call dword [0x834360]
lea eax, [esp + 0xcb]
push 0x1fb3c649
lea edx, [esp + 0xd8]
push edx
push eax
push esi
push edi
call ecx
add esp, 0x14
cmp byte [esp + 0xcb], 0
jne 0x54d0f7
test byte [esp + 0xd4], 1
jne 0x54d0f7
mov eax, dword [0x851820]
mov ebx, dword [0x8517e0]
sub ebx, dword [esp]
add ebx, eax
mov ecx, ebx
call dword [0x834360]
mov ecx, dword [esp + 0x28]
push dword [esp + 0x2c]
call ebx
mov eax, dword [0x851838]
mov ecx, dword [0x8517d8]
sub ecx, dword [esp]
add ecx, eax
call dword [0x834360]
push 0xcc3da83a
push esi
push edi
call ecx
add esp, 0xc
mov cl, 1
mov dword [esp + 0x14], ecx
test al, 1
lea ebx, [esp + 0xcc]
jne 0x54d0d3
mov eax, dword [0x851870]
mov ecx, dword [0x8517a8]
mov ebp, dword [esp]
sub ecx, ebp
add ecx, eax
call dword [0x834360]
push 0x7efc08b1
push ebx
lea eax, [esp + 0xcc]
push eax
push dword [esp + 0x18]
push dword [esp + 0x18]
call ecx
add esp, 0x14
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x64], eax
mov esi, dword [esp + 0xcc]
mov eax, dword [0x8517f0]
mov ecx, dword [0x85177c]
sub ecx, ebp
add ecx, eax
call dword [0x834360]
lea eax, [esp + 0x98]
push 0xc05ed27f
push ebx
lea edi, [esp + 0xd8]
push edi
lea edx, [esp + 0xd0]
push edx
push dword [esp + 0x18]
push esi
push eax
call ecx
add esp, 0x1c
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x5c], eax
mov esi, dword [esp + 0xcc]
mov eax, dword [0x851828]
mov ecx, dword [0x8517b0]
mov dword [0x851900], 0x37f0ead0
sub ecx, ebp
add ecx, eax
call dword [0x834360]
push 0xb1c7a504
lea ebx, [esp + 0xdc]
push ebx
push edi
mov ebx, edi
lea edi, [esp + 0xd0]
push edi
push dword [esp + 0x18]
push esi
lea esi, [esp + 0xb0]
push esi
call ecx
add esp, 0x1c
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0xd8]
mov dword [esp + 0x50], eax
mov eax, dword [0x851818]
mov ecx, dword [0x8517ac]
sub ecx, ebp
add ecx, eax
call dword [0x834360]
push 0x2af5ffd6
lea eax, [esp + 0xd0]
push eax
push ebx
push edi
push esi
push dword [esp + 0x1c]
call ecx
add esp, 0x18
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x48], eax
mov esi, dword [esp + 0xcc]
mov eax, dword [0x8517f4]
mov ecx, dword [0x851760]
sub ecx, ebp
add ecx, eax
call dword [0x834360]
push 0xebaa85c5
lea eax, [esp + 0xdc]
push eax
lea edi, [esp + 0xd8]
push edi
lea ebx, [esp + 0xd0]
push ebx
push dword [esp + 0x18]
push esi
lea eax, [esp + 0xb0]
push eax
call ecx
add esp, 0x1c
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0xd8]
mov dword [esp + 0x3c], eax
mov eax, dword [0x851860]
mov ecx, dword [0x8517a4]
sub ecx, ebp
lea esi, [esp + 0xcc]
add ecx, eax
call dword [0x834360]
push 0xc6e68d93
push edi
push ebx
push dword [esp + 0x18]
mov edi, dword [esp + 0x18]
push edi
call ecx
add esp, 0x14
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x34], eax
mov eax, edi
xor eax, 0x8565c388
mov dword [esp + 0x30], eax
mov dword [esp + 0x14], 0
xor ebx, ebx
nop dword [eax]
mov ebp, dword [esp]
mov eax, dword [0x851844]
mov ecx, dword [0x851784]
sub ecx, ebp
add ecx, eax
call dword [0x834360]
push 0x34699ddf
push esi
lea eax, [esp + 0xd8]
push eax
lea eax, [esp + 0xd0]
push eax
push edi
push dword [esp + 0x7c]
mov dword [esp + 0x3c], ebx
push ebx
push dword [esp + 0x88]
call ecx
add esp, 0x20
mov edi, dword [esp + 0xc4]
mov ebx, dword [esp + 0xd0]
mov esi, dword [esp + 0xcc]
mov eax, dword [0x85185c]
mov ecx, dword [0x851788]
sub ecx, ebp
add ecx, eax
call dword [0x834360]
push 0x73eb5649
lea ebp, [esp + 0xd4]
push ebp
lea eax, [esp + 0xcc]
push eax
push dword [esp + 0x18]
push ebx
push esi
push edi
call ecx
add esp, 0x1c
mov eax, dword [esp + 0xc4]
mov dword [esp + 4], eax
mov ebx, dword [esp + 0xd0]
mov eax, dword [esp + 0x64]
add ebx, dword [eax]
mov eax, dword [edi]
mov dword [esp + 0x94], eax
mov eax, dword [0x851850]
mov ecx, dword [0x851774]
sub ecx, dword [esp]
add ecx, eax
call dword [0x834360]
push 0x9f74baec
push ebp
lea ebp, [esp + 0xd4]
push ebp
lea esi, [esp + 0xd7]
push esi
lea eax, [esp + 0xd4]
push eax
push ebx
mov edi, dword [esp + 0x20]
push edi
push dword [esp + 0x20]
call ecx
add esp, 0x20
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x18], eax
movzx eax, byte [esp + 0xcb]
mov byte [esp + 4], al
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x20], eax
mov eax, dword [0x85180c]
mov ecx, dword [0x851778]
sub ecx, dword [esp]
add ecx, eax
call dword [0x834360]
push 0x9eb7fab
lea eax, [esp + 0xdc]
push eax
lea eax, [esp + 0xdc]
push eax
lea eax, [esp + 0xdc]
push eax
push ebp
push esi
lea eax, [esp + 0xdc]
push eax
push ebx
push edi
push dword [esp + 0x44]
call ecx
add esp, 0x28
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x90], eax
movzx eax, byte [esp + 0xcb]
mov byte [esp + 0x20], al
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x1c], eax
mov edi, dword [esp + 0xd4]
mov eax, dword [esp + 0xd8]
mov dword [esp + 0x10], eax
mov eax, dword [0x851868]
mov ecx, dword [0x8517c8]
sub ecx, dword [esp]
add ecx, eax
call dword [0x834360]
push 0xe3a4f46d
lea eax, [esp + 0xd8]
push eax
lea eax, [esp + 0xd8]
push eax
push ebp
mov esi, ebp
lea ebp, [esp + 0xdb]
push ebp
lea eax, [esp + 0xd8]
push eax
push ebx
mov dword [esp + 0x8c], ebx
push edi
push dword [esp + 0x30]
push dword [esp + 0x40]
call ecx
add esp, 0x28
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x7c], eax
movzx eax, byte [esp + 0xcb]
mov byte [esp + 0x1c], al
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x10], eax
mov edi, dword [esp + 0xd4]
mov eax, dword [0x85181c]
mov ecx, dword [0x851790]
sub ecx, dword [esp]
add ecx, eax
call dword [0x834360]
push 0x70df6cf5
lea eax, [esp + 0xd4]
push eax
push esi
push ebp
lea ebp, [esp + 0xd4]
push ebp
push ebx
push edi
push dword [esp + 0x2c]
push dword [esp + 0x28]
call ecx
add esp, 0x24
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x84], eax
movzx eax, byte [esp + 0xcb]
mov byte [esp + 0x10], al
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x80], eax
mov esi, dword [esp + 0xd0]
mov eax, dword [0x85182c]
mov ecx, dword [0x8517b8]
sub ecx, dword [esp]
add ecx, eax
call dword [0x834360]
push 0xb10fe7fa
lea eax, [esp + 0xd4]
push eax
lea edi, [esp + 0xd4]
push edi
push ebp
push esi
call ecx
add esp, 0x14
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x74], eax
mov esi, dword [esp + 0xcc]
mov ebx, dword [esp + 0xd0]
mov eax, dword [0x851864]
mov ecx, dword [0x851770]
sub ecx, dword [esp]
add ecx, eax
call dword [0x834360]
push 0xd4c9a9c7
push edi
lea eax, [esp + 0xd3]
push eax
push dword [esp + 0x6c]
push dword [esp + 0x98]
lea eax, [esp + 0xac]
push eax
push dword [esp + 0x30]
push esi
push dword [esp + 0x90]
push ebx
call ecx
add esp, 0x28
movzx eax, byte [esp + 0xcb]
mov byte [esp + 0x18], al
mov ebp, dword [esp + 0xcc]
mov eax, dword [0x851858]
mov ecx, dword [0x8517dc]
sub ecx, dword [esp]
add ecx, eax
call dword [0x834360]
push 0xf43ce0ab
push dword [esp + 0x54]
push dword [esp + 0x80]
push dword [esp + 0x60]
push dword [esp + 0x8c]
push dword [esp + 0x6c]
push dword [esp + 0xa4]
push dword [esp + 0x78]
push dword [esp + 0xb0]
call ecx
add esp, 0x24
mov eax, dword [0x8517fc]
mov ecx, dword [0x8517c4]
sub ecx, dword [esp]
add ecx, eax
call dword [0x834360]
push 0x916b60d8
push dword [esp + 0x40]
push dword [esp + 0x9c]
push dword [esp + 0x4c]
push ebp
push dword [esp + 0x58]
push dword [esp + 0x8c]
push dword [esp + 0x64]
push dword [esp + 0xa0]
push dword [esp + 0x70]
push dword [esp + 0xac]
call ecx
add esp, 0x2c
mov eax, dword [0x851808]
mov ecx, dword [0x851768]
sub ecx, dword [esp]
add ecx, eax
call dword [0x834360]
push 0x8f5985bd
lea eax, [esp + 0xc8]
push eax
push dword [esp + 0x3c]
mov esi, dword [esp + 0x44]
push esi
call ecx
add esp, 0x10
mov edi, dword [esp + 0xc4]
test al, 1
je 0x54cf60
mov eax, dword [0x8517f8]
mov ebp, dword [0x85176c]
sub ebp, dword [esp]
add ebp, eax
mov ecx, ebp
call dword [0x834360]
mov ecx, dword [esp + 0x28]
lea eax, [esp + 0x98]
push eax
push edi
call ebp
jmp 0x54cfae
mov eax, dword [0x85183c]
mov ecx, dword [0x85179c]
mov ebx, dword [esp]
sub ecx, ebx
add ecx, eax
call dword [0x834360]
push dword [esp + 0x30]
lea eax, [esp + 0x9c]
push eax
push edi
call ecx
add esp, 0xc
mov eax, dword [0x851814]
mov ecx, dword [0x8517d0]
sub ecx, ebx
add ecx, eax
call dword [0x834360]
push 0x117ca321
push dword [esp + 0xc]
push esi
call ecx
add esp, 0xc
mov eax, dword [0x851854]
mov ecx, dword [0x851794]
mov ebp, dword [esp]
sub ecx, ebp
add ecx, eax
call dword [0x834360]
movzx eax, byte [esp + 0x20]
movzx edx, byte [esp + 4]
push 0x79e6b231
lea esi, [esp + 0xdc]
push esi
lea esi, [esp + 0xdc]
push esi
lea edi, [esp + 0xd7]
push edi
push eax
push edx
call ecx
add esp, 0x18
movzx eax, byte [esp + 0xcb]
mov dword [esp + 4], eax
movzx esi, byte [esp + 0xd4]
movzx ebx, byte [esp + 0xd8]
mov eax, dword [0x851840]
mov ecx, dword [0x851798]
sub ecx, ebp
add ecx, eax
call dword [0x834360]
movzx eax, byte [esp + 0x1c]
push 0x4ce730ea
push edi
push eax
push ebx
push esi
push dword [esp + 0x18]
call ecx
add esp, 0x18
movzx esi, byte [esp + 0xcb]
mov eax, dword [0x851824]
mov ecx, dword [0x8517c0]
sub ecx, ebp
add ecx, eax
call dword [0x834360]
movzx eax, byte [esp + 0x18]
movzx edx, byte [esp + 0x10]
push 0x47dd59f7
push edi
push eax
push edx
push esi
call ecx
add esp, 0x14
cmp byte [esp + 0xcb], 1
mov edi, dword [esp + 8]
lea esi, [esp + 0xcc]
mov ebx, dword [esp + 0x24]
je 0x54d0d3
mov eax, dword [0x851810]
mov ecx, dword [0x8517a0]
sub ecx, dword [esp]
add ecx, eax
call dword [0x834360]
push 0x7f453907
lea eax, [esp + 0xcf]
push eax
push esi
push dword [esp + 0x38]
push ebx
call ecx
add esp, 0x14
mov ebx, dword [esp + 0xcc]
movzx ecx, byte [esp + 0xcb]
mov dword [esp + 0x14], ecx
test al, 1
je 0x54cb10
mov ebx, dword [esp + 0x14]
and bl, 1
mov ecx, dword [esp + 0xdc]
xor ecx, esp
call fcn.00719989
mov eax, ebx
add esp, 0xe0
pop esi
pop edi
pop ebx
pop ebp
ret 4
mov eax, dword [0x851800]
mov ecx, dword [0x8517bc]
sub ecx, dword [esp]
add ecx, eax
call dword [0x834360]
call ecx
int3