Function at 0x140002ee0
Capabilities:
Accept command line arguments

Disassembly:
mov qword [rsp + 8], rcx
sub rsp, 0x288
mov qword [rsp + 0xc8], 0xfffffffffffffffe
mov rax, qword [0x140277970]
xor rax, rsp
mov qword [rsp + 0x278], rax
mov eax, 2
imul rax, rax, 0x10
mov ecx, VarBstrFromDisp
mov word [rsp + rax + 0x248], cx
mov eax, 2
imul rax, rax, 0xf
mov ecx, 0x48
mov word [rsp + rax + 0x248], cx
mov eax, 2
imul rax, rax, 0xe
mov ecx, WSAAsyncGetProtoByNumber
mov word [rsp + rax + 0x248], cx
mov eax, 2
imul rax, rax, 6
mov ecx, WSAAsyncGetProtoByNumber
mov word [rsp + rax + 0x248], cx
mov eax, 2
imul rax, rax, 1
mov ecx, WSAAsyncGetProtoByNumber
mov word [rsp + rax + 0x248], cx
mov eax, 2
imul rax, rax, 0xa
mov ecx, WSAAsyncGetProtoByNumber
mov word [rsp + rax + 0x248], cx
mov eax, 2
imul rax, rax, 4
mov ecx, 0x61
mov word [rsp + rax + 0x248], cx
mov eax, 2
imul rax, rax, 2
mov ecx, 0x73
mov word [rsp + rax + 0x248], cx
mov eax, 2
imul rax, rax, 8
mov ecx, VarBstrFromDisp
mov word [rsp + rax + 0x248], cx
mov eax, 2
imul rax, rax, 3
mov ecx, 0x73
mov word [rsp + rax + 0x248], cx
mov eax, 2
imul rax, rax, 0x13
mov qword [rsp + 0xa0], rax
cmp qword [rsp + 0xa0], 0x28
jae 0x140003004
jmp 0x140003009
call fcn.1401ad030
xor eax, eax
mov rcx, qword [rsp + 0xa0]
mov word [rsp + rcx + 0x248], ax
mov eax, 2
imul rax, rax, 5
mov ecx, reloc.WSOCK32.dll_WSAAsyncGetHostByName
mov word [rsp + rax + 0x248], cx
mov eax, 2
imul rax, rax, 9
mov ecx, 0x52
mov word [rsp + rax + 0x248], cx
mov eax, 2
imul rax, rax, 7
mov ecx, 0x54
mov word [rsp + rax + 0x248], cx
mov eax, 2
imul rax, rax, 0
mov ecx, 0x4d
mov word [rsp + rax + 0x248], cx
mov eax, 2
imul rax, rax, 0xb
mov ecx, reloc.WSOCK32.dll_WSASetBlockingHook
mov word [rsp + rax + 0x248], cx
mov eax, 2
imul rax, rax, 0xd
mov ecx, 0x76
mov word [rsp + rax + 0x248], cx
mov eax, 2
imul rax, rax, 0xc
mov ecx, VarBstrFromDisp
mov word [rsp + rax + 0x248], cx
mov eax, 2
imul rax, rax, 0x11
mov ecx, VarBstrFromDisp
mov word [rsp + rax + 0x248], cx
mov eax, 2
imul rax, rax, 0x12
mov ecx, reloc.WSOCK32.dll_WSAAsyncGetServByName
mov word [rsp + rax + 0x248], cx
lea rcx, [rsp + 0x248]
call qword [sym.imp.USER32.dll_RegisterWindowMessageW]
mov rcx, qword [rsp + 0x290]
mov dword [rcx + 0x178], eax
mov dword [rsp + 0x44], 0
mov dword [rsp + 0xe8], 8
mov dword [rsp + 0xec], 0xff
lea rcx, [rsp + 0xe8]
call fcn.14000583c
mov rcx, qword [rsp + 0x290]
call fcn.14000b084
mov ecx, 0x18
call fcn.140002780
mov qword [rsp + 0x58], rax
cmp qword [rsp + 0x58], 0
je 0x14000316c
mov edx, 0x18
mov rcx, qword [rsp + 0x58]
call fcn.140004260
mov rcx, qword [rsp + 0x58]
call fcn.14001aaa4
mov qword [rsp + 0x68], rax
jmp 0x140003175
mov qword [rsp + 0x68], 0
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0xa8], rax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x98], rax
lea rcx, str.CMFCVisualManagerWindows
call fcn.14001a12c
call fcn.1400056e4
lea rdx, [rsp + 0xd0]
mov rcx, rax
call qword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov qword [rsp + 0x38], rax
mov edx, 8
lea rcx, [rsp + 0xe0]
call fcn.140004260
lea rdx, [0x1401d8e90]
lea rcx, [rsp + 0xe0]
call fcn.140002650
nop
mov edx, 8
lea rcx, [rsp + 0xd8]
call fcn.140004260
lea rdx, [0x1401d8e90]
lea rcx, [rsp + 0xd8]
call fcn.140002650
nop
mov byte [rsp + 0x30], 0
mov byte [rsp + 0x31], 0
mov ecx, 0xc8
call qword [sym.imp.KERNEL32.dll_Sleep]
cmp qword [rsp + 0x38], 0
je 0x1400035ed
cmp dword [rsp + 0xd0], 1
jle 0x1400035ed
mov dword [rsp + 0x34], 1
jmp 0x14000324a
mov eax, dword [rsp + 0x34]
inc eax
mov dword [rsp + 0x34], eax
mov eax, dword [rsp + 0xd0]
cmp dword [rsp + 0x34], eax
jge 0x1400035ed
mov eax, 2
imul rax, rax, 1
mov ecx, VarBstrFromDisp
mov word [rsp + rax + 0x238], cx
mov eax, 2
imul rax, rax, 5
mov qword [rsp + 0x70], rax
cmp qword [rsp + 0x70], 0xc
jae 0x140003289
jmp 0x14000328e
call fcn.1401ad030
xor eax, eax
mov rcx, qword [rsp + 0x70]
mov word [rsp + rcx + 0x238], ax
mov eax, 2
imul rax, rax, 4
mov ecx, reloc.WSOCK32.dll_WSAAsyncGetProtoByNumber
mov word [rsp + rax + 0x238], cx
mov eax, 2
imul rax, rax, 0
mov ecx, 0x2d
mov word [rsp + rax + 0x238], cx
mov eax, 2
imul rax, rax, 2
mov ecx, 0x61
mov word [rsp + rax + 0x238], cx
mov eax, 2
imul rax, rax, 3
mov ecx, 0x74
mov word [rsp + rax + 0x238], cx
mov eax, 2
imul rax, rax, 2
mov qword [rsp + 0x78], rax
cmp qword [rsp + 0x78], 6
jae 0x14000330d
jmp 0x140003312
call fcn.1401ad030
xor eax, eax
mov rcx, qword [rsp + 0x78]
mov word [rsp + rcx + 0x228], ax
mov eax, 2
imul rax, rax, 0
mov ecx, 0x25
mov word [rsp + rax + 0x228], cx
mov eax, 2
imul rax, rax, 1
mov ecx, 0x73
mov word [rsp + rax + 0x228], cx
movsxd rax, dword [rsp + 0x34]
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx + rax*8]
lea rcx, [rsp + 0x238]
sub rcx, rax
movzx edx, word [rax]
cmp dx, word [rax + rcx]
jne 0x14000337c
add rax, 2
test dx, dx
jne 0x140003366
xor eax, eax
jmp 0x140003381
sbb eax, eax
or eax, 1
test eax, eax
jne 0x1400033ab
mov eax, dword [rsp + 0x34]
inc eax
cdqe
mov rcx, qword [rsp + 0x38]
mov r8, qword [rcx + rax*8]
lea rdx, [rsp + 0x228]
lea rcx, [rsp + 0xe0]
call fcn.140002c24
mov eax, 2
imul rax, rax, 0
mov ecx, 0x2d
mov word [rsp + rax + 0x220], cx
mov eax, 2
imul rax, rax, 3
mov qword [rsp + 0x80], rax
cmp qword [rsp + 0x80], 8
jae 0x1400033df
jmp 0x1400033e4
call fcn.1401ad030
xor eax, eax
mov rcx, qword [rsp + 0x80]
mov word [rsp + rcx + 0x220], ax
mov eax, 2
imul rax, rax, 2
mov ecx, WSAAsyncGetProtoByNumber
mov word [rsp + rax + 0x220], cx
mov eax, 2
imul rax, rax, 1
mov ecx, WSAAsyncGetServByName
mov word [rsp + rax + 0x220], cx
movsxd rax, dword [rsp + 0x34]
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx + rax*8]
lea rcx, [rsp + 0x220]
sub rcx, rax
movzx edx, word [rax]
cmp dx, word [rax + rcx]
jne 0x140003451
add rax, 2
test dx, dx
jne 0x14000343b
xor eax, eax
jmp 0x140003456
sbb eax, eax
or eax, 1
test eax, eax
jne 0x140003480
mov eax, dword [rsp + 0x34]
inc eax
cdqe
mov rcx, qword [rsp + 0x38]
mov r8, qword [rcx + rax*8]
lea rdx, [rsp + 0x228]
lea rcx, [rsp + 0xd8]
call fcn.140002c24
mov eax, 2
imul rax, rax, 0
mov ecx, 0x2d
mov word [rsp + rax + 0x220], cx
mov eax, 2
imul rax, rax, 3
mov qword [rsp + 0x88], rax
cmp qword [rsp + 0x88], 8
jae 0x1400034b4
jmp 0x1400034b9
call fcn.1401ad030
xor eax, eax
mov rcx, qword [rsp + 0x88]
mov word [rsp + rcx + 0x220], ax
mov eax, 2
imul rax, rax, 2
mov ecx, reloc.WSOCK32.dll_WSAAsyncGetProtoByNumber
mov word [rsp + rax + 0x220], cx
mov eax, 2
imul rax, rax, 1
mov ecx, 0x73
mov word [rsp + rax + 0x220], cx
movsxd rax, dword [rsp + 0x34]
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx + rax*8]
lea rcx, [rsp + 0x270]
sub rcx, rax
movzx edx, word [rax]
cmp dx, word [rax + rcx]
jne 0x140003526
add rax, 2
test dx, dx
jne 0x140003510
xor eax, eax
jmp 0x14000352b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x140003534
mov byte [rsp + 0x30], 1
mov eax, 2
imul rax, rax, 1
mov ecx, reloc.OLEAUT32.dll_VarBstrFromDisp
mov word [rsp + rax + 0x230], cx
mov eax, 2
imul rax, rax, 3
mov qword [rsp + 0x90], rax
cmp qword [rsp + 0x90], 8
jae 0x140003568
jmp 0x14000356d
call fcn.1401ad030
xor eax, eax
mov rcx, qword [rsp + 0x90]
mov word [rsp + rcx + 0x230], ax
mov eax, 2
imul rax, rax, 2
mov ecx, reloc.WSOCK32.dll_WSAAsyncGetProtoByNumber
mov word [rsp + rax + 0x230], cx
mov eax, 2
imul rax, rax, 0
mov ecx, 0x2d
mov word [rsp + rax + 0x230], cx
movsxd rax, dword [rsp + 0x34]
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx + rax*8]
lea rcx, [rsp + 0x230]
sub rcx, rax
movzx edx, word [rax]
cmp dx, word [rax + rcx]
jne 0x1400035da
add rax, 2
test dx, dx
jne 0x1400035c4
xor eax, eax
jmp 0x1400035df
sbb eax, eax
or eax, 1
test eax, eax
jne 0x1400035e8
mov byte [rsp + 0x31], 1
jmp 0x140003240
movzx eax, byte [rsp + 0x30]
test eax, eax
je 0x14000366f
mov rcx, qword [rsp + 0x290]
call fcn.140003c94
mov edx, pe_nt_image_headers64
lea rcx, [rsp + 0xf0]
call fcn.140004260
xor edx, edx
lea rcx, [rsp + 0xf0]
call fcn.140004518
nop
mov qword [rsp + 0x48], 0
mov rax, qword [rsp + 0x290]
lea rcx, [rsp + 0xf0]
mov qword [rax + 0x40], rcx
lea rcx, [rsp + 0xf0]
call fcn.140008eb4
mov qword [rsp + 0x48], rax
mov rcx, qword [rsp + 0x290]
call fcn.140003c00
nop
lea rcx, [rsp + 0xf0]
call fcn.140004554
movzx eax, byte [rsp + 0x31]
test eax, eax
je 0x14000368a
mov edx, 3
mov rcx, qword [rsp + 0x290]
call fcn.140003958
lea rcx, [rsp + 0xe0]
call fcn.1400037ec
movzx eax, al
test eax, eax
jne 0x140003746
lea rcx, [rsp + 0xd8]
call fcn.1400037ec
movzx eax, al
test eax, eax
jne 0x140003746
mov dword [rsp + 0xd4], 0
lea rcx, [rsp + 0xe0]
call fcn.140002ec8
mov qword [rsp + 0xb0], rax
lea rcx, [rsp + 0xd8]
call fcn.140002ec8
lea rcx, [rsp + 0xd4]
mov qword [rsp + 0x20], rcx
mov r9d, 1
mov rcx, qword [rsp + 0xb0]
mov r8, rcx
mov rdx, rax
xor ecx, ecx
call fcn.140005d24
mov dword [rsp + 0x50], eax
cmp dword [rsp + 0x50], 0
jne 0x140003722
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x140003746
cmp dword [rsp + 0xd4], 0
je 0x140003736
mov dword [rsp + 0x40], 2
jmp 0x14000373e
mov dword [rsp + 0x40], 1
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x44], eax
cmp qword [rsp + 0x98], 0
je 0x1400037a1
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x60], rax
cmp qword [rsp + 0x60], 0
je 0x140003795
mov rax, qword [rsp + 0x60]
mov rax, qword [rax]
mov edx, 1
mov rcx, qword [rsp + 0x60]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov qword [rsp + 0xc0], rax
jmp 0x1400037a1
mov qword [rsp + 0xc0], 0
mov ecx, dword [rsp + 0x44]
call fcn.1401b360c
nop
mov dword [rsp + 0x54], 0
lea rcx, [rsp + 0xd8]
call fcn.140002750
lea rcx, [rsp + 0xe0]
call fcn.140002750
mov eax, dword [rsp + 0x54]
mov rcx, qword [rsp + 0x278]
xor rcx, rsp
call fcn.1401ad2d0
add rsp, 0x288
ret