Function at 0x100145e1
Capabilities:
Encode data using xor

Disassembly:
push 0x40
mov eax, 0x10070c67
call fcn.10039b20
mov esi, ecx
xor ebx, ebx
mov dword [ebp - 0x4c], 0x6c766002
mov cl, 2
mov dword [ebp - 0x48], 0x7167705d
mov word [ebp - 0x44], 0x7667
mov edx, ebx
mov byte [ebp - 0x42], bl
xor cl, byte [ebp + edx - 0x4b]
mov byte [ebp + edx - 0x4b], cl
inc edx
cmp edx, 9
jae 0x1001461f
mov cl, byte [ebp - 0x4c]
jmp 0x1001460c
lea eax, [ebp - 0x4b]
mov byte [ebp - 0x42], bl
push eax
lea ecx, [ebp - 0x28]
call fcn.10002907
sub esp, 0x18
mov dword [ebp - 4], ebx
lea eax, [ebp - 0x28]
mov ecx, esp
push eax
call fcn.100023e9
mov ecx, dword [esi]
call fcn.1000bbd7
add esp, 0x18
mov dword [esi + 4], eax
mov dl, 0x1b
mov dword [ebp - 0x38], 0x687a791b
mov dword [ebp - 0x34], 0x7e69447e
mov ecx, ebx
mov dword [ebp - 0x30], 0x6f7e68
xor dl, byte [ebp + ecx - 0x37]
mov byte [ebp + ecx - 0x37], dl
inc ecx
cmp ecx, 0xa
jae 0x10014678
mov dl, byte [ebp - 0x38]
jmp 0x10014665
sub esp, 0x18
mov byte [ebp - 0x2d], bl
lea eax, [ebp - 0x37]
mov ecx, esp
push eax
call fcn.10002907
mov ecx, dword [esi]
call fcn.1000bbd7
movaps xmm0, xmmword [0x100876f0]
add esp, 0x18
mov dword [esi + 8], eax
mov edx, ebx
movups xmmword [ebp - 0x3c], xmm0
mov byte [ebp - 0x2c], bl
mov cl, byte [ebp - 0x3c]
xor byte [ebp + edx - 0x3b], cl
inc edx
cmp edx, 0xf
jb 0x100146a6
sub esp, 0x18
mov byte [ebp - 0x2c], bl
lea eax, [ebp - 0x3b]
mov ecx, esp
push eax
call fcn.10002907
mov ecx, dword [esi + 8]
call fcn.1000bbd7
add esp, 0x18
mov dword [esi + 0xc], eax
mov dl, 5
mov dword [ebp - 0x38], 0x6b716705
mov dword [ebp - 0x34], 0x6077755a
mov ecx, ebx
mov dword [ebp - 0x30], 0x716076
xor dl, byte [ebp + ecx - 0x37]
mov byte [ebp + ecx - 0x37], dl
inc ecx
cmp ecx, 0xa
jae 0x100146fe
mov dl, byte [ebp - 0x38]
jmp 0x100146eb
sub esp, 0x18
mov byte [ebp - 0x2d], bl
lea eax, [ebp - 0x37]
mov ecx, esp
push eax
call fcn.10002907
mov ecx, dword [esi + 8]
call fcn.1000bbd7
movaps xmm0, xmmword [0x10087f90]
add esp, 0x18
mov dword [esi + 0x14], eax
mov edx, ebx
movups xmmword [ebp - 0x3c], xmm0
mov byte [ebp - 0x2c], bl
mov cl, byte [ebp - 0x3c]
xor byte [ebp + edx - 0x3b], cl
inc edx
cmp edx, 0xf
jb 0x1001472d
sub esp, 0x18
mov byte [ebp - 0x2c], bl
lea eax, [ebp - 0x3b]
mov ecx, esp
push eax
call fcn.10002907
mov ecx, dword [esi + 8]
call fcn.1000bbd7
mov ecx, dword [esi + 8]
add esp, 0x18
xor dl, dl
mov dword [esi + 0x10], eax
call fcn.1000be07
mov dl, 0x62
mov dword [ebp - 0x34], 0xc160062
mov word [ebp - 0x30], 0x563d
mov ecx, ebx
mov byte [ebp - 0x2e], bl
xor dl, byte [ebp + ecx - 0x33]
mov byte [ebp + ecx - 0x33], dl
inc ecx
cmp ecx, 5
jae 0x1001478a
mov dl, byte [ebp - 0x34]
jmp 0x10014777
sub esp, 0x18
mov byte [ebp - 0x2e], bl
lea eax, [ebp - 0x33]
mov ecx, esp
push eax
call fcn.10002907
mov ecx, dword [esi]
call fcn.1000bbd7
add esp, 0x18
mov dword [esi + 0x18], eax
mov dl, 5
mov dword [ebp - 0x34], 0x6b716705
mov word [ebp - 0x30], 0x305a
mov ecx, ebx
mov byte [ebp - 0x2e], bl
xor dl, byte [ebp + ecx - 0x33]
mov byte [ebp + ecx - 0x33], dl
inc ecx
cmp ecx, 5
jae 0x100147cf
mov dl, byte [ebp - 0x34]
jmp 0x100147bc
sub esp, 0x18
mov byte [ebp - 0x2e], bl
lea eax, [ebp - 0x33]
mov ecx, esp
push eax
call fcn.10002907
mov ecx, dword [esi]
call fcn.1000bbd7
add esp, 0x18
mov dword [esi + 0x1c], eax
mov dl, 0x78
mov dword [ebp - 0x34], 0x160c1a78
mov word [ebp - 0x30], 0x4e27
mov ecx, ebx
mov byte [ebp - 0x2e], bl
xor dl, byte [ebp + ecx - 0x33]
mov byte [ebp + ecx - 0x33], dl
inc ecx
cmp ecx, 5
jae 0x10014814
mov dl, byte [ebp - 0x34]
jmp 0x10014801
sub esp, 0x18
mov byte [ebp - 0x2e], bl
lea eax, [ebp - 0x33]
mov ecx, esp
push eax
call fcn.10002907
mov ecx, dword [esi]
call fcn.1000bbd7
mov dword [esi + 0x20], eax
add esp, 0x18
mov cl, 0x72
mov dword [ebp - 0x34], 0x1c061072
mov word [ebp - 0x30], 0x452d
mov eax, ebx
mov byte [ebp - 0x2e], bl
xor byte [ebp + eax - 0x33], cl
inc eax
cmp eax, 5
jae 0x10014855
mov cl, byte [ebp - 0x34]
jmp 0x10014846
sub esp, 0x18
mov byte [ebp - 0x2e], bl
lea eax, [ebp - 0x33]
mov ecx, esp
push eax
call fcn.10002907
mov ecx, dword [esi]
call fcn.1000bbd7
add esp, 0x18
mov dword [esi + 0x24], eax
lea ecx, [ebp - 0x28]
push ebx
push 1
call fcn.100027bc
call fcn.10039aca
ret