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

Disassembly:
push 0x194
mov eax, 0x1003ed52
call fcn.1003d7b1
mov esi, ecx
mov ebx, dword [ebp + 8]
mov eax, dword [esi + 0x20]
mov dword [0x100579cc], eax
test ebx, ebx
je 0x10013357
cmp dword [ebp + 0xc], 1
jne 0x10013357
push 0x103
lea eax, [ebp - 0x117]
mov byte [ebp - 0x118], 0
push 0
push eax
call sub.VCRUNTIME140.dll_memset
xor eax, eax
lea edi, [ebp - 0x148]
stosd dword es:[edi], eax
add esp, 0xc
stosd dword es:[edi], eax
push 0xf
pop ecx
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [ebp - 0x134], ecx
xor eax, eax
mov dword [ebp - 4], eax
cmp dword [0x10055484], ecx
mov dword [ebp - 0x138], eax
mov byte [ebp - 0x148], al
mov eax, 0x10055470
cmova eax, dword [0x10055470]
push eax
lea eax, [ebp - 0x118]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov cl, 0x45
mov dword [ebp - 0x124], 0x31350a45
mov dword [ebp - 0x120], 0x6b2b2a2c
xor eax, eax
mov dword [ebp - 0x11c], 0x2c2b0c
xor byte [ebp + eax - 0x123], cl
inc eax
cmp eax, 0xa
jae 0x10012e1a
mov cl, byte [ebp - 0x124]
jmp 0x10012e05
lea eax, [ebp - 0x123]
mov byte [ebp - 0x119], 0
push eax
lea eax, [ebp - 0x118]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
cmp dword [esi], 0
je 0x10012e4a
cmp ebx, dword [esi]
jne 0x10012e4a
mov ecx, esi
call fcn.100134c1
jmp 0x10013348
cmp dword [esi + 4], 0
je 0x100130b9
cmp ebx, dword [esi + 4]
jne 0x100130b9
cmp dword [0x10057bfc], 1
jne 0x10013348
mov ecx, dword [esi + 0x18]
mov byte [0x1005792e], 1
call fcn.1000cb75
push eax
lea ecx, [ebp - 0x130]
call fcn.10003928
xor ebx, ebx
mov byte [ebp - 4], 1
mov edi, ebx
cmp dword [ebp - 0x120], ebx
jbe 0x10012ec6
cmp dword [ebp - 0x11c], 0xf
lea eax, [ebp - 0x130]
cmova eax, dword [ebp - 0x130]
movsx eax, byte [eax + edi]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
pop ecx
test eax, eax
je 0x10012fce
inc edi
cmp edi, dword [ebp - 0x120]
jb 0x10012e95
mov ecx, dword [esi + 0x18]
call fcn.1000cb75
cmp dword [eax + 0x14], 0xf
jbe 0x10012ed6
mov eax, dword [eax]
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
mov dword [esi + 0x1c], eax
pop ecx
cmp eax, 0x64
jle 0x10012fc3
movaps xmm0, xmmword [0x1004d4e0]
mov ecx, ebx
movups xmmword [ebp - 0x15c], xmm0
mov word [ebp - 0x14c], 0x667b
mov byte [ebp - 0x14a], bl
mov al, byte [ebp - 0x15c]
xor byte [ebp + ecx - 0x15b], al
inc ecx
cmp ecx, 0x11
jb 0x10012f09
lea eax, [ebp - 0x15b]
mov byte [ebp - 0x14a], bl
push eax
lea ecx, [ebp - 0x188]
call fcn.10003d99
mov byte [ebp - 4], 4
mov ecx, ebx
movaps xmm0, xmmword [0x1004d330]
movups xmmword [ebp - 0x16c], xmm0
mov dword [ebp - 0x14c], 0x535c17
movaps xmm0, xmmword [0x1004cc60]
movups xmmword [ebp - 0x15c], xmm0
mov al, byte [ebp - 0x16c]
xor byte [ebp + ecx - 0x16b], al
inc ecx
cmp ecx, 0x22
jb 0x10012f60
lea eax, [ebp - 0x16b]
mov byte [ebp - 0x149], bl
push eax
lea ecx, [ebp - 0x1a0]
call fcn.10003d99
push ebx
push ecx
mov byte [ebp - 4], 5
lea eax, [ebp - 0x188]
and dword [esp], 0
push ebx
push ebx
push ebx
push eax
lea eax, [ebp - 0x1a0]
push eax
push eax
call dword [0x1004b680]
lea ecx, [ebp - 0x1a0]
call fcn.10003b97
lea ecx, [ebp - 0x188]
call fcn.10003b97
lea ecx, [ebp - 0x130]
jmp 0x10013343
movaps xmm0, xmmword [0x1004d320]
mov ecx, ebx
movups xmmword [ebp - 0x15c], xmm0
mov word [ebp - 0x14c], 0x564b
mov byte [ebp - 0x14a], bl
mov al, byte [ebp - 0x15c]
xor byte [ebp + ecx - 0x15b], al
inc ecx
cmp ecx, 0x11
jb 0x10012fed
lea eax, [ebp - 0x15b]
mov byte [ebp - 0x14a], bl
push eax
lea ecx, [ebp - 0x188]
call fcn.10003d99
mov byte [ebp - 4], 2
mov ecx, ebx
movaps xmm0, xmmword [0x1004d250]
movups xmmword [ebp - 0x170], xmm0
mov dword [ebp - 0x150], 0xf08071f
movaps xmm0, xmmword [0x1004cb00]
movups xmmword [ebp - 0x160], xmm0
mov dword [ebp - 0x14c], 0x4b4418
mov al, byte [ebp - 0x170]
xor byte [ebp + ecx - 0x16f], al
inc ecx
cmp ecx, 0x26
jb 0x1001304e
lea eax, [ebp - 0x16f]
mov byte [ebp - 0x149], bl
push eax
lea ecx, [ebp - 0x1a0]
call fcn.10003d99
push ebx
push ecx
mov byte [ebp - 4], 3
lea eax, [ebp - 0x188]
and dword [esp], 0
push ebx
push ebx
push ebx
push eax
lea eax, [ebp - 0x1a0]
push eax
push eax
call dword [0x1004b680]
lea ecx, [ebp - 0x1a0]
call fcn.10003b97
lea ecx, [ebp - 0x188]
call fcn.10003b97
mov dword [esi + 0x1c], ebx
jmp 0x10012fc3
cmp dword [esi + 8], 0
je 0x100130c8
cmp ebx, dword [esi + 8]
je 0x10013348
cmp dword [esi + 0xc], 0
je 0x10013197
cmp ebx, dword [esi + 0xc]
jne 0x10013197
xor edx, edx
lea ecx, [ebp - 0x188]
cmp dword [0x10057bfc], 1
setne dl
mov dword [0x10057bfc], edx
call fcn.1000b3af
mov ecx, eax
cmp dword [ecx + 0x14], 0xf
jbe 0x10013102
mov ecx, dword [ecx]
xor ebx, ebx
mov dword [ebp - 0x120], 0x17162263
mov dl, 0x63
mov word [ebp - 0x11c], 0xc
mov eax, ebx
xor byte [ebp + eax - 0x11f], dl
inc eax
cmp eax, 4
jae 0x10013130
mov dl, byte [ebp - 0x120]
jmp 0x1001311b
mov byte [ebp - 0x11b], bl
mov dl, 0x79
mov dword [ebp - 0x158], 0x1c102979
mov eax, ebx
mov dword [ebp - 0x154], 0x13c1c1a
mov dword [ebp - 0x150], 0x1718111a
mov word [ebp - 0x14c], 0x1c1e
mov byte [ebp - 0x14a], bl
xor byte [ebp + eax - 0x157], dl
inc eax
cmp eax, 0xd
jae 0x1001317c
mov dl, byte [ebp - 0x158]
jmp 0x10013167
lea eax, [ebp - 0x118]
push eax
lea eax, [ebp - 0x11f]
push ecx
push eax
lea eax, [ebp - 0x157]
push eax
jmp 0x10013331
cmp dword [esi + 0x10], 0
je 0x10013267
cmp ebx, dword [esi + 0x10]
jne 0x10013267
xor edx, edx
lea ecx, [ebp - 0x188]
cmp dword [0x10057c00], 1
setne dl
mov dword [0x10057c00], edx
call fcn.1000b3af
mov ecx, eax
cmp dword [ecx + 0x14], 0xf
jbe 0x100131d1
mov ecx, dword [ecx]
xor ebx, ebx
mov dword [ebp - 0x124], 0x3f240350
mov dl, 0x50
mov dword [ebp - 0x120], 0x3e193b33
mov word [ebp - 0x11c], 0x3e
mov eax, ebx
xor byte [ebp + eax - 0x123], dl
inc eax
cmp eax, 8
jae 0x10013209
mov dl, byte [ebp - 0x124]
jmp 0x100131f4
mov byte [ebp - 0x11b], bl
mov dl, 0x1b
mov dword [ebp - 0x158], 0x7e724b1b
mov eax, ebx
mov dword [ebp - 0x154], 0x635e7e78
mov dword [ebp - 0x150], 0x757a7378
mov word [ebp - 0x14c], 0x7e7c
mov byte [ebp - 0x14a], bl
xor byte [ebp + eax - 0x157], dl
inc eax
cmp eax, 0xd
jae 0x10013255
mov dl, byte [ebp - 0x158]
jmp 0x10013240
lea eax, [ebp - 0x118]
push eax
lea eax, [ebp - 0x123]
jmp 0x10013189
cmp dword [esi + 0x14], 0
je 0x10013348
cmp ebx, dword [esi + 0x14]
jne 0x10013348
xor edx, edx
lea ecx, [ebp - 0x188]
cmp dword [0x10057c04], 1
setne dl
mov dword [0x10057c04], edx
call fcn.1000b3af
mov ecx, eax
cmp dword [ecx + 0x14], 0xf
jbe 0x100132a1
mov ecx, dword [ecx]
xor ebx, ebx
mov dword [ebp - 0x120], 0x353c0a59
mov dl, 0x59
mov word [ebp - 0x11c], 0x35
mov eax, ebx
xor byte [ebp + eax - 0x11f], dl
inc eax
cmp eax, 4
jae 0x100132cf
mov dl, byte [ebp - 0x120]
jmp 0x100132ba
mov byte [ebp - 0x11b], bl
mov dl, 0x73
mov dword [ebp - 0x158], 0x161a2373
mov eax, ebx
mov dword [ebp - 0x154], 0xb361610
mov dword [ebp - 0x150], 0x1d121b10
mov word [ebp - 0x14c], 0x1614
mov byte [ebp - 0x14a], bl
xor byte [ebp + eax - 0x157], dl
inc eax
cmp eax, 0xd
jae 0x1001331b
mov dl, byte [ebp - 0x158]
jmp 0x10013306
lea eax, [ebp - 0x118]
push eax
push ecx
lea eax, [ebp - 0x11f]
push eax
lea ecx, [ebp - 0x157]
push ecx
mov byte [ebp - 0x14a], bl
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x188]
call fcn.10003b97
lea ecx, [ebp - 0x148]
call fcn.10003b97
mov al, 1
jmp 0x10013359
xor al, al
call fcn.1003d76f
ret 8