Function at 0x10015a3b
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push 0x20
mov eax, 0x1004732b
call fcn.10045bde
mov ebx, ecx
mov dword [ebp - 0x24], ebx
lea ecx, [ebx + 8]
mov dword [ebp - 0x28], ebx
call fcn.10016625
lea ecx, [ebx + 0x1508]
call fcn.10016406
lea eax, [ebx + 0x1940]
and dword [eax + 4], 0
lea esi, [eax + 0x28]
and dword [eax], 0
mov ecx, esi
push 0xc
pop edx
and dword [ecx + 4], 0
and dword [ecx], 0
lea ecx, [ecx + 8]
sub edx, 1
jne 0x10015a77
and dword [eax + 8], edx
and dword [eax + 0xc], edx
and dword [eax + 0x10], edx
xor edi, edi
mov dword [eax + 0x14], 0xc6000000
mov dword [eax + 0x18], 0xc6000000
mov dword [eax + 0x1c], 0x46000000
mov dword [eax + 0x20], 0x46000000
movd xmm0, edi
cvtdq2ps xmm0, xmm0
addss xmm0, xmm0
mulss xmm0, dword [0x1004d868]
divss xmm0, dword [0x1004d89c]
movss dword [ebp - 0x2c], xmm0
cvtps2pd xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sin_precise
movss xmm1, dword [ebp - 0x2c]
cvtsd2ss xmm0, xmm0
movss dword [ebp - 0x24], xmm0
cvtps2pd xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_cos_precise
cvtsd2ss xmm0, xmm0
inc edi
movss dword [esi], xmm0
movss xmm0, dword [ebp - 0x24]
movss dword [esi + 4], xmm0
add esi, 8
cmp edi, 0xc
jl 0x10015aad
xor eax, eax
mov dword [ebx + 0x19cc], eax
mov dword [ebx + 0x19c8], eax
mov dword [ebx + 0x19d0], eax
mov dword [ebp - 4], eax
mov dword [ebx + 0x19f0], eax
mov dword [ebx + 0x19ec], eax
mov dword [ebx + 0x19f4], eax
mov dword [ebx + 0x19fc], eax
mov dword [ebx + 0x19f8], eax
mov dword [ebx + 0x1a00], eax
mov dword [ebx + 0x1a08], eax
mov dword [ebx + 0x1a04], eax
mov dword [ebx + 0x1a0c], eax
mov dword [ebx + 0x1a14], eax
mov dword [ebx + 0x1a10], eax
mov dword [ebx + 0x1a18], eax
and dword [ebx + 0x1a58], eax
and dword [ebx + 0x1a54], eax
mov dword [ebx + 0x1a78], eax
mov dword [ebx + 0x1a74], eax
mov dword [ebx + 0x1a7c], eax
mov dword [ebx + 0x1a84], eax
mov dword [ebx + 0x1a80], eax
mov dword [ebx + 0x1a88], eax
mov dword [ebx + 0x1a90], eax
mov dword [ebx + 0x1a8c], eax
mov dword [ebx + 0x1a94], eax
mov dword [ebx + 0x1a9c], eax
mov dword [ebx + 0x1a98], eax
mov dword [ebx + 0x1aa0], eax
mov dword [ebx + 0x1aa8], eax
mov dword [ebx + 0x1aa4], eax
mov dword [ebx + 0x1aac], eax
lea esi, [ebx + 0x1af0]
mov ecx, esi
call fcn.100159a1
xor eax, eax
lea ecx, [ebx + 0x1b44]
xorps xmm1, xmm1
mov dword [ebx + 0x1ac8], eax
mov dword [ebx + 0x1ac4], eax
mov dword [ebx + 0x1ac0], eax
mov dword [ebx + 0x1abc], eax
mov dword [ebx + 0x1ab8], eax
mov dword [ebx + 0x1ab4], eax
mov dword [ebx + 0x1ab0], eax
movups xmmword [ebx + 0x1ad4], xmm1
mov byte [ebx + 0x1aec], al
movss dword [ebx + 0x1acc], xmm1
movss dword [ebx + 0x1ad0], xmm1
movss dword [ebx + 0x1ae4], xmm1
movss dword [ebx + 0x1ae8], xmm1
mov dword [esi], 0x7f7fffff
mov dword [esi + 4], 0x7f7fffff
mov dword [esi + 8], 0xff7fffff
mov dword [esi + 0xc], 0xff7fffff
mov dword [ebx + 0x1b00], eax
mov dword [ebx + 0x1b04], eax
mov dword [ebx + 0x1b08], 0x7f7fffff
movss dword [ebx + 0x1b0c], xmm1
movss dword [ebx + 0x1b10], xmm1
call fcn.100159a1
lea ecx, [ebx + 0x1b84]
call fcn.100159a1
lea esi, [ebx + 0x1bac]
lea ecx, [esi + 0x14]
call fcn.100159a1
mov ecx, esi
call fcn.100159bf
lea esi, [ebx + 0x1bd0]
lea ecx, [esi + 0x14]
call fcn.100159a1
mov ecx, esi
call fcn.100159bf
lea esi, [ebx + 0x1bf4]
lea ecx, [esi + 0x14]
call fcn.100159a1
mov ecx, esi
call fcn.100159bf
xor eax, eax
xorps xmm0, xmm0
mov byte [ebx + 0x1c18], al
mov dword [ebx + 0x1c1c], eax
mov dword [ebx + 0x1c24], eax
mov dword [ebx + 0x1c28], eax
mov dword [ebx + 0x1c20], eax
movups xmmword [ebx + 0x1c2c], xmm0
push fcn.1002e87c
push 0x1002ec23
push 2
lea eax, [ebx + 0x1c3c]
mov byte [ebp - 4], 0xa
push 0xc
push eax
mov dword [ebp - 0x24], eax
call fcn.10042688
lea ecx, [ebx + 0x1c58]
mov byte [ebp - 4], 0xb
push 0
call fcn.10015859
xor edx, edx
lea edi, [ebx + 0x1d20]
push 8
mov dword [ebx + 0x1d18], edx
xor eax, eax
mov dword [ebx + 0x1d14], edx
or esi, 0xffffffff
mov dword [ebx + 0x1d0c], edx
mov dword [ebx + 0x1d10], edx
pop ecx
rep stosd dword es:[edi], eax
lea ecx, [ebx + 0x1d44]
stosb byte es:[edi], al
mov dword [ebx + 0x1d1c], esi
mov word [ebx + 0x1d41], dx
call fcn.100159a1
xor ecx, ecx
mov dword [ebx + 0x1d70], ecx
mov dword [ebx + 0x1d6c], ecx
mov dword [ebx + 0x1d74], ecx
lea eax, [ebx + 0x1d80]
push 0xe64
push ecx
push eax
mov dword [eax + 8], ecx
mov dword [eax + 4], ecx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x14], ecx
mov dword [eax + 0x10], ecx
mov dword [eax + 0x18], ecx
mov dword [eax + 0x20], ecx
mov dword [eax + 0x1c], ecx
mov dword [eax + 0x24], ecx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebx + 0x2be4]
mov byte [ebp - 4], 0xe
call fcn.10040cee
and dword [ebx + 0x2c50], 0
and dword [ebx + 0x2c4c], 0
and dword [ebx + 0x2c48], 0
and dword [ebx + 0x2c44], 0
and dword [ebx + 0x2c64], 0
and dword [ebx + 0x2c60], 0
xor eax, eax
mov dword [ebx + 0x2c70], eax
mov dword [ebx + 0x2c6c], eax
mov dword [ebx + 0x2c74], eax
and dword [ebx + 0x2c7c], eax
lea ecx, [ebx + 0x2c90]
and dword [ebx + 0x2c78], eax
and dword [ebx + 0x2c84], eax
and dword [ebx + 0x2c80], eax
mov dword [ebp - 0x24], ecx
mov dword [ecx + 4], eax
mov dword [ecx], eax
mov dword [ecx + 8], eax
mov byte [ebp - 4], 0x11
mov byte [ebp - 0x1d], al
lea eax, [ebp - 0x1d]
push eax
call fcn.1002edb7
xor eax, eax
mov dword [ebx + 0x2ca0], eax
mov dword [ebx + 0x2c9c], eax
mov dword [ebx + 0x2ca4], eax
mov dword [ebx + 0x2cac], eax
mov dword [ebx + 0x2ca8], eax
mov dword [ebx + 0x2cb0], eax
lea ecx, [ebx + 0x2cbc]
mov dword [ebp - 0x24], ecx
mov dword [ecx + 4], eax
mov dword [ecx], eax
mov dword [ecx + 8], eax
mov byte [ebp - 4], 0x15
mov byte [ebp - 0x1d], al
lea eax, [ebp - 0x1d]
push eax
call fcn.1002edb7
and dword [ebx + 0x1934], 0
and dword [ebx + 0x193c], 0
and dword [ebx + 0x1938], 0
inc dword [0x10104b7c]
push 0x5c
mov word [ebx], 0x100
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
pop ecx
test eax, eax
je 0x10015eb2
mov ecx, eax
call fcn.1003f7d6
xor ecx, ecx
jmp 0x10015eb6
xor ecx, ecx
mov eax, ecx
and dword [ebx + 0x1a38], 0
xorps xmm0, xmm0
and dword [ebx + 0x1a44], 0
and dword [ebx + 0x1a6c], 0
mov dword [ebx + 0x94], eax
lea eax, [ebx + 0x1b44]
movsd qword [ebx + 0x19d8], xmm0
movss xmm0, dword [0x1004d98c]
mov dword [ebx + 0x19e0], ecx
mov dword [ebx + 0x19e8], esi
mov dword [ebx + 0x19e4], esi
mov dword [ebx + 0x1a1c], ecx
mov dword [ebx + 0x1a20], ecx
mov dword [ebx + 0x1a24], ecx
mov dword [ebx + 0x1a28], ecx
mov dword [ebx + 0x1a2c], ecx
mov byte [ebx + 0x1a30], cl
mov dword [ebx + 0x1a34], ecx
mov dword [ebx + 0x1a3c], ecx
mov dword [ebx + 0x1a40], ecx
mov dword [ebx + 0x1a48], 0
mov word [ebx + 0x1a4c], 0
mov dword [ebx + 0x1a50], ecx
movss dword [ebx + 0x1a54], xmm0
movss dword [ebx + 0x1a58], xmm0
mov dword [ebx + 0x1a60], ecx
mov dword [ebx + 0x1a5c], ecx
mov dword [ebx + 0x1a64], ecx
mov dword [ebx + 0x1a68], ecx
mov dword [ebx + 0x1a70], ecx
mov byte [ebx + 0x1b14], cl
mov dword [ebx + 0x1b18], ecx
mov dword [ebx + 0x1b1c], ecx
mov dword [ebx + 0x1b30], ecx
mov dword [ebx + 0x1b2c], ecx
mov dword [ebx + 0x1b28], ecx
mov dword [ebx + 0x1b24], ecx
mov dword [ebx + 0x1b20], ecx
mov dword [ebx + 0x1b3c], ecx
mov dword [ebx + 0x1b38], ecx
mov dword [ebx + 0x1b34], ecx
mov dword [ebx + 0x1b40], ecx
mov dword [eax], 0x7f7fffff
mov dword [eax + 4], 0x7f7fffff
mov dword [eax + 8], 0xff7fffff
mov dword [eax + 0xc], 0xff7fffff
lea eax, [ebx + 0x1940]
and dword [ebx + 0x1b68], 0
and dword [ebx + 0x1b64], 0
and dword [ebx + 0x1c54], 0
mov dword [ebx + 0x1c80], eax
mov eax, ecx
mov dword [ebx + 0x1b54], ecx
mov dword [ebx + 0x1b60], ecx
mov dword [ebx + 0x1b5c], ecx
mov dword [ebx + 0x1b58], ecx
mov byte [ebx + 0x1b6c], cl
mov dword [ebx + 0x1b70], ecx
mov dword [ebx + 0x1b74], 0x7fffffff
mov dword [ebx + 0x1b78], 0x10000
mov word [ebx + 0x1b7c], 0
mov byte [ebx + 0x1b7e], cl
mov dword [ebx + 0x1b80], ecx
mov word [ebx + 0x1b94], 0
mov dword [ebx + 0x1b98], ecx
mov dword [ebx + 0x1b9c], ecx
mov dword [ebx + 0x1ba8], esi
mov dword [ebx + 0x1ba4], esi
mov dword [ebx + 0x1ba0], esi
mov dword [ebp - 0x1c], 0x754d2223
mov dword [ebp - 0x18], 0x666a7761
mov word [ebp - 0x14], 0x71
mov byte [ebp - 0x12], 1
xor byte [ebp + eax - 0x1c], al
inc eax
cmp eax, 9
jb 0x1001608b
and dword [ebx + 0x1d5c], 0
lea eax, [ebp - 0x1c]
mov dword [ebx + 0x1c84], eax
xorps xmm0, xmm0
mov dword [ebx + 0x1cfc], ecx
lea eax, [ebx + 0x2cd0]
mov word [ebx + 0x1d00], 0
mov dword [ebx + 0x1d04], ecx
mov dword [ebx + 0x1d08], esi
mov dword [ebx + 0x1d54], ecx
mov dword [ebx + 0x1d58], ecx
mov dword [ebx + 0x1d60], ecx
mov dword [ebx + 0x1d64], ecx
mov dword [ebx + 0x1d68], esi
mov dword [ebx + 0x1d78], ecx
mov dword [ebx + 0x1d7c], ecx
and dword [ebx + 0x2c58], 0
movss dword [ebx + 0x2c60], xmm0
movss dword [ebx + 0x2c64], xmm0
movaps xmm0, xmmword [0x1004e570]
mov dword [ebx + 0x2c3c], ecx
mov dword [ebx + 0x2c40], 0x2900000
mov byte [ebx + 0x2c54], cl
mov dword [ebx + 0x2c5c], 0x3c23d70a
mov dword [ebx + 0x2c68], ecx
movups xmmword [ebx + 0x2c78], xmm0
mov byte [ebx + 0x2c88], cl
and dword [ebx + 0x2c8c], 0
mov byte [ebx + 0x2cb4], cl
push 0x1e0
mov dword [ebx + 0x2cb8], ecx
push ecx
mov dword [ebx + 0x2cc8], ecx
push eax
mov dword [ebx + 0x2ccc], 2
call sub.VCRUNTIME140.dll_memset
and dword [ebx + 0x2eb0], 0
lea ecx, [ebx + 0x2ec4]
and dword [ebx + 0x2eb4], 0
push 0xc01
mov dword [ebx + 0x2ec0], esi
push 0
mov dword [ebx + 0x2ebc], esi
push ecx
mov dword [ebx + 0x2eb8], esi
call sub.VCRUNTIME140.dll_memset
add esp, 0x18
mov eax, ebx
call fcn.10045b9c
ret 4