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

Disassembly:
push 0x158
mov eax, 0x10030ae6
call fcn.1002fc16
mov esi, ecx
mov ebx, dword [ebp + 8]
mov eax, dword [esi + 0x10]
mov dword [0x1003fd54], eax
test ebx, ebx
je 0x1000f2e9
cmp dword [ebp + 0xc], 1
je 0x1000ec21
cmp dword [ebp + 0xc], 4
je 0x1000ec21
cmp dword [ebp + 0xc], 0x100
jne 0x1000f2e9
push 0x103
lea eax, [ebp - 0x113]
mov byte [ebp - 0x114], 0
push 0
push eax
call sub.VCRUNTIME140.dll_memset
xor eax, eax
lea edi, [ebp - 0x12c]
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 - 0x118], ecx
xor eax, eax
mov dword [ebp - 4], eax
cmp dword [0x1003f47c], ecx
mov dword [ebp - 0x11c], eax
mov byte [ebp - 0x12c], al
mov eax, 0x1003f468
cmova eax, dword [0x1003f468]
push eax
lea eax, [ebp - 0x114]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov cl, 0x15
mov dword [ebp - 0x144], 0x61655a15
mov dword [ebp - 0x140], 0x3b7b7a7c
xor eax, eax
mov dword [ebp - 0x13c], 0x7c7b5c
xor byte [ebp + eax - 0x143], cl
inc eax
cmp eax, 0xa
jae 0x1000ecbb
mov cl, byte [ebp - 0x144]
jmp 0x1000eca6
lea eax, [ebp - 0x143]
mov byte [ebp - 0x139], 0
push eax
lea eax, [ebp - 0x114]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
cmp dword [esi], 0
je 0x1000ed99
cmp ebx, dword [esi]
jne 0x1000ed99
xor edx, edx
lea ecx, [ebp - 0x164]
cmp dword [0x1003ff38], 1
setne dl
mov dword [0x1003ff38], edx
mov byte [0x1003fcaf], dl
call fcn.10007034
mov edx, eax
cmp dword [edx + 0x14], 0xf
jbe 0x1000ed14
mov edx, dword [edx]
push 0x62
pop ecx
mov bl, 0xb
mov word [ebp - 0x144], 0x580b
mov byte [ebp - 0x142], 0x60
xor eax, eax
mov byte [ebp - 0x141], cl
mov dword [ebp - 0x140], 0x794a6767
mov word [ebp - 0x13c], 0x6a6e
mov byte [ebp - 0x13a], 0
xor byte [ebp + eax - 0x143], bl
inc eax
cmp eax, 9
jae 0x1000ed60
mov bl, byte [ebp - 0x144]
jmp 0x1000ed4b
xor ebx, ebx
mov byte [ebp - 0x134], cl
mov byte [ebp - 0x13a], bl
mov eax, ebx
mov dword [ebp - 0x133], 0x1110b2f
mov byte [ebp - 0x12f], bl
xor byte [ebp + eax - 0x133], cl
inc eax
cmp eax, 4
jae 0x1000f2a1
mov cl, byte [ebp - 0x134]
jmp 0x1000ed80
cmp dword [esi + 4], 0
je 0x1000ee97
cmp ebx, dword [esi + 4]
jne 0x1000ee97
mov esi, dword [0x1003fc20]
xor eax, eax
cmp dword [0x1003ff3c], 1
setne al
mov dword [0x1003ff3c], eax
test esi, esi
je 0x1000edfb
mov esi, dword [esi + 0xc]
test esi, esi
je 0x1000edfb
test eax, eax
je 0x1000edf1
cmp dword [esi], 0
je 0x1000edfb
push 4
push dword [esi]
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1000edfb
mov ecx, dword [esi]
push 1
call dword [0x10037b98]
jmp 0x1000edfb
sub esp, 0xc
mov ecx, esi
call fcn.1000c04c
mov edx, dword [0x1003ff3c]
lea ecx, [ebp - 0x164]
call fcn.10007034
mov ecx, eax
cmp dword [ecx + 0x14], 0xf
jbe 0x1000ee16
mov ecx, dword [ecx]
xor ebx, ebx
mov dword [ebp - 0x144], 0x2b200245
mov dl, 0x45
mov dword [ebp - 0x140], 0x2c13202c
mov dword [ebp - 0x13c], 0x29272c36
mov eax, ebx
mov word [ebp - 0x138], 0x20
xor byte [ebp + eax - 0x143], dl
inc eax
cmp eax, 0xc
jae 0x1000ee58
mov dl, byte [ebp - 0x144]
jmp 0x1000ee43
mov byte [ebp - 0x137], bl
mov dl, 0x70
mov dword [ebp - 0x134], 0x3193d70
mov eax, ebx
mov word [ebp - 0x130], 0x13
xor byte [ebp + eax - 0x133], dl
inc eax
cmp eax, 4
jae 0x1000ee8a
mov dl, byte [ebp - 0x134]
jmp 0x1000ee75
lea eax, [ebp - 0x114]
push eax
push ecx
jmp 0x1000f2a9
cmp dword [esi + 8], 0
je 0x1000ef43
cmp ebx, dword [esi + 8]
jne 0x1000ef43
xor edx, edx
lea ecx, [ebp - 0x164]
cmp dword [0x1003ff44], 1
setne dl
mov dword [0x1003ff44], edx
call fcn.10007034
mov edx, eax
cmp dword [edx + 0x14], 0xf
jbe 0x1000eed1
mov edx, dword [edx]
push 0xa
mov bl, 0x73
mov dword [ebp - 0x144], 0x1d162173
mov dword [ebp - 0x140], 0x30011617
xor eax, eax
mov dword [ebp - 0x13c], 0x160312
pop ecx
xor byte [ebp + eax - 0x143], bl
inc eax
cmp eax, ecx
jae 0x1000ef0a
mov bl, byte [ebp - 0x144]
jmp 0x1000eef6
xor ebx, ebx
mov byte [ebp - 0x134], cl
mov byte [ebp - 0x139], bl
mov eax, ebx
mov dword [ebp - 0x133], 0x69796347
mov byte [ebp - 0x12f], bl
xor byte [ebp + eax - 0x133], cl
inc eax
cmp eax, 4
jae 0x1000f2a1
mov cl, byte [ebp - 0x134]
jmp 0x1000ef2a
cmp dword [esi + 0xc], 0
je 0x1000f00d
cmp ebx, dword [esi + 0xc]
jne 0x1000f00d
xor edx, edx
lea ecx, [ebp - 0x164]
cmp dword [0x1003ff48], 1
setne dl
mov dword [0x1003ff48], edx
call fcn.10007034
mov ecx, eax
cmp dword [ecx + 0x14], 0xf
jbe 0x1000ef7d
mov ecx, dword [ecx]
push 0x5c
pop ebx
mov byte [ebp - 0x140], bl
mov dl, 0x19
xor ebx, ebx
mov dword [ebp - 0x148], 0x77784b19
mov dword [ebp - 0x144], 0x7e777072
mov eax, ebx
mov dword [ebp - 0x13f], 0x7a7c7f7f
mov word [ebp - 0x13b], 0x6d
xor byte [ebp + eax - 0x147], dl
inc eax
cmp eax, 0xd
jae 0x1000efc8
mov dl, byte [ebp - 0x148]
jmp 0x1000efb3
mov byte [ebp - 0x13a], bl
mov dl, 0x17
mov dword [ebp - 0x134], 0x647e5a17
mov eax, ebx
mov word [ebp - 0x130], 0x74
xor byte [ebp + eax - 0x133], dl
inc eax
cmp eax, 4
jae 0x1000effa
mov dl, byte [ebp - 0x134]
jmp 0x1000efe5
lea eax, [ebp - 0x114]
push eax
push ecx
lea eax, [ebp - 0x147]
jmp 0x1000f2af
mov ecx, dword [esi + 0x14]
test ecx, ecx
je 0x1000f1ab
cmp ebx, ecx
jne 0x1000f1ab
call fcn.10008d62
mov edi, eax
cmp edi, 0x17
ja 0x1000f2ce
cmp edi, dword [0x1003ff40]
je 0x1000f2ce
mov dword [0x1003ff40], edi
mov edx, edi
mov ecx, dword [esi + 0x14]
call fcn.10008d3f
xor ebx, ebx
mov ecx, ebx
push edi
cmp edi, 0xa
jge 0x1000f092
movaps xmm0, xmmword [str._ZVeoRVe]
movups xmmword [ebp - 0x14c], xmm0
mov dword [ebp - 0x13c], 0xb015f57
mov word [ebp - 0x138], 0xb
mov al, byte [ebp - 0x14c]
xor byte [ebp + ecx - 0x14b], al
inc ecx
cmp ecx, 0x14
jb 0x1000f077
mov byte [ebp - 0x137], bl
jmp 0x1000f0c9
movaps xmm0, xmmword [0x10037f90]
movups xmmword [ebp - 0x14c], xmm0
mov dword [ebp - 0x13c], 0x4e4e441a
mov byte [ebp - 0x138], bl
mov al, byte [ebp - 0x14c]
xor byte [ebp + ecx - 0x14b], al
inc ecx
cmp ecx, 0x13
jb 0x1000f0b0
mov byte [ebp - 0x138], bl
sub esp, 0x18
lea eax, [ebp - 0x14b]
mov ecx, esp
push eax
call fcn.10003ec3
lea eax, [ebp - 0x164]
push eax
call fcn.10003d99
add esp, 0x20
lea ecx, [ebp - 0x12c]
push eax
call fcn.10004988
lea ecx, [ebp - 0x164]
call fcn.100026bd
mov ecx, dword [esi + 0x1c]
lea edx, [ebp - 0x12c]
call fcn.10008e24
push ecx
push edi
call fcn.1000f5fa
mov edx, dword [0x1003ff40]
lea ecx, [ebp - 0x164]
call fcn.10007034
mov ecx, eax
cmp dword [ecx + 0x14], 0xf
jbe 0x1000f130
mov ecx, dword [ecx]
mov dl, 0x29
mov dword [ebp - 0x140], 0x44486e29
mov dword [ebp - 0x13c], 0x44407d4c
mov eax, ebx
mov word [ebp - 0x138], 0x4c
xor byte [ebp + eax - 0x13f], dl
inc eax
cmp eax, 8
jae 0x1000f166
mov dl, byte [ebp - 0x140]
jmp 0x1000f151
mov byte [ebp - 0x137], bl
mov dl, 0x2e
mov dword [ebp - 0x134], 0x5d47632e
mov eax, ebx
mov word [ebp - 0x130], 0x4d
xor byte [ebp + eax - 0x133], dl
inc eax
cmp eax, 4
jae 0x1000f198
mov dl, byte [ebp - 0x134]
jmp 0x1000f183
lea eax, [ebp - 0x114]
push eax
push ecx
lea eax, [ebp - 0x13f]
jmp 0x1000f2af
mov ecx, dword [esi + 0x18]
test ecx, ecx
je 0x1000f2ce
cmp ebx, ecx
jne 0x1000f2ce
call fcn.10008d62
mov edi, eax
cmp edi, 0x14
ja 0x1000f2ce
cmp edi, dword [0x1003ff4c]
je 0x1000f2ce
mov dword [0x1003ff4c], edi
mov edx, edi
mov ecx, dword [esi + 0x18]
call fcn.10008d3f
mov ecx, dword [esi + 0x20]
mov edx, edi
call fcn.10008e47
movd xmm0, dword [0x1003ff4c]
cvtdq2ps xmm0, xmm0
addss xmm0, dword [0x10037c60]
movss dword [0x1003e0a4], xmm0
call fcn.1000e7f4
mov edx, dword [0x1003ff4c]
lea ecx, [ebp - 0x164]
call fcn.10007034
mov edx, eax
cmp dword [edx + 0x14], 0xf
jbe 0x1000f22f
mov edx, dword [edx]
push 0x5c
pop ebx
mov byte [ebp - 0x144], bl
xor eax, eax
mov dword [ebp - 0x143], 0x39313d1f
mov dword [ebp - 0x13f], 0x3d0e3d2e
mov dword [ebp - 0x13b], 0x393b32
xor byte [ebp + eax - 0x143], bl
inc eax
cmp eax, 0xb
jae 0x1000f26d
mov bl, byte [ebp - 0x144]
jmp 0x1000f258
xor ebx, ebx
mov dword [ebp - 0x134], 0x564c6825
mov byte [ebp - 0x138], bl
mov cl, 0x25
mov word [ebp - 0x130], 0x46
mov eax, ebx
xor byte [ebp + eax - 0x133], cl
inc eax
cmp eax, 4
jae 0x1000f2a1
mov cl, byte [ebp - 0x134]
jmp 0x1000f28c
lea eax, [ebp - 0x114]
push eax
push edx
lea eax, [ebp - 0x143]
push eax
lea eax, [ebp - 0x133]
mov byte [ebp - 0x12f], bl
push eax
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x164]
call fcn.100026bd
mov edx, dword [ebp - 0x118]
cmp edx, 0xf
jbe 0x1000f2e5
mov ecx, dword [ebp - 0x12c]
inc edx
call fcn.10002690
mov al, 1
jmp 0x1000f2eb
xor al, al
call fcn.1002fbd4
ret 8