Function at 0x1002c410
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10059097
mov eax, dword fs:[0]
push eax
sub esp, 0x104
mov eax, dword [0x10072f40]
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 - 0x108], ecx
mov eax, dword [ebp + 0xc]
lea ecx, [ebp - 0xe8]
mov esi, dword [ebp + 8]
xorps xmm0, xmm0
mov dword [ebp - 0x10c], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0xfc], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0xec], 0
push 0x29
mov dword [ebp - 0x100], eax
mov eax, dword [ebp + 0x1c]
push str._hidvid_1532pid_0116col0171c1a20d
mov dword [ebp - 0x110], eax
movups xmmword [ebp - 0xe8], xmm0
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0xd4], 0
call fcn.10001e10
mov dword [ebp - 4], 0
mov ecx, esi
xorps xmm0, xmm0
mov dword [ebp - 0x30], 0
movups xmmword [ebp - 0x40], xmm0
mov dword [ebp - 0x2c], 0
lea edx, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1002c4d0
sub ecx, edx
sar ecx, 1
push ecx
push esi
lea ecx, [ebp - 0x40]
call fcn.10001e10
mov byte [ebp - 4], 1
xorps xmm0, xmm0
xor eax, eax
mov dword [ebp - 0x60], 0
movups xmmword [ebp - 0x70], xmm0
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 7
mov word [ebp - 0x70], ax
mov byte [ebp - 4], 2
movups xmmword [ebp - 0x58], xmm0
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], 7
mov word [ebp - 0x58], ax
mov byte [ebp - 4], 3
mov dword [ebp - 0xa4], eax
movups xmmword [ebp - 0xb8], xmm0
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], 7
mov dword [ebp - 0xa8], eax
mov word [ebp - 0xb8], ax
mov byte [ebp - 4], 4
mov dword [ebp - 0x8c], eax
movups xmmword [ebp - 0xa0], xmm0
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], 7
mov dword [ebp - 0x90], eax
mov word [ebp - 0xa0], ax
mov byte [ebp - 4], 5
mov dword [ebp - 0x74], eax
movups xmmword [ebp - 0x88], xmm0
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], 7
mov dword [ebp - 0x78], eax
mov word [ebp - 0x88], ax
mov byte [ebp - 4], 6
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0xf0], esp
push 0xc
movups xmmword [ecx], xmm0
push str._hidvid_
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
call fcn.10001e10
mov byte [ebp - 4], 7
sub esp, 0x18
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
mov esi, dword [ebp - 0x30]
mov edi, esp
cmovae eax, dword [ebp - 0x40]
xorps xmm0, xmm0
mov dword [ebp - 0xf4], esp
mov dword [ebp - 0x104], eax
movups xmmword [edi], xmm0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0
cmp esi, 0x7ffffffe
ja 0x1002cdf6
mov dword [edi + 0x14], 7
cmp esi, 8
jae 0x1002c632
push 0x10
push eax
push edi
mov dword [edi + 0x10], esi
call sub.VCRUNTIME140.dll_memmove
jmp 0x1002c67a
or esi, 7
cmp esi, 0x7ffffffe
jbe 0x1002c644
mov esi, SysReAllocString
jmp 0x1002c64e
mov eax, 0xa
cmp esi, eax
cmovb esi, eax
lea eax, [esi + 1]
mov ecx, edi
push eax
call fcn.10006060
mov ecx, dword [ebp - 0x30]
mov dword [edi + 0x14], esi
mov esi, ecx
mov dword [edi + 0x10], ecx
mov dword [edi], eax
lea ecx, [esi*2 + 2]
push ecx
push dword [ebp - 0x104]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [ebp - 4], 8
mov byte [ebp - 4], 6
mov edi, dword [ebp - 0x108]
mov ecx, edi
call fcn.100270a0
test eax, eax
je 0x1002cb64
mov byte [ebp - 4], 9
xorps xmm0, xmm0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
movups xmmword [ebp - 0x28], xmm0
cmp esi, 0xc
jb 0x1002cdfb
lea eax, [esi - 0xc]
mov ecx, 4
cmp eax, ecx
cmovb ecx, eax
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push ecx
add eax, 0x18
lea ecx, [ebp - 0x28]
push eax
call fcn.10001e10
movups xmm0, xmmword [ebp - 0x28]
xor eax, eax
mov dword [ebp - 0xec], 1
mov word [ebp - 0x70], ax
mov esi, 1
movups xmmword [ebp - 0x70], xmm0
mov dword [ebp - 0x60], 0
movq xmm0, qword [ebp - 0x18]
mov dword [ebp - 0xec], esi
and esi, 0xfffffffe
mov dword [ebp - 0x5c], 7
movq qword [ebp - 0x60], xmm0
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
mov dword [ebp - 0xec], esi
mov byte [ebp - 4], 6
xorps xmm0, xmm0
push 0x10
sub esp, 0x18
mov dword [ebp - 0x18], eax
mov ecx, esp
mov dword [ebp - 0xf4], esp
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
push 5
movups xmmword [ecx], xmm0
push str.pid_
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
call fcn.10001e10
mov byte [ebp - 4], 0xa
sub esp, 0x18
lea eax, [ebp - 0x40]
mov dword [ebp - 0xf0], esp
mov ecx, esp
push eax
call fcn.100121a0
mov byte [ebp - 4], 0xb
mov byte [ebp - 4], 6
mov ecx, edi
call fcn.100270a0
test eax, eax
je 0x1002cb64
mov byte [ebp - 4], 0xc
xorps xmm0, xmm0
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
movups xmmword [ebp - 0x28], xmm0
cmp eax, 0x15
jb 0x1002cdfb
add eax, 0xffffffeb
mov ecx, 4
cmp eax, 4
cmovb ecx, eax
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push ecx
add eax, 0x2a
lea ecx, [ebp - 0x28]
push eax
call fcn.10001e10
or esi, 2
xor eax, eax
mov dword [ebp - 0xec], esi
and esi, 0xfffffffd
movups xmm0, xmmword [ebp - 0x28]
mov word [ebp - 0x58], ax
mov dword [ebp - 0x48], 0
movups xmmword [ebp - 0x58], xmm0
mov dword [ebp - 0x44], 7
movq xmm0, qword [ebp - 0x18]
movq qword [ebp - 0x48], xmm0
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
mov dword [ebp - 0xec], esi
mov byte [ebp - 4], 6
xorps xmm0, xmm0
push 0x19
sub esp, 0x18
mov dword [ebp - 0x18], eax
mov ecx, esp
mov dword [ebp - 0xf4], esp
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
push 4
movups xmmword [ecx], xmm0
push str.mi_
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
call fcn.10001e10
mov byte [ebp - 4], 0xd
sub esp, 0x18
lea eax, [ebp - 0x40]
mov dword [ebp - 0xf0], esp
mov ecx, esp
push eax
call fcn.100121a0
mov byte [ebp - 4], 0xe
mov byte [ebp - 4], 6
mov ecx, edi
call fcn.100270a0
cmp eax, 1
je 0x1002cb64
push 1
push 0x1005eec0
lea ecx, [ebp - 0xb8]
call fcn.10033320
push 0x19
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0xf4], esp
push str.col
call fcn.10012250
mov byte [ebp - 4], 0xf
sub esp, 0x18
lea eax, [ebp - 0x40]
mov dword [ebp - 0xf0], esp
mov ecx, esp
push eax
call fcn.100121a0
mov byte [ebp - 4], 0x10
mov byte [ebp - 4], 6
mov ecx, edi
call fcn.100270a0
test eax, eax
je 0x1002cb64
mov byte [ebp - 4], 0x11
xorps xmm0, xmm0
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
movups xmmword [ebp - 0x28], xmm0
cmp eax, 0x1d
jb 0x1002cdfb
add eax, 0xffffffe3
mov ecx, 2
cmp eax, ecx
cmovb ecx, eax
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push ecx
add eax, 0x3a
lea ecx, [ebp - 0x28]
push eax
call fcn.10001e10
lea eax, [ebp - 0x28]
or esi, 4
push eax
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0xec], esi
call fcn.10018160
and esi, 0xfffffffb
mov dword [ebp - 0xec], esi
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x14]
cmp ecx, 8
jb 0x1002c992
mov edx, dword [ebp - 0x28]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1002c988
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002cdaa
push ecx
push edx
call fcn.1005024f
add esp, 8
xor eax, eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
mov byte [ebp - 4], 0x12
xorps xmm0, xmm0
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xbc], eax
mov eax, dword [ebp - 0x30]
movups xmmword [ebp - 0xd0], xmm0
cmp eax, 0x22
jb 0x1002cdfb
add eax, 0xffffffde
mov ecx, 7
cmp eax, ecx
cmovb ecx, eax
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push ecx
add eax, 0x44
lea ecx, [ebp - 0xd0]
push eax
call fcn.10001e10
lea eax, [ebp - 0xd0]
or esi, 8
push eax
lea ecx, [ebp - 0x88]
mov dword [ebp - 0xec], esi
call fcn.10018160
and esi, 0xfffffff7
mov dword [ebp - 0xec], esi
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0xbc]
cmp ecx, 8
jb 0x1002ca5c
mov edx, dword [ebp - 0xd0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1002ca52
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002cdaa
push ecx
push edx
call fcn.1005024f
add esp, 8
sub esp, 0x18
mov dword [ebp - 0xc0], 0
xor eax, eax
mov dword [ebp - 0xf4], esp
mov word [ebp - 0x1374aad0], ax
push ebp
mov ebp, esp
mov ecx, dword [eax + 8]
test ecx, ecx
jne 0x1002cb66
mov ecx, dword [eax + 0x10]
dec eax
adc byte [ebx + 0x54390c50], cl
and al, 0xc
mov edx, dword [eax + 0xc]
cmp dword [esp + 0xc], edx
jb 0x1002cb77
add edx, ecx
cmp dword [esp + 0xc], edx
jb 0x1002cb81
inc edi
add eax, 0x28
cmp edi, esi
jb 0x1002cb5c
xor eax, eax
pop edi
pop esi
ret
xor al, 0x8d
inc ebp
test al, 0x50
call fcn.1002cb14
mov esi, dword [ebp + 0xc]
push eax
push esi
push dword [ebp + 8]
call fcn.1002cac9
add esp, 0x10
lea ecx, [ebp - 0xb0]
push ecx
call eax
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0xac]
xor edx, edx
div ecx
xor edx, edx
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 8]
div ecx
test edx, edx
je 0x1002cdf2
inc dword [ebp - 0x8c]
imul ecx, dword [ebp - 0x8c]
mov dword [ebp + 0xc], ecx
mov byte [ebp - 0x40], bl
mov byte [ebp - 0x3f], bl
mov byte [ebp - 0x3e], 0xec
invalid
or al, 0x88
pop ebp
ror byte [eax + 0x45c6c15d], 0xc2
in al, dx
mov byte [ebp - 0x3d], bl
mov byte [ebp - 0x3c], 0x45
invalid
inc ebp
invalid