Function at 0x412d01
Capabilities:
Create process on windows
Encode data using xor

Disassembly:
push 0x1a8
mov eax, 0x43c62b
call fcn.00416ea7
xor ebx, ebx
mov dword [ebp - 0x48], ebx
push 7
pop ecx
xor eax, eax
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x34], ecx
mov word [ebp - 0x48], ax
mov dword [ebp - 4], 1
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x1c], ecx
mov word [ebp - 0x30], ax
mov eax, dword [ebp + 8]
mov byte [ebp - 4], 3
sub eax, ebx
je 0x412eb9
sub eax, 1
je 0x412e3e
sub eax, 1
je 0x412dc1
sub eax, 1
jne 0x413087
mov eax, dword [0x453ad4]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
jmp 0x412d82
push ebx
push ebx
push 0x10
push dword [eax + 0x10]
call dword [sym.imp.USER32.dll_PostMessageW]
lea ecx, [ebp - 0x18]
call fcn.0041340f
mov eax, dword [ebp - 0x18]
cmp byte [eax + 0xd], 0
je 0x412d6a
push ecx
lea ecx, [ebp - 0x18]
call fcn.004120e4
mov esi, dword [0x453ad4]
mov ecx, 0x453ad4
push dword [esi + 4]
push ecx
call fcn.004134ec
push dword [ebp - 0x18]
mov dword [esi + 4], esi
mov dword [esi], esi
mov dword [esi + 8], esi
mov dword [0x453ad8], ebx
call fcn.00415eb1
pop ecx
jmp 0x413085
cmp word [0x44a552], 0
lea edi, [ebp - 0xb0]
mov esi, 0x44a544
push 0x37
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop esi
je 0x412df6
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add edx, 0x35
xor word [ebp + ecx*2 - 0xb0], dx
inc ecx
cmp ecx, 8
jl 0x412ddf
lea eax, [ebp - 0xb0]
push eax
lea ecx, [ebp - 0x48]
call fcn.00401be1
push 0xe
pop ecx
mov esi, 0x44a5e4
lea edi, [ebp - 0xf4]
rep movsd dword es:[edi], dword [esi]
push 0x37
mov ecx, ebx
movsw word es:[edi], word [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add edx, 0x35
xor word [ebp + ecx*2 - 0xf4], dx
inc ecx
cmp ecx, 0x1d
jl 0x412e1c
lea eax, [ebp - 0xf4]
jmp 0x412f2a
cmp word [0x44a746], 0
lea edi, [ebp - 0xb8]
push 6
pop ecx
mov esi, 0x44a730
rep movsd dword es:[edi], dword [esi]
push 0x37
pop esi
je 0x412e74
mov ecx, ebx
xor edx, edx
mov eax, ecx
div esi
add edx, 0x35
xor word [ebp + ecx*2 - 0xb8], dx
inc ecx
cmp ecx, 0xc
jl 0x412e5d
lea eax, [ebp - 0xb8]
push eax
lea ecx, [ebp - 0x48]
call fcn.00401be1
push 0xc
pop ecx
mov esi, 0x44a6e0
lea edi, [ebp - 0xec]
rep movsd dword es:[edi], dword [esi]
push 0x37
mov ecx, ebx
movsw word es:[edi], word [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add edx, 0x35
xor word [ebp + ecx*2 - 0xec], dx
inc ecx
cmp ecx, 0x19
jl 0x412e9a
lea eax, [ebp - 0xec]
jmp 0x412f2a
push 5
pop ecx
mov esi, str.VEWT_
lea edi, [ebp - 0xb8]
rep movsd dword es:[edi], dword [esi]
push 0x37
mov ecx, ebx
movsw word es:[edi], word [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add edx, 0x35
xor word [ebp + ecx*2 - 0xb8], dx
inc ecx
cmp ecx, 0xb
jl 0x412ed0
lea eax, [ebp - 0xb8]
push eax
lea ecx, [ebp - 0x48]
call fcn.00401be1
push 0x2f
pop ecx
mov esi, 0x44a620
lea edi, [ebp - 0x1b4]
rep movsd dword es:[edi], dword [esi]
push 0x37
mov ecx, ebx
movsw word es:[edi], word [esi]
pop esi
xor edx, edx
mov eax, ecx
div esi
add edx, 0x35
xor word [ebp + ecx*2 - 0x1b4], dx
inc ecx
cmp ecx, 0x5f
jl 0x412f0d
lea eax, [ebp - 0x1b4]
push eax
lea ecx, [ebp - 0x30]
call fcn.00401be1
push 2
push ebx
push ebx
push 0x41274b
push ebx
push 0x800e
push 0x8005
call dword [sym.imp.USER32.dll_SetWinEventHook]
mov dword [ebp - 0x18], eax
test eax, eax
je 0x413087
mov esi, str.ZFRV9
mov dword [ebp - 0xa0], 0x3c
lea edi, [ebp - 0xac]
mov dword [ebp - 0x9c], 0x40
push 0x37
pop ecx
movsd dword es:[edi], dword [esi]
xorps xmm0, xmm0
push 5
movlpd qword [ebp - 0x7c], xmm0
movlpd qword [ebp - 0x74], xmm0
movsd dword es:[edi], dword [esi]
movlpd qword [ebp - 0x6c], xmm0
mov dword [ebp - 0x98], ebx
movsw word es:[edi], word [esi]
mov esi, ebx
pop edi
xor edx, edx
mov eax, esi
div ecx
add edx, 0x35
xor word [ebp + esi*2 - 0xac], dx
inc esi
cmp esi, edi
jl 0x412f9b
cmp dword [ebp - 0x34], 8
lea eax, [ebp - 0xac]
mov dword [ebp - 0x94], eax
lea eax, [ebp - 0x48]
cmovae eax, dword [ebp - 0x48]
cmp dword [ebp - 0x1c], 8
mov dword [ebp - 0x90], eax
lea eax, [ebp - 0x30]
cmovae eax, dword [ebp - 0x30]
push ebx
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], ebx
mov dword [ebp - 0x84], edi
mov dword [ebp - 0x80], ebx
call dword [sym.imp.ole32.dll_CoInitialize]
test eax, eax
jne 0x413087
lea eax, [ebp - 0xa0]
push eax
call dword [sym.imp.SHELL32.dll_ShellExecuteExW]
cmp dword [ebp - 0x68], 0
je 0x413087
push dword [ebp - 0x68]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 7
pop ecx
xor eax, eax
lea edi, [ebp - 0x64]
rep stosd dword es:[edi], eax
push ebx
push 0x2710
push ebx
push ebx
call dword [sym.imp.USER32.dll_SetTimer]
push ebx
push ebx
mov esi, eax
lea eax, [ebp - 0x64]
push ebx
push eax
call dword [sym.imp.USER32.dll_GetMessageW]
push esi
push ebx
call dword [sym.imp.USER32.dll_KillTimer]
test eax, eax
je 0x413076
cmp dword [ebp - 0x60], 0x113
jne 0x413060
cmp dword [ebp - 0x64], 0
jne 0x413060
cmp dword [ebp - 0x5c], esi
je 0x413076
lea eax, [ebp - 0x64]
push eax
call dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [ebp - 0x64]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageW]
jmp 0x413023
push dword [ebp - 0x18]
call dword [sym.imp.USER32.dll_UnhookWinEvent]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov bl, 1
lea ecx, [ebp - 0x30]
call fcn.004018bd
lea ecx, [ebp - 0x48]
call fcn.004018bd
mov al, bl
call fcn.00416e56
ret 4