Function at 0x10019d60
Capabilities:
Encode data using xor

Disassembly:
push ecx
mov ecx, dword [sym.imp.ucrtbased.dll_malloc]
push ebx
mov dword [esp + 4], 0x10032808
mov ebx, dword [esp + 4]
push ebp
push esi
mov esi, dword [esp + 0xc]
add esi, 0x14
mov dword [0x100420d0], 0
cmp byte [ebx + 0x13], 0
push edi
mov dword [0x10042020], 1
je 0x10019dd2
mov eax, dword [ebx + 0xf]
inc eax
push eax
call ecx
mov ebp, dword [ebx + 0xf]
add esp, 4
xor edx, edx
mov edi, eax
test ebp, ebp
je 0x10019dc6
sub esi, edi
nop
mov eax, edx
lea ecx, [edx + edi]
and eax, 7
inc edx
mov al, byte [eax + ebx + 7]
xor al, byte [esi + ecx]
mov byte [ecx], al
cmp edx, ebp
jb 0x10019db0
mov ecx, dword [sym.imp.ucrtbased.dll_malloc]
mov esi, edi
mov byte [edi + ebp], 0
mov dword [esp + 0x10], 0x10032828
mov ebx, dword [esp + 0x10]
mov dword [0x10041fec], esi
mov esi, dword [esp + 0x10]
add esi, 0x14
mov dword [0x10042070], 1
cmp byte [ebx + 0x13], 0
je 0x10019e2e
mov eax, dword [ebx + 0xf]
inc eax
push eax
call ecx
mov ebp, dword [ebx + 0xf]
add esp, 4
xor edx, edx
mov edi, eax
test ebp, ebp
je 0x10019e28
sub esi, edi
mov eax, edx
lea ecx, [edx + edi]
and eax, 7
inc edx
mov al, byte [eax + ebx + 7]
xor al, byte [esi + ecx]
mov byte [ecx], al
cmp edx, ebp
jb 0x10019e12
mov byte [edi + ebp], 0
mov esi, edi
mov dword [esp + 0x10], 0x10032870
mov ebx, dword [esp + 0x10]
mov dword [0x10041ff0], esi
mov esi, dword [esp + 0x10]
add esi, 0x14
mov dword [0x1004206c], 0
cmp byte [ebx + 0x13], 0
mov dword [0x100420bc], 0
mov dword [0x100420dc], 0xea60
mov dword [0x100420c4], 0
mov dword [0x100420d8], 0x927c0
je 0x10019ebc
mov eax, dword [ebx + 0xf]
inc eax
push eax
call dword [sym.imp.ucrtbased.dll_malloc]
mov ebp, dword [ebx + 0xf]
add esp, 4
xor edx, edx
mov edi, eax
test ebp, ebp
je 0x10019eb6
sub esi, edi
nop word [eax + eax]
mov eax, edx
lea ecx, [edx + edi]
and eax, 7
inc edx
mov al, byte [eax + ebx + 7]
xor al, byte [esi + ecx]
mov byte [ecx], al
cmp edx, ebp
jb 0x10019ea0
mov byte [edi + ebp], 0
mov esi, edi
mov dword [esp + 0x10], 0x10032890
mov ebx, dword [esp + 0x10]
mov dword [0x10041fd8], esi
mov esi, dword [esp + 0x10]
add esi, 0x14
cmp byte [ebx + 0x13], 0
je 0x10019f12
mov eax, dword [ebx + 0xf]
inc eax
push eax
call dword [sym.imp.ucrtbased.dll_malloc]
mov ebp, dword [ebx + 0xf]
add esp, 4
xor edx, edx
mov edi, eax
test ebp, ebp
je 0x10019f0c
sub esi, edi
mov eax, edx
lea ecx, [edx + edi]
and eax, 7
inc edx
mov al, byte [eax + ebx + 7]
xor al, byte [esi + ecx]
mov byte [ecx], al
cmp edx, ebp
jb 0x10019ef6
mov byte [edi + ebp], 0
mov esi, edi
mov dword [esp + 0x10], 0x100328ac
mov ebx, dword [esp + 0x10]
mov dword [0x10041fdc], esi
mov esi, dword [esp + 0x10]
add esi, 0x14
cmp byte [ebx + 0x13], 0
je 0x10019f6c
mov eax, dword [ebx + 0xf]
inc eax
push eax
call dword [sym.imp.ucrtbased.dll_malloc]
mov ebp, dword [ebx + 0xf]
add esp, 4
xor edx, edx
mov edi, eax
test ebp, ebp
je 0x10019f66
sub esi, edi
nop dword [eax]
mov eax, edx
lea ecx, [edx + edi]
and eax, 7
inc edx
mov al, byte [eax + ebx + 7]
xor al, byte [esi + ecx]
mov byte [ecx], al
cmp edx, ebp
jb 0x10019f50
mov byte [edi + ebp], 0
mov esi, edi
mov dword [esp + 0x10], 0x10032944
mov ebx, dword [esp + 0x10]
mov dword [0x10041fe0], esi
mov esi, dword [esp + 0x10]
add esi, 0x14
mov dword [0x1004207c], 0
cmp byte [ebx + 0x13], 0
mov dword [0x100420cc], 0x2710
mov dword [0x1004201c], 0
mov dword [0x10042114], 0x21f
mov dword [0x10041fa0], 0x100328c8
mov dword [0x10041fd0], 0x100328e4
mov dword [0x10041fc8], 0x10032914
je 0x1001a00c
mov eax, dword [ebx + 0xf]
inc eax
push eax
call dword [sym.imp.ucrtbased.dll_malloc]
mov ebp, dword [ebx + 0xf]
add esp, 4
xor edx, edx
mov edi, eax
test ebp, ebp
je 0x1001a006
sub esi, edi
nop dword [eax]
mov eax, edx
lea ecx, [edx + edi]
and eax, 7
inc edx
mov al, byte [eax + ebx + 7]
xor al, byte [esi + ecx]
mov byte [ecx], al
cmp edx, ebp
jb 0x10019ff0
mov byte [edi + ebp], 0
mov esi, edi
mov dword [esp + 0x10], 0x10032988
mov ebx, dword [esp + 0x10]
mov dword [0x10041fd4], esi
mov esi, dword [esp + 0x10]
add esi, 0x14
mov dword [0x10042068], 0
cmp byte [ebx + 0x13], 0
mov dword [0x10042118], 0x21b
mov dword [0x10041fc4], 0x10032960
mov dword [0x10041fe8], 0x10032970
mov dword [0x10041fcc], 0x1003297c
mov dword [0x10042084], 0
mov dword [0x10042040], 0
mov dword [0x10042128], 0x43faab90
je 0x1001a0b2
mov eax, dword [ebx + 0xf]
inc eax
push eax
call dword [sym.imp.ucrtbased.dll_malloc]
mov ebp, dword [ebx + 0xf]
add esp, 4
xor edx, edx
mov edi, eax
test ebp, ebp
je 0x1001a0ac
sub esi, edi
mov eax, edx
lea ecx, [edx + edi]
and eax, 7
inc edx
mov al, byte [eax + ebx + 7]
xor al, byte [esi + ecx]
mov byte [ecx], al
cmp edx, ebp
jb 0x1001a096
mov byte [edi + ebp], 0
mov esi, edi
mov dword [esp + 0x10], 0x100329ac
mov ebx, dword [esp + 0x10]
mov dword [0x10041fa4], esi
mov esi, dword [esp + 0x10]
add esi, 0x14
mov dword [0x1004208c], 0
cmp byte [ebx + 0x13], 0
mov dword [0x10042048], 0
mov dword [0x1004212c], 0x5b9c9abf
je 0x1001a12c
mov eax, dword [ebx + 0xf]
inc eax
push eax
call dword [sym.imp.ucrtbased.dll_malloc]
mov ebp, dword [ebx + 0xf]
add esp, 4
xor edx, edx
mov edi, eax
test ebp, ebp
je 0x1001a126
sub esi, edi
nop word [eax + eax]
mov eax, edx
lea ecx, [edx + edi]
and eax, 7
inc edx
mov al, byte [eax + ebx + 7]
xor al, byte [ecx + esi]
mov byte [ecx], al
cmp edx, ebp
jb 0x1001a110
mov byte [edi + ebp], 0
mov esi, edi
mov dword [esp + 0x10], 0x100329c8
mov ebx, dword [esp + 0x10]
mov dword [0x10041fbc], esi
mov esi, dword [esp + 0x10]
add esi, 0x14
cmp byte [ebx + 0x13], 0
je 0x1001a182
mov eax, dword [ebx + 0xf]
inc eax
push eax
call dword [sym.imp.ucrtbased.dll_malloc]
mov ebp, dword [ebx + 0xf]
add esp, 4
xor edx, edx
mov edi, eax
test ebp, ebp
je 0x1001a17c
sub esi, edi
mov eax, edx
lea ecx, [edx + edi]
and eax, 7
inc edx
mov al, byte [eax + ebx + 7]
xor al, byte [ecx + esi]
mov byte [ecx], al
cmp edx, ebp
jb 0x1001a166
mov byte [edi + ebp], 0
mov esi, edi
mov dword [esp + 0x10], 0x100329e8
mov ebx, dword [esp + 0x10]
mov dword [0x10041fb0], esi
mov esi, dword [esp + 0x10]
add esi, 0x14
cmp byte [ebx + 0x13], 0
je 0x1001a1dc
mov eax, dword [ebx + 0xf]
inc eax
push eax
call dword [sym.imp.ucrtbased.dll_malloc]
mov ebp, dword [ebx + 0xf]
add esp, 4
xor edx, edx
mov edi, eax
test ebp, ebp
je 0x1001a1d6
sub esi, edi
nop dword [eax]
mov eax, edx
lea ecx, [edx + edi]
and eax, 7
inc edx
mov al, byte [eax + ebx + 7]
xor al, byte [ecx + esi]
mov byte [ecx], al
cmp edx, ebp
jb 0x1001a1c0
mov byte [edi + ebp], 0
mov esi, edi
mov dword [esp + 0x10], 0x10032a08
mov ebx, dword [esp + 0x10]
mov dword [0x10041fb4], esi
mov esi, dword [esp + 0x10]
add esi, 0x14
cmp byte [ebx + 0x13], 0
je 0x1001a232
mov eax, dword [ebx + 0xf]
inc eax
push eax
call dword [sym.imp.ucrtbased.dll_malloc]
mov ebp, dword [ebx + 0xf]
add esp, 4
xor edx, edx
mov edi, eax
test ebp, ebp
je 0x1001a22c
sub esi, edi
mov eax, edx
lea ecx, [edx + edi]
and eax, 7
inc edx
mov al, byte [eax + ebx + 7]
xor al, byte [ecx + esi]
mov byte [ecx], al
cmp edx, ebp
jb 0x1001a216
mov byte [edi + ebp], 0
mov esi, edi
mov dword [esp + 0x10], 0x10032a28
mov ebx, dword [esp + 0x10]
mov dword [0x10041fb8], esi
mov esi, dword [esp + 0x10]
add esi, 0x14
mov dword [0x10042090], 0
cmp byte [ebx + 0x13], 0
mov dword [0x10042044], 0
mov dword [0x10042130], 0x70ab5cfb
je 0x1001a2ac
mov eax, dword [ebx + 0xf]
inc eax
push eax
call dword [sym.imp.ucrtbased.dll_malloc]
mov ebp, dword [ebx + 0xf]
add esp, 4
xor edx, edx
mov edi, eax
test ebp, ebp
je 0x1001a2a6
sub esi, edi
nop word [eax + eax]
mov eax, edx
lea ecx, [edx + edi]
and eax, 7
inc edx
mov al, byte [eax + ebx + 7]
xor al, byte [ecx + esi]
mov byte [ecx], al
cmp edx, ebp
jb 0x1001a290
mov byte [edi + ebp], 0
mov esi, edi
mov dword [esp + 0x10], 0x10032a48
mov ebx, dword [esp + 0x10]
mov dword [0x10041fac], esi
mov esi, dword [esp + 0x10]
add esi, 0x14
cmp byte [ebx + 0x13], 0
je 0x1001a302
mov eax, dword [ebx + 0xf]
inc eax
push eax
call dword [sym.imp.ucrtbased.dll_malloc]
mov ebp, dword [ebx + 0xf]
add esp, 4
xor edx, edx
mov edi, eax
test ebp, ebp
je 0x1001a2fc
sub esi, edi
mov eax, edx
lea ecx, [edx + edi]
and eax, 7
inc edx
mov al, byte [eax + ebx + 7]
xor al, byte [ecx + esi]
mov byte [ecx], al
cmp edx, ebp
jb 0x1001a2e6
mov byte [edi + ebp], 0
mov esi, edi
mov dword [esp + 0x10], 0x10032aac
mov ebx, dword [esp + 0x10]
mov dword [0x10041fa8], esi
mov esi, dword [esp + 0x10]
add esi, 0x14
mov dword [0x10042094], 0
cmp byte [ebx + 0x13], 0
mov dword [0x10042098], 0
mov dword [0x1004209c], 0
mov dword [0x10042088], 0
mov dword [0x1004200c], 0
mov dword [0x100420c0], 0
mov dword [0x100420d4], 0x218
mov dword [0x10042060], 1
mov dword [0x10042064], 0
mov dword [0x100420e0], 0x223
mov dword [0x100420a0], 1
mov dword [0x10042028], 0
mov dword [0x100420e4], 0x218
mov dword [0x100420b8], 1
mov dword [0x10042024], 1
mov dword [0x100420e8], 0x21a
mov dword [0x10042078], 1
mov dword [0x100420f8], 0x22c
mov dword [0x100420a8], 0
mov dword [0x10042104], 0x20e
mov dword [0x100420b0], 0
mov dword [0x1004210c], 0x222
mov dword [0x100420a4], 0
mov dword [0x10042100], 0x218
mov dword [0x100420ac], 0
mov dword [0x10042108], 0x221
mov dword [0x10042074], 0
mov dword [0x100420fc], 0x1f4
mov dword [0x100420b4], 0
mov dword [0x100420f4], 0x22f
mov dword [0x10042054], 1
mov dword [0x100420ec], 0x22c
mov dword [0x1004202c], 1
mov dword [0x100420f0], 0x9c4
mov dword [0x10042018], 0
mov dword [0x10042080], 0
mov dword [0x10042110], 0x2df
mov dword [0x100420c8], 0
mov dword [0x10042014], 0
je 0x1001a4de
mov eax, dword [ebx + 0xf]
inc eax
push eax
call dword [sym.imp.ucrtbased.dll_malloc]
mov ebp, dword [ebx + 0xf]
add esp, 4
xor edx, edx
mov edi, eax
test ebp, ebp
je 0x1001a4d8
sub esi, edi
mov eax, edx
lea ecx, [edx + edi]
and eax, 7
inc edx
mov al, byte [eax + ebx + 7]
xor al, byte [ecx + esi]
mov byte [ecx], al
cmp edx, ebp
jb 0x1001a4c2
mov byte [edi + ebp], 0
mov esi, edi
mov dword [esp + 0x10], 0x10032ad4
mov ebx, dword [esp + 0x10]
mov dword [0x10041ffc], esi
mov esi, dword [esp + 0x10]
add esi, 0x14
cmp byte [ebx + 0x13], 0
je 0x1001a534
mov eax, dword [ebx + 0xf]
inc eax
push eax
call dword [sym.imp.ucrtbased.dll_malloc]
mov ebp, dword [ebx + 0xf]
add esp, 4
xor edx, edx
mov edi, eax
test ebp, ebp
je 0x1001a52e
sub esi, edi
mov eax, edx
lea ecx, [edx + edi]
and eax, 7
inc edx
mov al, byte [eax + ebx + 7]
xor al, byte [ecx + esi]
mov byte [ecx], al
cmp edx, ebp
jb 0x1001a518
mov byte [edi + ebp], 0
mov esi, edi
mov dword [esp + 0x10], 0x10032af0
mov ebx, dword [esp + 0x10]
mov dword [0x10042000], esi
mov esi, dword [esp + 0x10]
add esi, 0x14
cmp byte [ebx + 0x13], 0
je 0x1001a58c
mov eax, dword [ebx + 0xf]
inc eax
push eax
call dword [sym.imp.ucrtbased.dll_malloc]
mov ebp, dword [ebx + 0xf]
add esp, 4
xor edx, edx
mov edi, eax
test ebp, ebp
je 0x1001a586
sub esi, edi
nop
mov eax, edx
lea ecx, [edx + edi]
and eax, 7
inc edx
mov al, byte [eax + ebx + 7]
xor al, byte [ecx + esi]
mov byte [ecx], al
cmp edx, ebp
jb 0x1001a570
mov byte [edi + ebp], 0
mov esi, edi
movaps xmm0, xmmword [0x10032fc0]
mov dword [esp + 0x10], 0x10032b14
mov ebx, dword [esp + 0x10]
mov dword [0x10042004], esi
mov esi, dword [esp + 0x10]
add esi, 0x14
mov dword [0x10042030], 1
cmp byte [ebx + 0x13], 0
mov dword [0x10042050], 1
mov dword [0x1004211c], 0x28131ef0
mov dword [0x1004203c], 1
mov dword [0x10042124], 0x145393e2
mov dword [0x10042038], 0
mov dword [0x10042120], 0xd77eb164
mov dword [0x1004204c], 0
mov dword [0x10042134], 0xacdd7f2e
mov dword [0x10042034], 0
movups xmmword [0x10042138], xmm0
mov dword [0x10042148], 0x76487ad9
mov dword [0x1004214c], 0xb3b0cf70
mov dword [0x10042150], 0x98fb5fca
mov dword [0x10042058], 0
mov dword [0x1004205c], 0
je 0x1001a696
mov eax, dword [ebx + 0xf]
inc eax
push eax
call dword [sym.imp.ucrtbased.dll_malloc]
mov ebp, dword [ebx + 0xf]
add esp, 4
xor edx, edx
mov edi, eax
test ebp, ebp
je 0x1001a686
sub esi, edi
nop word [eax + eax]
mov eax, edx
lea ecx, [edx + edi]
and eax, 7
inc edx
mov al, byte [eax + ebx + 7]
xor al, byte [ecx + esi]
mov byte [ecx], al
cmp edx, ebp
jb 0x1001a670
mov byte [edi + ebp], 0
mov dword [0x10041fe4], edi
pop edi
pop esi
pop ebp
pop ebx
pop ecx
ret
pop edi
mov dword [0x10041fe4], esi
pop esi
pop ebp
pop ebx
pop ecx
ret