Function at 0x14c9428
Capabilities:
Encode data using xor

Disassembly:
lea esp, [esp + 0x10]
je 0x15359bc
mov eax, 0x80a39c19
inc eax
mov eax, dword [ebp + ebx*4]
push eax
push 0xdd181e13
push 0x12296c3f
call fcn.014ef1c0
mov eax, dword [esi]
mov ecx, 0x2326b598
lea esi, [ecx + esi - 0x2326b594]
sal ecx, 0x32
sbb ecx, 0xb7bbc71d
mov edx, 0x4f08418e
xor eax, ebx
xchg dh, dl
push ecx
lea edx, [ecx + ecx*2 + 0x35bf2097]
ror eax, 1
and ecx, ecx
bts ecx, 0x16
add cl, ch
not eax
bswap eax
ror ecx, cl
neg eax
push edx
call fcn.0155ef94
pop ecx
pop ecx
pop ecx
jmp fcn.0114844c
push 0xc489e9aa
sub word [esp + 2], 0x4700
and esi, 0xff
mov esi, dword [esi*4 + 0x1478230]
push 0xb5b57e26
shr eax, 8
xor eax, esi
inc edx
sub dword [esp + 3], 0x1594dd95
xor eax, 0x6891358a
dec ecx
jmp 0x154f6ad
mov esi, 0xa791a780
xor esi, esi
movzx esi, byte [esi + edx]
xor esi, eax
jmp 0x101a905
jmp ebp
mov esi, dword [esp + 4]
lea esp, [esp + 8]
mov ecx, 0xc9a1fdac
sub cx, cx
not eax
mov edx, ecx
sub dx, dx
rol cx, 0x49
mov dword [edi], eax
sal dx, 0x81
lea eax, [edx + edx - 0x45401fec]
jns 0x10a8ef9
inc ecx
pop esi
bswap ecx
inc ecx
idiv edx
dec eax
arpl bp, bp
cwd
dec eax
add edi, ebp
dec eax
xor edx, edi
jmp edx
sub dword [esp], eax
or eax, eax
mov eax, dword [ecx]
sbb ebp, 4
push edx
mov dword [ebp], eax
or dx, dx
movsx ecx, byte [esp + 4]
mov eax, dword [esi]
sal ecx, cl
push ecx
adc esi, 3
xchg dword [esp + 3], edx
and byte [esp + 7], dh
not edx
xor eax, ebx
shr dl, 0x22
mov byte [esp + edx*2 - 0x5808bff], 0x21
bswap eax
setbe dl
lea eax, [edx + eax + 0x1dc2f22d]
rol dx, 0xb
sal byte [esp + edx - 0x2c00a28], 0xa2
sar dx, 9
ror eax, 2
lea ecx, [ecx - 0x15d3a950]
inc eax
ror word [esp + edx - 0x2c00003], 0xca
pop edx
neg eax
xchg dword [esp + 2], edx
xor byte [esp + 6], cl
xor ebx, eax
push edx
add edi, eax
jmp 0xcabb08
inc ecx
mov ebp, dword [edi + ebx*4 - 8]
inc ecx
and esp, 0xfca8a8bb
inc ecx
xor ebp, esi
dec ebp
btr eax, edx
push esi
inc sp
adc dword [esp + ebx + 4], eax
lea ebp, [ebx + ebp - 0x1da53f16]
inc esp
xchg dword [esp + ebx*2 - 3], eax
dec si
xor ebp, 0x42b943a9
dec eax
cdq
sub ebp, 0x93ae9534
xor ebp, 0xce97b3bf
and byte [esp + ebx - 1], dl
dec esp
mov dword [esp + ebx*4 - 8], esi
dec ecx
neg eax
xor dword [esp + ebx*4 - 8], ebp
shr cx, 0x6d
jne 0x113a95b
inc eax
inc ch
inc edx
xor dword [esp + ebp*4 + 0x27a54], edx
dec ebp
xchg eax, ebx
inc ecx
xadd dl, dh
inc ecx
pop esi
dec eax
arpl dx, dx
dec eax
lea ecx, [esi*4 + 0x6397a311]
dec ebp
add edx, esp
dec eax
adc edi, edx
inc ecx
dec ebx
push ecx
jns 0x14af9f9
lea esp, [esp + 0xc]
jne 0x1096af3
mov edx, 0xdc212d80
push edx
jmp 0x10c0277
dec eax
mov dword [esp + esi*2 - 0x4e353c0e], edi
ret
jmp 0xca6e04
mov eax, 0xec01c239
mov eax, dword [ebp]
call eax
mov edx, 0x2995b208
movzx ecx, dl
mov ebp, dword [edx + ebp - 0x2995b20c]
movzx edi, cx
bt di, 0x30
mov dword [ebp + edx*2 - 0x532b6410], eax
movsx eax, dl
setae al
pop ebx
pop edi
btr edx, edx
pop esi
jae 0x105dd24
jno 0x13b0ac7
add esi, 1
mov dword [esp], eax
xor cl, bl
neg cl
and dword [esp], eax
ror cl, 1
add cl, 0x8f
btr eax, eax
bswap eax
lea edx, [eax + 0x111b0811]
not cl
or edx, eax
xchg byte [esp + 3], ah
adc cl, 5
xor bl, cl
neg word [esp + 1]
lea ecx, [esp + ecx + 4]
jb 0x11604f8
mov eax, dword [edi]
add edi, 4
push eax
popfd
mov edx, dword [esi]
add esi, 4
mov eax, 0xbe013696
lea ecx, [eax + eax*4 - 0x31fbea70]
xor edx, ebx
shl cx, 9
lea ecx, [eax*2 + 0x10b8fa91]
imul eax, ecx
bswap edx
not ecx
sub ax, cx
cbw
inc edx
and cl, 0x14
cbw
lea ecx, [ecx + ecx + 0x381980ba]
bswap edx
sar eax, 0xd5
ror edx, 1
neg cx
rol ecx, 0x35
xor ebx, edx
not al
cbw
add ebp, edx
jmp ebp
call 0x13b0b4d