Function at 0x100c55b0
Capabilities:
Encode data using xor

Disassembly:
mov eax, dword [esp + 4]
add eax, 0xfffffbef
push esi
push edi
cmp eax, 7
ja case.0x100c55c4.1044
jmp dword [eax*4 + 0x100c57cc]
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x10]
mov edx, ecx
shr edx, 0x18
mov byte [eax + 0xc], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 0xd], dl
mov byte [eax + 0xf], cl
mov edx, ecx
mov ecx, dword [esp + 0x14]
shr edx, 8
mov byte [eax + 0xe], dl
mov edx, dword [ecx]
mov dword [0x101f4c04], edx
mov edx, dword [ecx + 4]
mov dword [0x101f4c08], edx
mov edx, dword [ecx + 8]
push esi
push eax
mov dword [0x101f4c0c], edx
mov edx, dword [esp + 0x20]
mov ecx, dword [ecx + 0xc]
push 0xa
push edx
mov edi, 0x10
mov dword [0x101f4c10], ecx
call fcn.100b53c0
add esp, 0x10
jmp 0x100c57a5
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x10]
mov edx, ecx
shr edx, 0x18
mov byte [eax + 0xc], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 0xd], dl
mov byte [eax + 0xf], cl
mov edx, ecx
mov ecx, dword [esp + 0x14]
shr edx, 8
mov byte [eax + 0xe], dl
mov edx, dword [ecx]
mov dword [0x101f4c04], edx
mov edx, dword [ecx + 4]
mov dword [0x101f4c08], edx
mov edx, dword [ecx + 8]
push esi
push eax
mov dword [0x101f4c0c], edx
mov edx, dword [esp + 0x20]
mov ecx, dword [ecx + 0xc]
push 0xc
push edx
mov edi, 0x10
mov dword [0x101f4c10], ecx
call fcn.100b53c0
add esp, 0x10
jmp 0x100c57a5
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x10]
mov edx, ecx
shr edx, 0x18
mov byte [eax + 0xc], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 0xd], dl
mov byte [eax + 0xf], cl
mov edx, ecx
mov ecx, dword [esp + 0x14]
shr edx, 8
mov byte [eax + 0xe], dl
mov edx, dword [ecx]
mov dword [0x101f4c04], edx
mov edx, dword [ecx + 4]
mov dword [0x101f4c08], edx
mov edx, dword [ecx + 8]
push esi
push eax
mov dword [0x101f4c0c], edx
mov edx, dword [esp + 0x20]
mov ecx, dword [ecx + 0xc]
push 0xe
push edx
mov edi, 0x10
mov dword [0x101f4c10], ecx
call fcn.100b53c0
add esp, 0x10
jmp 0x100c57a5
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x10]
mov edx, ecx
shr edx, 0x18
mov byte [eax + 4], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 5], dl
mov edx, ecx
mov byte [eax + 7], cl
mov ecx, dword [esp + 0x14]
shr edx, 8
mov byte [eax + 6], dl
mov edx, dword [ecx]
mov dword [0x101f4c04], edx
mov edx, dword [esp + 0x18]
mov ecx, dword [ecx + 4]
push esi
push eax
push edx
mov edi, 8
mov dword [0x101f4c08], ecx
call fcn.100b4a10
jmp 0x100c57a2
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x10]
mov edx, ecx
shr edx, 0x18
mov byte [eax + 4], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 5], dl
mov edx, ecx
mov byte [eax + 7], cl
mov ecx, dword [esp + 0x14]
shr edx, 8
mov byte [eax + 6], dl
mov edx, dword [ecx]
mov dword [0x101f4c04], edx
mov edx, dword [esp + 0x18]
mov ecx, dword [ecx + 4]
push esi
push eax
push edx
mov edi, 8
mov dword [0x101f4c08], ecx
call fcn.100b4250
add esp, 0xc
test edi, edi
jle 0x100c57bd
mov ecx, 0x101f4c04
mov eax, esi
sub ecx, esi
mov dl, byte [ecx + eax]
xor byte [eax], dl
inc eax
sub edi, 1
jne 0x100c57b2
pop edi
xor eax, eax
pop esi
ret
pop edi
mov eax, 0xfffff445
pop esi
ret