Function at 0x4040c0
Capabilities:
Accept command line arguments
Contain obfuscated stackstrings

Disassembly:
mov r11, rsp
sub rsp, 0x148
mov qword [rsp + 0xb8], 0xfffffffffffffffe
mov qword [r11 + 0x18], rbx
mov qword [r11 + 0x20], rsi
mov qword [r11 - 8], rdi
mov rax, qword [0x00416040]
xor rax, rsp
mov qword [rsp + 0x130], rax
mov qword [r11 - 0x68], 7
xor esi, esi
mov qword [r11 - 0x70], rsi
mov word [r11 - 0x80], si
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov rdx, rax
mov qword [rsp + 0x40], 7
mov qword [rsp + 0x38], rsi
mov word [rsp + 0x28], si
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
lea rcx, [rsp + 0x20]
call fcn.00405270
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x80]
call fcn.00401940
nop
lea r9, [rsi - 1]
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0xc0]
call fcn.00404e10
nop
cmp qword [rsp + 0xa0], 8
jb 0x404186
mov rcx, qword [rsp + 0x88]
call fcn.004065f0
mov eax, esi
cmp qword [rsp + 0xd8], rax
setne al
test eax, eax
jne 0x4041b6
cmp qword [rsp + 0xe0], 8
jb 0x4041af
mov rcx, qword [rsp + 0xc8]
call fcn.004065f0
xor eax, eax
jmp 0x404926
mov byte [rsp + 0x100], 0x6d
mov byte [rsp + 0x101], 0x6d
mov byte [rsp + 0x102], 0x76
mov byte [rsp + 0x103], 0x69
mov byte [rsp + 0x104], 0x76
mov byte [rsp + 0x105], 0x78
mov byte [rsp + 0x106], 0x6f
mov byte [rsp + 0x107], 0x2e
mov byte [rsp + 0x108], 0x74
mov byte [rsp + 0x109], 0x70
mov byte [rsp + 0x10a], 0x74
mov byte [rsp + 0x10b], 0
mov byte [rsp + 0xf8], 0x71
mov byte [rsp + 0xf9], 0x45
mov byte [rsp + 0xfa], 0x69
mov byte [rsp + 0xfb], 0x42
mov byte [rsp + 0xfc], 0x63
mov byte [rsp + 0xfd], 0x65
mov byte [rsp + 0xfe], 0x7a
mov byte [rsp + 0xff], 0
lea rax, [rsp + 0x48]
mov qword [rsp + 0x70], rax
mov ebx, 0xf
mov rdx, rbx
mov qword [rsp + 0x68], rbx
mov r8, rsi
mov qword [rsp + 0x60], rsi
mov byte [rsp + 0x50], r8b
xor eax, eax
mov rcx, 0xffffffffffffffff
lea rdi, [rsp + 0xf8]
repne scasb al, byte [rdi]
not rcx
sub rcx, 1
mov rdi, rcx
cmp rcx, 0xfffffffffffffffe
jbe 0x4042ac
call fcn.0040dc70
mov rdx, qword [rsp + 0x68]
mov r8, qword [rsp + 0x60]
cmp rdx, rdi
jae 0x4042c5
mov rdx, rdi
lea rcx, [rsp + 0x48]
call fcn.004053a0
mov rdx, qword [rsp + 0x68]
jmp 0x4042e3
test rdi, rdi
jne 0x4042e3
mov qword [rsp + 0x60], rsi
lea rax, [rsp + 0x50]
cmp rdx, 0x10
cmovae rax, qword [rsp + 0x50]
mov byte [rax], dil
jmp 0x404321
test rdi, rdi
je 0x404321
lea rcx, [rsp + 0x50]
cmp rdx, 0x10
cmovae rcx, qword [rsp + 0x50]
mov r9, rdi
lea r8, [rsp + 0xf8]
call fcn.004066a0
mov qword [rsp + 0x60], rdi
lea rax, [rsp + 0x50]
cmp qword [rsp + 0x68], 0x10
cmovae rax, qword [rsp + 0x50]
mov byte [rax + rdi], 0
mov rdx, rbx
mov qword [rsp + 0x40], rbx
mov r8, rsi
mov qword [rsp + 0x38], rsi
mov byte [rsp + 0x28], r8b
xor eax, eax
mov rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x100]
repne scasb al, byte [rdi]
not rcx
sub rcx, 1
mov rdi, rcx
cmp rcx, 0xfffffffffffffffe
jbe 0x404368
call fcn.0040dc70
mov rdx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x38]
cmp rdx, rdi
jae 0x404381
mov rdx, rdi
lea rcx, [rsp + 0x20]
call fcn.004053a0
mov rdx, qword [rsp + 0x40]
jmp 0x40439f
test rdi, rdi
jne 0x40439f
mov qword [rsp + 0x38], rsi
lea rax, [rsp + 0x28]
cmp rdx, 0x10
cmovae rax, qword [rsp + 0x28]
mov byte [rax], dil
jmp 0x4043dd
test rdi, rdi
je 0x4043dd
lea rcx, [rsp + 0x28]
cmp rdx, 0x10
cmovae rcx, qword [rsp + 0x28]
mov r9, rdi
lea r8, [rsp + 0x100]
call fcn.004066a0
mov qword [rsp + 0x38], rdi
lea rax, [rsp + 0x28]
cmp qword [rsp + 0x40], 0x10
cmovae rax, qword [rsp + 0x28]
mov byte [rax + rdi], 0
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x20]
call fcn.004013c0
mov rdi, rax
test rax, rax
jne 0x404413
cmp qword [rsp + 0xe0], 8
jb 0x40440c
mov rcx, qword [rsp + 0xc8]
call fcn.004065f0
xor eax, eax
jmp 0x404926
mov qword [rsp + 0xa0], 7
mov qword [rsp + 0x98], rsi
mov word [rsp + 0x88], 0
mov r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rsp + 0xc0]
lea rcx, [rsp + 0x80]
call fcn.00404e10
mov r8, rdi
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x70]
call fcn.00402820
lea rdx, [rsp + 0xa8]
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
mov byte [rsp + 0x110], 0x4b
mov byte [rsp + 0x111], 0x6c
mov byte [rsp + 0x112], 0x63
mov byte [rsp + 0x113], 0x7a
mov byte [rsp + 0x114], 0x66
mov byte [rsp + 0x115], 0x73
mov byte [rsp + 0x116], 0x33
mov byte [rsp + 0x117], 0x32
mov byte [rsp + 0x118], 0x2e
mov byte [rsp + 0x119], 0x6c
mov byte [rsp + 0x11a], 0x73
mov byte [rsp + 0x11b], 0x6b
mov byte [rsp + 0x11c], 0
mov byte [rsp + 0xf0], 0x4b
mov byte [rsp + 0xf1], 0x49
mov byte [rsp + 0xf2], 0x68
mov byte [rsp + 0xf3], 0x5a
mov byte [rsp + 0xf4], 0x71
mov byte [rsp + 0xf5], 0
lea rax, [rsp + 0x48]
mov qword [rsp + 0x70], rax
mov rdx, rbx
mov qword [rsp + 0x68], rbx
mov r8, rsi
mov qword [rsp + 0x60], rsi
mov byte [rsp + 0x50], r8b
xor eax, eax
mov rcx, 0xffffffffffffffff
lea rdi, [rsp + 0xf0]
repne scasb al, byte [rdi]
not rcx
sub rcx, 1
mov rdi, rcx
cmp rcx, 0xfffffffffffffffe
jbe 0x404564
call fcn.0040dc70
mov rdx, qword [rsp + 0x68]
mov r8, qword [rsp + 0x60]
cmp rdx, rdi
jae 0x40457d
mov rdx, rdi
lea rcx, [rsp + 0x48]
call fcn.004053a0
mov rdx, qword [rsp + 0x68]
jmp 0x40459b
test rdi, rdi
jne 0x40459b
mov qword [rsp + 0x60], rsi
lea rax, [rsp + 0x50]
cmp rdx, 0x10
cmovae rax, qword [rsp + 0x50]
mov byte [rax], dil
jmp 0x4045d9
test rdi, rdi
je 0x4045d9
lea rcx, [rsp + 0x50]
cmp rdx, 0x10
cmovae rcx, qword [rsp + 0x50]
mov r9, rdi
lea r8, [rsp + 0xf0]
call fcn.004066a0
mov qword [rsp + 0x60], rdi
lea rax, [rsp + 0x50]
cmp qword [rsp + 0x68], 0x10
cmovae rax, qword [rsp + 0x50]
mov byte [rdi + rax], 0
mov rdx, rbx
mov qword [rsp + 0x40], rbx
mov r8, rsi
mov qword [rsp + 0x38], rsi
mov byte [rsp + 0x28], r8b
xor eax, eax
mov rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x110]
repne scasb al, byte [rdi]
not rcx
sub rcx, 1
mov rdi, rcx
cmp rcx, 0xfffffffffffffffe
jbe 0x404620
call fcn.0040dc70
mov rdx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x38]
cmp rdx, rdi
jae 0x404639
mov rdx, rdi
lea rcx, [rsp + 0x20]
call fcn.004053a0
mov rdx, qword [rsp + 0x40]
jmp 0x404657
test rdi, rdi
jne 0x404657
mov qword [rsp + 0x38], rsi
lea rax, [rsp + 0x28]
cmp rdx, 0x10
cmovae rax, qword [rsp + 0x28]
mov byte [rax], dil
jmp 0x404695
test rdi, rdi
je 0x404695
lea rcx, [rsp + 0x28]
cmp rdx, 0x10
cmovae rcx, qword [rsp + 0x28]
mov r9, rdi
lea r8, [rsp + 0x110]
call fcn.004066a0
mov qword [rsp + 0x38], rdi
lea rax, [rsp + 0x28]
cmp qword [rsp + 0x40], 0x10
cmovae rax, qword [rsp + 0x28]
mov byte [rdi + rax], 0
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x20]
call fcn.004013c0
lea rdx, [rsp + 0xa8]
mov rcx, rax
call fcn.00403230
test eax, eax
jne 0x4046d7
cmp qword [rsp + 0xe0], 8
jb 0x4046d0
mov rcx, qword [rsp + 0xc8]
call fcn.004065f0
xor eax, eax
jmp 0x404926
mov byte [rsp + 0x120], 0x43
mov byte [rsp + 0x121], 0x6f
mov byte [rsp + 0x122], 0x67
mov byte [rsp + 0x123], 0x65
mov byte [rsp + 0x124], 0x77
mov byte [rsp + 0x125], 0x76
mov byte [rsp + 0x126], 0x33
mov byte [rsp + 0x127], 0x32
mov byte [rsp + 0x128], 0x2e
mov byte [rsp + 0x129], 0x73
mov byte [rsp + 0x12a], 0x63
mov byte [rsp + 0x12b], 0x64
mov byte [rsp + 0x12c], 0
mov byte [rsp + 0xe8], 0x73
mov byte [rsp + 0xe9], 0x4b
mov byte [rsp + 0xea], 0x50
mov byte [rsp + 0xeb], 0x52
mov byte [rsp + 0xec], 0
lea rax, [rsp + 0x48]
mov qword [rsp + 0x70], rax
mov rdx, rbx
mov qword [rsp + 0x68], rbx
mov r8, rsi
mov qword [rsp + 0x60], rsi
mov byte [rsp + 0x50], r8b
xor eax, eax
mov rcx, 0xffffffffffffffff
lea rdi, [rsp + 0xe8]
repne scasb al, byte [rdi]
not rcx
sub rcx, 1
mov rdi, rcx
cmp rcx, 0xfffffffffffffffe
jbe 0x4047b8
call fcn.0040dc70
mov rdx, qword [rsp + 0x68]
mov r8, qword [rsp + 0x60]
cmp rdx, rdi
jae 0x4047d1
mov rdx, rdi
lea rcx, [rsp + 0x48]
call fcn.004053a0
mov rdx, qword [rsp + 0x68]
jmp 0x4047ef
test rdi, rdi
jne 0x4047ef
mov qword [rsp + 0x60], rsi
lea rax, [rsp + 0x50]
cmp rdx, 0x10
cmovae rax, qword [rsp + 0x50]
mov byte [rax], dil
jmp 0x40482d
test rdi, rdi
je 0x40482d
lea rcx, [rsp + 0x50]
cmp rdx, 0x10
cmovae rcx, qword [rsp + 0x50]
mov r9, rdi
lea r8, [rsp + 0xe8]
call fcn.004066a0
mov qword [rsp + 0x60], rdi
lea rax, [rsp + 0x50]
cmp qword [rsp + 0x68], 0x10
cmovae rax, qword [rsp + 0x50]
mov byte [rax + rdi], 0
mov qword [rsp + 0x40], rbx
mov r8, rsi
mov qword [rsp + 0x38], rsi
mov byte [rsp + 0x28], r8b
xor eax, eax
mov rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x120]
repne scasb al, byte [rdi]
not rcx
sub rcx, 1
mov rdi, rcx
cmp rcx, 0xfffffffffffffffe
jbe 0x404871
call fcn.0040dc70
mov rbx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x38]
cmp rbx, rdi
jae 0x40488a
mov rdx, rdi
lea rcx, [rsp + 0x20]
call fcn.004053a0
mov rbx, qword [rsp + 0x40]
jmp 0x4048a8
test rdi, rdi
jne 0x4048a8
mov qword [rsp + 0x38], rsi
lea rax, [rsp + 0x28]
cmp rbx, 0x10
cmovae rax, qword [rsp + 0x28]
mov byte [rax], dil
jmp 0x4048e9
test rdi, rdi
je 0x4048e9
lea rcx, [rsp + 0x28]
cmp rbx, 0x10
cmovae rcx, qword [rsp + 0x28]
mov r9, rdi
lea r8, [rsp + 0x120]
mov rdx, rbx
call fcn.004066a0
mov qword [rsp + 0x38], rdi
lea rax, [rsp + 0x28]
cmp qword [rsp + 0x40], 0x10
cmovae rax, qword [rsp + 0x28]
mov byte [rax + rdi], 0
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x20]
call fcn.004013c0
lea rdx, [rsp + 0xa8]
mov rcx, rax
call fcn.00403e00
nop
cmp qword [rsp + 0xe0], 8
jb 0x404921
mov rcx, qword [rsp + 0xc8]
call fcn.004065f0
mov eax, 1
mov rcx, qword [rsp + 0x130]
xor rcx, rsp
call fcn.004063a0
mov rbx, qword [rsp + 0x160]
mov rsi, qword [rsp + 0x168]
mov rdi, qword [rsp + 0x140]
add rsp, 0x148
ret