Function at 0x1005ff00
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
mov ebx, 0x7a
mov esi, dword [edi]
movsx eax, byte [esi]
cmp eax, 0x7f
cmova eax, ebx
cmp byte [eax + 0x1023f9b0], 0
je 0x1005ff28
inc esi
jmp 0x1005ff13
mov dword [edi], esi
mov ecx, esi
mov dword [ebp + 8], ecx
nop
mov dl, byte [esi]
movsx eax, dl
cmp eax, 0x7f
cmova eax, ebx
cmp byte [eax + 0x1023f8b0], 0
je 0x100600bb
cmp dl, 0x26
jne case.0x1005ff68.36
movsx eax, byte [esi + 1]
add eax, 0xffffffdd
cmp eax, 0x4e
ja case.0x1005ff68.36
movzx eax, byte [eax + 0x10060108]
jmp dword [eax*4 + 0x100600f0]
mov al, byte [esi + 2]
cmp al, 0x6d
jne 0x1005ff8b
cmp byte [esi + 3], 0x70
jne 0x1005ff8b
cmp byte [esi + 4], 0x3b
jne 0x1005ff8b
mov byte [ecx], 0x26
inc ecx
add esi, 5
jmp 0x1005ff2c
cmp al, 0x70
jne case.0x1005ff68.36
cmp byte [esi + 3], 0x6f
jne case.0x1005ff68.36
cmp byte [esi + 4], 0x73
jne case.0x1005ff68.36
cmp byte [esi + 5], 0x3b
jne case.0x1005ff68.36
mov byte [ecx], 0x27
inc ecx
add esi, 6
jmp 0x1005ff2c
cmp byte [esi + 2], 0x75
jne case.0x1005ff68.36
cmp byte [esi + 3], 0x6f
jne case.0x1005ff68.36
cmp byte [esi + 4], 0x74
jne case.0x1005ff68.36
cmp byte [esi + 5], 0x3b
jne case.0x1005ff68.36
mov byte [ecx], 0x22
inc ecx
add esi, 6
jmp 0x1005ff2c
cmp byte [esi + 2], 0x74
jne case.0x1005ff68.36
cmp byte [esi + 3], 0x3b
jne case.0x1005ff68.36
mov byte [ecx], 0x3e
inc ecx
add esi, 4
jmp 0x1005ff2c
cmp byte [esi + 2], 0x74
jne case.0x1005ff68.36
cmp byte [esi + 3], 0x3b
jne case.0x1005ff68.36
mov byte [ecx], 0x3c
inc ecx
add esi, 4
jmp 0x1005ff2c
xor ecx, ecx
cmp byte [esi + 2], 0x78
jne 0x10060068
movzx eax, byte [esi + 3]
add esi, 3
mov al, byte [eax + 0x1023fcb0]
cmp al, 0xff
je 0x10060097
nop word [eax + eax]
inc esi
movzx eax, al
shl ecx, 4
add ecx, eax
movzx eax, byte [esi]
mov al, byte [eax + 0x1023fcb0]
cmp al, 0xff
jne 0x10060050
jmp 0x10060097
movzx eax, byte [esi + 2]
add esi, 2
mov al, byte [eax + 0x1023fcb0]
cmp al, 0xff
je 0x10060097
nop dword [eax]
movzx eax, al
lea ecx, [ecx + ecx*4]
inc esi
lea ecx, [eax + ecx*2]
movzx eax, byte [esi]
mov al, byte [eax + 0x1023fcb0]
cmp al, 0xff
jne 0x10060080
push ecx
lea eax, [ebp + 8]
push eax
call fcn.1005cf30
add esp, 8
cmp byte [esi], 0x3b
jne 0x100600c6
mov ecx, dword [ebp + 8]
inc esi
jmp 0x1005ff30
mov byte [ecx], dl
inc ecx
inc esi
jmp 0x1005ff2c
mov dword [edi], esi
mov eax, ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x102a26f8
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], vtable.boost::property_tree::detail::rapidxml::parse_error.0
xorps xmm0, xmm0
mov dword [ebp - 8], str.expected__
push eax
movq qword [ebp - 0x10], xmm0
mov dword [ebp - 4], esi
call fcn.101d0d4e
nop dword [eax]
xor dword [eax], eax
push es
adc byte [edi - 1], ch
add eax, 0x5fff110
adc byte [ecx], dl
add byte [esi], al
adc byte [ebp - 0x4deffa01], bh
add byte [esi], al
adc byte [eax], al
add eax, 0x5050505
add eax, 84215045
add eax, 84215045
add eax, 84215045
add eax, 84215045
add eax, 84215045
add eax, 84215045
add eax, 84215045
add eax, 84215045
add eax, 84215045
add eax, 84215045
add eax, 84215045
add eax, 84215041
add eax, 84214277
add eax, 84214533
add eax, -859044859
int3