Function at 0x10063120
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x101970d5
mov eax, dword fs:[0]
push eax
sub esp, 0x7c
mov eax, dword [0x101f6e00]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x84], ecx
mov esi, dword [ebp + 8]
mov dword [ebp - 0x88], esi
test esi, esi
je 0x10063630
mov ecx, dword [0xf3e688]
mov eax, 0x10624dd3
mul esi
shr edx, 6
imul eax, edx, 0x3e8
push eax
call dword [0x101d64bc]
mov edi, eax
test edi, edi
je 0x10063630
movzx edx, byte [edi + 4]
mov ecx, esi
call fcn.10109c20
xorps xmm0, xmm0
mov dword [ebp - 0x2c], 0
lea eax, [ebp - 0x71]
mov dword [ebp - 0x18], 0
push 8
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x7c], eax
call fcn.1013ca30
lea ecx, [ebp - 0x2c]
add esp, 4
mov dword [eax], ecx
mov dword [eax + 4], 0
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
mov dword [ebp - 0x80], 0
mov dword [ebp - 4], 1
mov ecx, esi
movzx edx, byte [edi + 4]
call fcn.10109c20
test eax, eax
je 0x1006330c
mov esi, dword [eax + 0x44]
test esi, esi
mov eax, 0xcccccccd
movaps xmm0, xmmword [0x101debb0]
cmove esi, dword [edi + 0x4c]
mul esi
movups xmmword [ebp - 0x70], xmm0
movaps xmm0, xmmword [0x101de3e0]
movups xmmword [ebp - 0x60], xmm0
mov ecx, esi
mov dword [ebp - 0x50], 0x2529357f
mov eax, edx
mov byte [ebp - 0x4c], 0
shr eax, 3
lea edx, [eax + eax*4]
add edx, edx
sub ecx, edx
xor edx, edx
push ecx
mov ecx, 0x64
div ecx
mov eax, 0x10624dd3
mov ecx, 0x2710
push edx
mul esi
shr edx, 6
mov eax, edx
xor edx, edx
div ecx
mov eax, 0x6b5fca6b
push edx
mul esi
shr edx, 0x16
xor ecx, ecx
push edx
nop
mov al, byte [ebp + ecx - 0x6f]
xor al, byte [ebp - 0x70]
mov byte [ebp + ecx - 0x6f], al
inc ecx
cmp ecx, 0x23
jb 0x10063270
sub esp, 0x1c
mov byte [ebp - 0x4c], 0
mov edx, esp
lea ecx, [ebp - 0x6f]
xorps xmm0, xmm0
lea esi, [ecx + 1]
mov dword [edx], 0
movups xmmword [edx + 4], xmm0
mov dword [edx + 0x14], 0
mov dword [edx + 0x18], 0
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100632b0
sub ecx, esi
lea eax, [ebp - 0x6f]
push ecx
push eax
mov ecx, edx
call fcn.100484d0
lea eax, [ebp - 0x48]
push eax
call fcn.10049410
mov esi, eax
add esp, 0x30
lea eax, [ebp - 0x2c]
cmp eax, esi
je 0x100632ea
mov ecx, eax
call fcn.100477d0
push esi
lea ecx, [ebp - 0x2c]
call fcn.10047a50
lea ecx, [ebp - 0x48]
call fcn.100477d0
mov eax, dword [ebp - 0x48]
push 8
push eax
mov dword [ebp - 0x48], 0
call fcn.1013c8d0
mov dword [ebp - 0x78], edi
jmp 0x100634e7
xorps xmm0, xmm0
lea eax, [ebp - 0x71]
push 8
movups xmmword [ebp - 0x3c], xmm0
mov dword [ebp - 0x7c], eax
call fcn.1013ca30
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x80], eax
mov dword [eax], ecx
mov dword [eax + 4], 0
mov dword [ebp - 0x3c], eax
push 0x100
mov byte [ebp - 4], 2
call fcn.100490d0
push 0x100
push 0
push eax
lea esi, [eax + 0x100]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x30], esi
call fcn.1013f8f0
add esp, 0x14
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x80], 0
mov byte [ebp - 4], 3
sub esi, dword [ebp - 0x38]
jne 0x100633b2
push str.vector_subscript_out_of_range
push 0x101d467c
push esi
push 0x762
push 0x101d5190
push 2
call fcn.10143d00
add esp, 0x18
cmp eax, 1
jne 0x10063394
int3
push 0
push 0x762
push str.C:Program_FilesMicrosoft_Visual_Studio2022CommunityVCToolsMSVC14.40.33807include_vector
push 0x101d47ac
push str._vector_subscript_out_of_range_
call fcn.10152640
add esp, 0x14
mov ecx, dword [edi + 0x4c]
xor edx, edx
mov eax, ecx
mov esi, 0xa
div esi
mov esi, 0x64
push edx
xor edx, edx
div esi
mov eax, 0x10624dd3
mov esi, 0x2710
push edx
mul ecx
shr edx, 6
mov eax, edx
xor edx, edx
div esi
mov eax, 0x6b5fca6b
push edx
mul ecx
shr edx, 0x16
push edx
push str.uiitemicon__.1d__.4d__.2d__.1d.dxt
push dword [ebp - 0x38]
call fcn.10052ea0
mov eax, dword [ebp - 0x34]
add esp, 0x18
mov edx, dword [ebp - 0x38]
sub eax, edx
jne 0x1006344c
push str.vector_subscript_out_of_range
push 0x101d467c
push eax
push 0x762
push 0x101d5190
push 2
call fcn.10143d00
add esp, 0x18
cmp eax, 1
jne 0x1006342b
int3
push 0
push 0x762
push str.C:Program_FilesMicrosoft_Visual_Studio2022CommunityVCToolsMSVC14.40.33807include_vector
push 0x101d47ac
push str._vector_subscript_out_of_range_
call fcn.10152640
mov edx, dword [ebp - 0x38]
add esp, 0x14
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10063451
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x2c]
call fcn.10047890
push 3
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 1
call fcn.10139310
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x78], edi
test ecx, ecx
je 0x1006349f
mov eax, dword [ecx + 4]
mov dword [ecx + 4], 0
mov dword [ebp - 0x78], edi
test eax, eax
je 0x1006349f
mov dword [ebp - 0x78], edi
mov dword [eax], 0
mov eax, dword [eax + 4]
test eax, eax
jne 0x10063490
jmp 0x100634a2
mov edi, dword [ebp - 0x78]
lea ecx, [ebp - 0x7c]
call fcn.101393c0
mov ecx, dword [ebp - 0x38]
test ecx, ecx
je 0x100634d5
mov eax, dword [ebp - 0x30]
sub eax, ecx
push eax
push ecx
call fcn.10048760
add esp, 8
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0
mov eax, dword [ebp - 0x3c]
push 8
push eax
mov dword [ebp - 0x3c], 0
call fcn.1013c8d0
mov ecx, dword [ebp - 0x84]
add esp, 8
xor eax, eax
mov esi, ecx
cmp dword [esi + 8], 0
je 0x100635b8
inc eax
add esi, 0x28
cmp eax, 5
jl 0x100634f4
lea esi, [ecx + 0x90]
mov edi, 4
mov eax, dword [esi - 0x10]
mov ecx, dword [esi + 0x1c]
mov dword [esi + 0x18], eax
cmp dword [esi + 0x10], 0
jne 0x1006352e
push ecx
push str._d__n
call fcn.10089a80
jmp 0x10063538
lea eax, [esi - 4]
push eax
push ecx
call fcn.100c6080
lea ecx, [esi + 0x24]
add esp, 8
lea eax, [esi - 4]
cmp ecx, eax
je 0x10063558
cmp dword [esi + 0x14], 0xf
mov eax, esi
jbe 0x1006354f
mov eax, dword [esi]
push dword [esi + 0x10]
push eax
call fcn.10047890
mov eax, dword [esi - 8]
mov dword [esi + 0x20], eax
sub esi, 0x28
sub edi, 1
jne 0x10063512
mov esi, dword [ebp - 0x84]
mov edx, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x78]
mov eax, dword [esi + 0xc]
mov dword [esi + 8], edx
mov dword [esi + 0x10], ecx
cmp dword [ebp - 0x18], edi
jne 0x10063590
push eax
push str._d__n
call fcn.10089a80
jmp 0x1006359a
lea ecx, [ebp - 0x2c]
push ecx
push eax
call fcn.100c6080
lea ecx, [esi + 0x14]
add esp, 8
lea eax, [ebp - 0x2c]
cmp ecx, eax
je 0x10063613
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
push dword [ebp - 0x18]
cmova eax, dword [ebp - 0x28]
push eax
jmp 0x1006360e
cmp dword [ebp - 0x18], 0
lea eax, [eax + eax*4]
mov edx, dword [ebp - 0x88]
mov dword [ecx + eax*8 + 8], edx
mov dword [ecx + eax*8 + 0x10], edi
mov eax, dword [ecx + eax*8 + 0xc]
jne 0x100635e0
push eax
push str._d__n
call fcn.10089a80
jmp 0x100635ea
lea ecx, [ebp - 0x2c]
push ecx
push eax
call fcn.100c6080
add esp, 8
lea edx, [ebp - 0x28]
cmp dword [ebp - 0x14], 0xf
cmova edx, dword [ebp - 0x28]
mov ecx, edx
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10063600
sub ecx, edi
push ecx
push edx
lea ecx, [esi + 0x14]
call fcn.10047890
lea ecx, [ebp - 0x2c]
call fcn.100477d0
mov eax, dword [ebp - 0x2c]
push 8
push eax
mov dword [ebp - 0x2c], 0
call fcn.1013c8d0
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1013c8c0
mov esp, ebp
pop ebp
ret 4