Function at 0x4064b0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
xor edx, edx
xor eax, eax
mov ebp, esp
push edi
push esi
push ebx
xor ebx, ebx
sub esp, 0x8d8
mov word [ebp - 0x87a], bx
mov dword [ebp - 0x88e], 0x25000a
mov dword [ebp - 0x88a], 0x200073
mov dword [ebp - 0x886], 0x240028
mov dword [ebp - 0x882], 0x780025
mov dword [ebp - 0x87e], 0xa0029
mov dword [ebp + eax - 0x870], edx
add eax, 4
cmp eax, 0x20
jb 0x4064fb
mov eax, dword [ebp + 8]
lea ebx, [ebp - 0x844]
mov ecx, 0xe
lea edx, [ebp - 0x40c]
mov edi, ebx
mov dword [ebp - 0x868], edx
mov dword [ebp - 0x874], eax
xor eax, eax
rep stosd dword es:[edi], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x878], 1
mov dword [ebp - 0x838], edx
mov edi, dword [sym.imp.user32.dll_SendMessageW]
mov dword [ebp - 0x850], eax
lea eax, [ebp - 0x878]
mov dword [esp + 0xc], eax
mov eax, dword [0x41b030]
mov dword [ebp - 0x864], 0x100
mov dword [ebp - 0x848], 5
mov dword [ebp - 0x834], 0x100
mov dword [ebp - 0x84c], 0xffff0002
mov dword [esp + 8], 0
mov dword [esp + 4], 0x113e
mov dword [esp], eax
call edi
sub esp, 0x10
test eax, eax
je 0x4065bb
mov eax, dword [ebp - 0x854]
test eax, eax
je 0x4065bb
mov ecx, dword [eax + 0x604]
test ecx, ecx
jne 0x4065bb
test byte [eax], 4
jne 0x4065c8
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
add eax, 0x202
lea esi, [ebp - 0x8b0]
mov dword [esp], eax
mov eax, dword [sym.imp.ole32.dll_CLSIDFromString]
mov dword [esp + 4], esi
mov dword [ebp - 0x8c8], eax
call eax
sub esp, 8
test eax, eax
js 0x4065bb
mov edx, dword [ebp + 0xc]
mov eax, dword [0x41b044]
test edx, edx
je 0x406918
mov ebx, dword [ebp + 0xc]
lea edx, [ebp - 0x8bc]
or eax, 0x10
mov dword [esp], esi
mov dword [esp + 0x14], edx
lea edx, [ebp - 0x8a0]
mov dword [ebp - 0x8a0], 0
mov dword [ebp - 0x894], 0
mov dword [ebp - 0x898], 0
mov dword [ebp - 0x89c], ebx
mov dword [ebp - 0x8bc], 0x4171dc
mov dword [esp + 0x10], 1
mov dword [esp + 0xc], edx
mov dword [esp + 8], eax
mov dword [esp + 4], 0
call dword [sym.imp.ole32.dll_CoCreateInstanceEx]
mov eax, dword [ebp - 0x8b8]
mov esi, dword [ebp - 0x8b4]
sub esp, 0x18
mov dword [ebp - 0x8c0], eax
test esi, esi
js 0x406950
mov eax, dword [ebp - 0x854]
mov edx, dword [ebp - 0x8c0]
mov dword [ebp - 0x878], 8
mov dword [ebp - 0x870], 0x10
mov dword [eax + 0x608], edx
mov dword [eax + 0x604], 1
lea eax, [ebp - 0x878]
mov dword [esp + 0xc], eax
mov eax, dword [0x41b030]
mov dword [ebp - 0x86c], 0x10
mov dword [esp + 8], 0
mov dword [esp + 4], 0x113f
mov dword [esp], eax
call edi
mov eax, dword [0x41b67c]
mov dword [ebp - 0x878], 1
sub esp, 0x10
mov dword [esp + 0xc], eax
mov eax, dword [0x41b030]
mov dword [esp + 8], 4
mov dword [esp + 4], 0x110a
mov dword [esp], eax
call edi
sub esp, 0x10
mov ebx, eax
test eax, eax
je 0x4068f8
mov dword [ebp - 0x8c4], edi
jmp 0x406759
mov eax, dword [0x41b030]
mov dword [esp + 0xc], ebx
mov dword [esp + 8], 1
mov dword [esp], eax
mov eax, dword [ebp - 0x8c4]
mov dword [esp + 4], 0x110a
call eax
sub esp, 0x10
mov ebx, eax
test eax, eax
je 0x4068f8
lea eax, [ebp - 0x878]
mov dword [ebp - 0x874], ebx
mov dword [esp + 0xc], eax
mov eax, dword [0x41b030]
mov dword [esp + 8], 0
mov dword [esp], eax
mov eax, dword [ebp - 0x8c4]
mov dword [esp + 4], 0x113e
call eax
sub esp, 0x10
test eax, eax
je 0x406728
mov eax, dword [ebp - 0x854]
test eax, eax
je 0x406728
lea esi, [ebp - 0x8b0]
add eax, 0x202
mov dword [esp + 4], esi
lea esi, [ebp - 0x60c]
mov dword [esp], eax
mov eax, dword [ebp - 0x8c8]
call eax
mov eax, dword [ebp - 0x8c0]
sub esp, 8
mov edx, dword [eax]
mov dword [esp + 8], esi
lea esi, [ebp - 0x8b0]
mov dword [esp + 4], esi
mov dword [esp], eax
call dword [edx]
sub esp, 0xc
test eax, eax
js 0x406728
mov eax, dword [ebp - 0x60c]
lea edi, [ebp - 0x20c]
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 8]
xor eax, eax
mov edx, 0x49
sub esp, 4
jmp 0x40680f
movzx edx, word [eax + str.Interface_]
mov word [edi + eax], dx
add eax, 2
test dx, dx
jne 0x406808
mov ecx, dword [ebp - 0x854]
cmp word [ebp - 0x20c], 0
mov edx, edi
lea esi, [ecx + 0x202]
je 0x406841
lea esi, [esi]
nop
add edx, 2
cmp word [edx], 0
jne 0x406838
mov eax, ecx
sub edx, ecx
neg eax
mov dword [ebp - 0x8cc], eax
mov eax, esi
nop
mov ecx, eax
add eax, 2
movzx ecx, word [ecx]
mov word [eax + edx - 0x204], cx
test cx, cx
jne 0x406850
mov dword [esp + 4], 0x60c
mov dword [esp], 1
call dword [sym.imp.ucrtbase.dll_calloc]
mov byte [eax], 0xb
mov ecx, eax
xor eax, eax
lea esi, [esi]
movzx edx, word [edi + eax]
mov word [ecx + eax + 2], dx
add eax, 2
test dx, dx
jne 0x406888
mov eax, dword [ebp - 0x8cc]
lea edx, [ecx + eax]
lea esi, [esi]
mov eax, esi
add esi, 2
movzx eax, word [eax]
mov word [esi + edx - 2], ax
test ax, ax
jne 0x4068a8
lea eax, [ebp - 0x850]
mov dword [ebp - 0x824], ecx
mov dword [esp + 0xc], eax
mov eax, dword [0x41b030]
mov dword [esp + 8], 0
mov dword [esp], eax
mov eax, dword [ebp - 0x8c4]
mov dword [esp + 4], 0x1132
call eax
sub esp, 0x10
jmp 0x406728
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.004037d0
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.00401ed0
jmp 0x4065bb
mov dword [esp + 8], eax
lea edx, [ebp - 0x8c0]
lea eax, [ebp - 0x8b0]
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], 0x4171dc
mov dword [esp + 4], 0
mov dword [esp], eax
call dword [sym.imp.ole32.dll_CoCreateInstance]
sub esp, 0x14
mov esi, eax
jmp 0x406678
mov eax, dword [0x41b03c]
lea ebx, [ebp - 0x60c]
mov edi, dword [sym.imp.user32.dll_LoadStringW]
mov dword [esp + 0xc], 0x100
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x12c
mov dword [esp], eax
call edi
lea eax, [ebp - 0x80c]
sub esp, 0x10
mov dword [esp + 8], eax
mov eax, dword [0x41b03c]
mov dword [esp + 0xc], 0x100
mov dword [esp + 4], 0x14
mov dword [esp], eax
call edi
sub esp, 0x10
cmp esi, 0x800401f5
je 0x406c65
cmp esi, 0x800401f6
jge 0x406ae0
cmp esi, 0x80040150
je 0x406ba2
cmp esi, 0x80040151
jl 0x406a98
cmp esi, 0x80040152
je 0x406c38
cmp esi, 0x80040154
jne 0x406bfd
lea ecx, [ebp - 0x20c]
mov dword [esp + 0x14], 0x100
mov dword [esp + 0x10], ecx
mov dword [ebp - 0x8c4], ecx
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], str.REGDB_E_CLASSNOTREG
lea esi, [esi]
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [sym.imp.kernel32.dll_MultiByteToWideChar]
mov ecx, dword [ebp - 0x8c4]
sub esp, 0x18
cmp word [ebp - 0x60c], 0
mov eax, ebx
je 0x406a51
lea esi, [esi]
add eax, 2
cmp word [eax], 0
jne 0x406a48
lea edx, [ebp - 0x88e]
mov dword [esp + 0xc], esi
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov dword [esp], eax
call dword [sym.imp.user32.dll_wsprintfW]
lea eax, [ebp - 0x80c]
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov eax, dword [0x41b020]
mov dword [esp + 0xc], 0x30
mov dword [esp], eax
call dword [sym.imp.user32.dll_MessageBoxW]
sub esp, 0x10
jmp 0x4065bb
cmp esi, 0x80004002
je 0x406c98
cmp esi, 0x80040111
jne 0x406bfd
lea ecx, [ebp - 0x20c]
mov dword [esp + 0x14], 0x100
mov dword [esp + 0x10], ecx
mov dword [ebp - 0x8c4], ecx
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], str.CLASS_E_CLASSNOTAVAILABLE
jmp 0x406a18
cmp esi, 0x800401fe
je 0x406b75
cmp esi, 0x800401ff
jl 0x406b30
cmp esi, 0x80070005
jne 0x406bfd
lea ecx, [ebp - 0x20c]
mov dword [esp + 0x14], 0x100
mov dword [esp + 0x10], ecx
mov dword [ebp - 0x8c4], ecx
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], str.E_ACCESSDENIED
jmp 0x406a18
cmp esi, 0x800401f8
je 0x406bd0
cmp esi, 0x800401f9
jne 0x406bfd
lea ecx, [ebp - 0x20c]
mov dword [esp + 0x14], 0x100
mov dword [esp + 0x10], ecx
mov dword [ebp - 0x8c4], ecx
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], str.CO_E_ERRORINDLL
jmp 0x406a18
lea ecx, [ebp - 0x20c]
mov dword [esp + 0x14], 0x100
mov dword [esp + 0x10], ecx
mov dword [ebp - 0x8c4], ecx
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], str.CO_E_APPDIDNTREG
jmp 0x406a18
lea ecx, [ebp - 0x20c]
mov dword [esp + 0x14], 0x100
mov dword [esp + 0x10], ecx
mov dword [ebp - 0x8c4], ecx
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], str.REGDB_E_READREGDB
jmp 0x406a18
lea ecx, [ebp - 0x20c]
mov dword [esp + 0x14], 0x100
mov dword [esp + 0x10], ecx
mov dword [ebp - 0x8c4], ecx
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], str.CO_E_DLLNOTFOUND
jmp 0x406a18
mov eax, dword [0x41b03c]
lea ecx, [ebp - 0x20c]
mov dword [esp + 0xc], 0x100
mov dword [esp + 8], ecx
mov dword [ebp - 0x8c4], ecx
mov dword [esp + 4], 0x12d
mov dword [esp], eax
call edi
mov ecx, dword [ebp - 0x8c4]
sub esp, 0x10
jmp 0x406a36
lea ecx, [ebp - 0x20c]
mov dword [esp + 0x14], 0x100
mov dword [esp + 0x10], ecx
mov dword [ebp - 0x8c4], ecx
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], str.REGDB_E_KEYMISSING
jmp 0x406a18
lea ecx, [ebp - 0x20c]
mov dword [esp + 0x14], 0x100
mov dword [esp + 0x10], ecx
mov dword [ebp - 0x8c4], ecx
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], str.CO_E_APPNOTFOUND
jmp 0x406a18
lea ecx, [ebp - 0x20c]
mov dword [esp + 0x14], 0x100
mov dword [esp + 0x10], ecx
mov dword [ebp - 0x8c4], ecx
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], str.E_NOINTERFACE
jmp 0x406a18