Function at 0x404db8
Capabilities:
Create process on windows
Initialize winsock library

Disassembly:
push ebp
mov ebp, esp
push edi
push ebx
mov eax, 0x26d0
call fcn.00412090
mov eax, dword [ebp + 8]
mov dword [0x41a744], eax
lea eax, [ebp - 0x198]
mov dword [esp + 4], eax
mov dword [esp], 0x101
call sub.WS2_32.DLL_WSAStartup
sub esp, 8
call sub.COMCTL32.DLL_InitCommonControls
mov dword [ebp - 0x1cc], 0
mov dword [ebp - 0x1d0], 0
mov byte [ebp - 0x1d1], 0
mov dword [esp + 4], 0x41856c
mov eax, dword [ebp + 0x10]
mov dword [esp], eax
call sub.msvcrt.dll_strtok
mov dword [ebp - 0x1d8], eax
cmp dword [ebp - 0x1d8], 0
je 0x40504b
mov dword [esp + 4], 0x41856f
mov eax, dword [ebp - 0x1d8]
mov dword [esp], eax
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x404e54
mov byte [ebp - 0x1d1], 1
jmp 0x40502c
mov dword [esp + 4], str.__help
mov eax, dword [ebp - 0x1d8]
mov dword [esp], eax
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x404ea2
mov dword [esp + 4], 0x418579
mov eax, dword [ebp - 0x1d8]
mov dword [esp], eax
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x404ea2
mov dword [esp + 4], 0x41857c
mov eax, dword [ebp - 0x1d8]
mov dword [esp], eax
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x404eba
mov dword [esp], str.usage:_winbox___connect_to____login____password_____n
call sub.msvcrt.dll_printf
mov dword [esp], 0
call sub.msvcrt.dll_exit
cmp byte [ebp - 0x1d1], 0
jne 0x404f2b
cmp dword [ebp - 0x1cc], 9
jne 0x404ed1
jmp 0x40502c
mov dword [esp + 4], 0x4185b5
mov eax, dword [ebp - 0x1d8]
mov dword [esp], eax
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x404f0d
mov eax, dword [ebp - 0x1cc]
mov edx, eax
mov eax, dword [ebp - 0x1d8]
mov dword [ebp + edx*4 - 0x1c8], eax
lea eax, [ebp - 0x1cc]
inc dword [eax]
jmp 0x40502c
mov eax, dword [ebp - 0x1cc]
mov dword [ebp + eax*4 - 0x1c8], 0x418040
lea eax, [ebp - 0x1cc]
inc dword [eax]
jmp 0x40502c
mov eax, dword [ebp - 0x1d8]
mov dword [esp + 0xc], eax
mov dword [esp + 8], str.._s
mov dword [esp + 4], 0x50
lea eax, [ebp - 0x228]
mov dword [esp], eax
call sub.msvcrt.dll__snprintf
lea eax, [ebp - 0x228]
mov dword [esp + 4], eax
mov dword [esp], str.linking__s_n
call sub.msvcrt.dll_printf
mov dword [esp + 8], 8
mov dword [esp + 4], 0
lea eax, [ebp - 0x228]
mov dword [esp], eax
call sub.KERNEL32.dll_LoadLibraryExA
sub esp, 0xc
mov dword [ebp - 0x22c], eax
cmp dword [ebp - 0x22c], 0
je 0x40500d
lea eax, [ebp - 0x228]
mov dword [esp + 4], eax
mov dword [esp], str.lib__s_loaded_n
call sub.msvcrt.dll_printf
mov dword [esp + 4], str.runEx
mov eax, dword [ebp - 0x22c]
mov dword [esp], eax
call sub.KERNEL32.dll_GetProcAddress
sub esp, 8
mov dword [ebp - 0x230], eax
cmp dword [ebp - 0x230], 0
jne 0x404ff6
mov dword [esp + 4], 0x418514
mov eax, dword [ebp - 0x22c]
mov dword [esp], eax
call sub.KERNEL32.dll_GetProcAddress
sub esp, 8
mov dword [ebp - 0x230], eax
cmp dword [ebp - 0x230], 0
je 0x40502c
mov eax, dword [ebp - 0x230]
mov dword [ebp - 0x1d0], eax
jmp 0x40502c
call sub.KERNEL32.dll_GetLastError
mov dword [esp + 8], eax
lea eax, [ebp - 0x228]
mov dword [esp + 4], eax
mov dword [esp], str.lib__s_not_loaded_error_ld_n
call sub.msvcrt.dll_printf
mov dword [esp + 4], 0x41856c
mov dword [esp], 0
call sub.msvcrt.dll_strtok
mov dword [ebp - 0x1d8], eax
jmp 0x404e21
mov eax, dword [ebp - 0x1cc]
mov dword [ebp + eax*4 - 0x1c8], 0
lea edx, [ebp - 0x2b8]
mov eax, pe_nt_image_headers32
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], edx
call sub.msvcrt.dll_memset
lea edx, [ebp - 0x338]
mov eax, pe_nt_image_headers32
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], edx
call sub.msvcrt.dll_memset
lea edx, [ebp - 0x3b8]
mov eax, pe_nt_image_headers32
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], edx
call sub.msvcrt.dll_memset
lea edx, [ebp - 0x438]
mov eax, pe_nt_image_headers32
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], edx
call sub.msvcrt.dll_memset
mov dword [ebp - 0x230], 0
cmp dword [ebp - 0x1cc], 0
je 0x405112
mov dword [esp + 8], pe_nt_image_headers32
mov eax, dword [ebp - 0x1c8]
mov dword [esp + 4], eax
lea eax, [ebp - 0x2b8]
mov dword [esp], eax
call sub.msvcrt.dll_strncpy
mov byte [ebp - 0x239], 0
cmp dword [ebp - 0x1cc], 1
jbe 0x405142
mov dword [esp + 8], pe_nt_image_headers32
mov eax, dword [ebp - 0x1c4]
mov dword [esp + 4], eax
lea eax, [ebp - 0x3b8]
mov dword [esp], eax
call sub.msvcrt.dll_strncpy
mov byte [ebp - 0x339], 0
cmp dword [ebp - 0x1cc], 2
jbe 0x405172
mov dword [esp + 8], pe_nt_image_headers32
mov eax, dword [ebp - 0x1c0]
mov dword [esp + 4], eax
lea eax, [ebp - 0x438]
mov dword [esp], eax
call sub.msvcrt.dll_strncpy
mov byte [ebp - 0x3b9], 0
mov byte [ebp - 0x439], 0
lea eax, [ebp - 0x228]
mov dword [esp], eax
call fcn.00403cbe
cmp dword [ebp - 0x1cc], 2
jbe 0x40519e
lea eax, [ebp - 0x438]
mov dword [ebp - 0x269c], eax
jmp 0x4051a8
mov dword [ebp - 0x269c], 0
mov eax, dword [ebp - 0x269c]
mov dword [esp + 0xc], eax
cmp dword [ebp - 0x1cc], 1
jbe 0x4051c9
lea eax, [ebp - 0x3b8]
mov dword [ebp - 0x26a0], eax
jmp 0x4051d3
mov dword [ebp - 0x26a0], 0
mov eax, dword [ebp - 0x26a0]
mov dword [esp + 8], eax
cmp dword [ebp - 0x1cc], 0
je 0x4051f4
lea eax, [ebp - 0x2b8]
mov dword [ebp - 0x26a4], eax
jmp 0x4051fe
mov dword [ebp - 0x26a4], 0
mov eax, dword [ebp - 0x26a4]
mov dword [esp + 4], eax
lea eax, [ebp - 0x228]
mov dword [esp], eax
call fcn.0040400a
test al, al
jne 0x405221
mov byte [ebp - 0x439], 1
cmp byte [ebp - 0x439], 0
je 0x405249
lea eax, [ebp - 0x228]
mov dword [esp], eax
call fcn.00409b1e
cmp eax, 2
jne 0x405250
mov dword [esp], 0
call sub.msvcrt.dll_exit
mov byte [ebp - 0x439], 1
lea eax, [ebp - 0x228]
mov dword [esp], eax
call fcn.00412af4
mov dword [esp + 8], pe_nt_image_headers32
mov dword [esp + 4], eax
lea eax, [ebp - 0x2b8]
mov dword [esp], eax
call sub.msvcrt.dll_strncpy
mov byte [ebp - 0x239], 0
lea eax, [ebp - 0x228]
mov dword [esp], eax
call fcn.00412a54
mov dword [esp + 8], pe_nt_image_headers32
mov dword [esp + 4], eax
lea eax, [ebp - 0x3b8]
mov dword [esp], eax
call sub.msvcrt.dll_strncpy
mov byte [ebp - 0x339], 0
lea eax, [ebp - 0x228]
mov dword [esp], eax
call fcn.004129d4
mov dword [esp + 8], pe_nt_image_headers32
mov dword [esp + 4], eax
lea eax, [ebp - 0x438]
mov dword [esp], eax
call sub.msvcrt.dll_strncpy
mov byte [ebp - 0x3b9], 0
mov dword [esp + 8], pe_nt_image_headers32
lea eax, [ebp - 0x2b8]
mov dword [esp + 4], eax
lea eax, [ebp - 0x338]
mov dword [esp], eax
call sub.msvcrt.dll_strncpy
mov byte [ebp - 0x2b9], 0
lea edi, [ebp - 0x458]
cld
mov ecx, 6
mov al, 0
rep stosb byte es:[edi], al
lea eax, [ebp - 0x458]
mov dword [esp + 4], eax
lea eax, [ebp - 0x2b8]
mov dword [esp], eax
call fcn.004091e0
mov byte [ebp - 0x459], al
mov dword [ebp - 0x230], 0
cmp byte [ebp - 0x459], 0
jne 0x405576
lea eax, [ebp - 0x338]
mov dword [esp + 8], 7
mov dword [esp + 4], str.http:__
mov dword [esp], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x4053c7
mov dword [esp + 4], 6
mov dword [esp], 0
call sub.OLE32.dll_CoInitializeEx
sub esp, 8
mov dword [esp + 0x14], 1
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
lea eax, [ebp - 0x338]
mov dword [esp + 8], eax
mov dword [esp + 4], str.open
mov dword [esp], 0
call sub.SHELL32.DLL_ShellExecuteA
sub esp, 0x18
mov dword [esp], 0
call sub.msvcrt.dll_exit
lea eax, [ebp - 0x338]
mov dword [ebp - 0x22c], eax
cmp byte [ebp - 0x338], 0x5b
jne 0x40549e
lea eax, [ebp - 0x338]
mov dword [esp + 4], 0x5d
mov dword [esp], eax
call sub.msvcrt.dll_strchr
mov dword [ebp - 0x22c], eax
cmp dword [ebp - 0x22c], 0
jne 0x405461
lea eax, [ebp - 0x338]
mov dword [esp + 8], eax
mov dword [esp + 4], str.Invalid_address____s
lea eax, [ebp - 0x568]
mov dword [esp], eax
call sub.msvcrt.dll_sprintf
mov dword [esp + 0xc], 0x10
mov dword [esp + 8], str.RouterOS_WinBox_Error
lea eax, [ebp - 0x568]
mov dword [esp + 4], eax
mov dword [esp], 0
call sub.USER32.dll_MessageBoxA
sub esp, 0x10
lea eax, [ebp - 0x228]
mov dword [esp], eax
call fcn.00403e8e
jmp 0x405179
mov eax, dword [ebp - 0x22c]
mov byte [eax], 0
lea eax, [ebp - 0x22c]
inc dword [eax]
lea edx, [ebp - 0x338]
mov eax, dword [ebp - 0x22c]
sub eax, edx
dec eax
mov dword [esp + 8], eax
lea eax, [ebp - 0x338]
inc eax
mov dword [esp + 4], eax
lea eax, [ebp - 0x338]
mov dword [esp], eax
call sub.msvcrt.dll_memmove
mov dword [esp + 4], 0x3a
mov eax, dword [ebp - 0x22c]
mov dword [esp], eax
call sub.msvcrt.dll_strchr
mov dword [ebp - 0x22c], eax
cmp dword [ebp - 0x22c], 0
je 0x405576
mov dword [esp + 8], 0xa
lea eax, [ebp - 0x1d8]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x22c]
inc eax
mov dword [esp], eax
call sub.msvcrt.dll_strtoul
mov dword [ebp - 0x230], eax
mov eax, dword [ebp - 0x1d8]
cmp byte [eax], 0
jne 0x405510
cmp dword [ebp - 0x230], 0
je 0x405510
cmp dword [ebp - 0x230], 0xffff
ja 0x405510
jmp 0x40556d
mov eax, dword [ebp - 0x22c]
inc eax
mov dword [esp + 8], eax
mov dword [esp + 4], str.Invalid_port____s
lea eax, [ebp - 0x568]
mov dword [esp], eax
call sub.msvcrt.dll_sprintf
mov dword [esp + 0xc], 0x10
mov dword [esp + 8], str.RouterOS_WinBox_Error
lea eax, [ebp - 0x568]
mov dword [esp + 4], eax
mov dword [esp], 0
call sub.USER32.dll_MessageBoxA
sub esp, 0x10
lea eax, [ebp - 0x228]
mov dword [esp], eax
call fcn.00403e8e
jmp 0x405179
mov eax, dword [ebp - 0x22c]
mov byte [eax], 0
lea eax, [ebp - 0x228]
mov dword [esp], eax
call fcn.00412a80
mov byte [ebp - 0x569], al
lea eax, [ebp - 0x228]
mov dword [esp], eax
call fcn.00412ae4
mov byte [ebp - 0x56a], al
lea eax, [ebp - 0x568]
mov dword [esp], eax
call fcn.0040a214
lea eax, [ebp - 0x568]
mov dword [esp], eax
call fcn.00409a38
lea eax, [ebp - 0x568]
add eax, 8
mov dword [esp + 4], eax
lea eax, [ebp - 0x2598]
mov dword [esp], eax
call fcn.00413218
mov dword [ebp - 0x22c], 0
cmp byte [ebp - 0x459], 0
jne 0x405812
lea eax, [ebp - 0x338]
mov dword [esp + 4], eax
lea eax, [ebp - 0x568]
mov dword [esp], eax
call fcn.0040a272
mov eax, dword [ebp - 0x230]
mov dword [ebp - 0x26a8], eax
cmp dword [ebp - 0x230], 0
jne 0x405623
mov dword [ebp - 0x26a8], 0x2063
mov eax, dword [ebp - 0x26a8]
mov dword [esp + 8], eax
lea eax, [ebp - 0x338]
mov dword [esp + 4], eax
lea eax, [ebp - 0x2598]
mov dword [esp], eax
call fcn.004069ce
mov dword [ebp - 0x1d8], eax
cmp dword [ebp - 0x1d8], 0
jne 0x4056bb
lea eax, [ebp - 0x338]
mov dword [esp + 8], eax
mov dword [esp + 4], str.Invalid_address____s
lea eax, [ebp - 0x2698]
mov dword [esp], eax
call sub.msvcrt.dll_sprintf
lea eax, [ebp - 0x2698]
mov dword [esp + 4], eax
lea eax, [ebp - 0x568]
mov dword [esp], eax
call fcn.0040a7f8
lea eax, [ebp - 0x2598]
mov dword [esp], eax
call fcn.0040486e
lea eax, [ebp - 0x568]
mov dword [esp], eax
call fcn.004128e8
lea eax, [ebp - 0x228]
mov dword [esp], eax
call fcn.00403e8e
jmp 0x405179
mov eax, dword [ebp - 0x230]
mov dword [ebp - 0x26ac], eax
cmp dword [ebp - 0x230], 0
jne 0x4056da
mov dword [ebp - 0x26ac], 0x2063
mov eax, dword [ebp - 0x26ac]
mov dword [esp + 8], eax
lea eax, [ebp - 0x338]
mov dword [esp + 4], eax
lea eax, [ebp - 0x568]
mov dword [esp], eax
call fcn.0040a2c4
mov dword [esp], 0xc
call fcn.004133a0
mov ebx, eax
mov eax, dword [ebp - 0x1d8]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.00412b70
mov eax, ebx
mov dword [ebp - 0x22c], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp], eax
call fcn.00407aae
test al, al
jne 0x4058d3
mov eax, dword [ebp - 0x230]
mov dword [esp + 8], eax
lea eax, [ebp - 0x338]
mov dword [esp + 4], eax
lea eax, [ebp - 0x568]
mov dword [esp], eax
call fcn.0040a2c4
cmp dword [ebp - 0x230], 0
jne 0x40579c
mov eax, dword [ebp - 0x1d8]
mov dword [esp], eax
call sub.WS2_32.DLL_freeaddrinfo
sub esp, 4
mov dword [esp + 8], 0x50
lea eax, [ebp - 0x338]
mov dword [esp + 4], eax
lea eax, [ebp - 0x2598]
mov dword [esp], eax
call fcn.004069ce
mov dword [ebp - 0x1d8], eax
cmp dword [ebp - 0x22c], 0
je 0x4057bd
mov eax, dword [ebp - 0x22c]
mov edx, dword [eax]
add edx, 4
mov eax, dword [ebp - 0x22c]
mov dword [esp], eax
mov eax, dword [edx]
call eax
mov dword [esp], 8
call fcn.004133a0
mov ebx, eax
mov eax, dword [ebp - 0x1d8]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.00412938
mov eax, ebx
mov dword [ebp - 0x22c], eax
mov eax, dword [ebp - 0x1d8]
mov dword [esp], eax
call fcn.00405b78
mov dword [esp + 8], pe_nt_image_headers32
mov dword [esp + 4], eax
lea eax, [ebp - 0x338]
mov dword [esp], eax
call sub.msvcrt.dll_strncpy
jmp 0x4058d3
lea eax, [ebp - 0x458]
mov dword [esp], eax
call fcn.00409338
mov dword [esp + 4], eax
mov dword [esp], str.connecting_to__s_n
call sub.msvcrt.dll_printf
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x20
mov dword [esp], eax
call sub.msvcrt.dll_fflush
mov dword [esp], 0x50
call fcn.004133a0
mov ebx, eax
lea eax, [ebp - 0x458]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.00408514
mov eax, ebx
mov dword [ebp - 0x22c], eax
mov dword [esp + 8], 0x5051
lea eax, [ebp - 0x338]
mov dword [esp + 4], eax
lea eax, [ebp - 0x568]
mov dword [esp], eax
call fcn.0040a2c4
lea eax, [ebp - 0x2598]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp], eax
call fcn.00408766
test al, al
jne 0x4058d3
lea eax, [ebp - 0x2598]
mov dword [esp], eax
call fcn.0040486e
lea eax, [ebp - 0x568]
mov dword [esp], eax
call fcn.004128e8
lea eax, [ebp - 0x228]
mov dword [esp], eax
call fcn.00403e8e
jmp 0x405179
cmp dword [ebp - 0x1d0], 0
jne 0x4059f2
mov eax, dword [ebp - 0x22c]
mov dword [esp + 4], eax
lea eax, [ebp - 0x2598]
mov dword [esp], eax
call fcn.00404962
test al, al
jne 0x40592b
lea eax, [ebp - 0x2598]
mov dword [esp], eax
call fcn.0040486e
lea eax, [ebp - 0x568]
mov dword [esp], eax
call fcn.004128e8
lea eax, [ebp - 0x228]
mov dword [esp], eax
call fcn.00403e8e
jmp 0x405179
lea eax, [ebp - 0x568]
mov dword [esp], eax
call fcn.0040a31e
lea eax, [ebp - 0x2598]
mov dword [esp], eax
call fcn.00404af0
lea eax, [ebp - 0x338]
mov dword [esp + 4], eax
lea eax, [ebp - 0x568]
mov dword [esp], eax
call fcn.0040a34c
lea eax, [ebp - 0x2598]
mov dword [esp], eax
call fcn.00404aac
mov dword [esp + 4], eax
lea eax, [ebp - 0x568]
mov dword [esp], eax
call fcn.00412888
mov eax, dword [ebp - 0x22c]
mov dword [esp + 4], eax
lea eax, [ebp - 0x2598]
mov dword [esp], eax
call fcn.00404b66
test al, al
jne 0x4059ca
lea eax, [ebp - 0x2598]
mov dword [esp], eax
call fcn.0040486e
lea eax, [ebp - 0x568]
mov dword [esp], eax
call fcn.004128e8
lea eax, [ebp - 0x228]
mov dword [esp], eax
call fcn.00403e8e
jmp 0x405179
lea eax, [ebp - 0x568]
mov dword [esp], eax
call fcn.0040a3f8
lea eax, [ebp - 0x2598]
mov dword [esp], eax
call fcn.00404bfe
mov dword [esp], 0
call fcn.004014c6
lea eax, [ebp - 0x568]
mov dword [esp], eax
call fcn.00409ad0
lea edi, [ebp - 0x548]
cld
mov edx, 0
mov eax, 0xa
mov ecx, eax
mov eax, edx
rep stosd dword es:[edi], eax
mov dword [ebp - 0x548], str.secure
cmp byte [ebp - 0x569], 0
je 0x405a36
mov dword [ebp - 0x26b0], 0x418605
jmp 0x405a40
mov dword [ebp - 0x26b0], 0x418607
mov eax, dword [ebp - 0x26b0]
mov dword [ebp - 0x544], eax
mov dword [ebp - 0x540], str.persist
cmp byte [ebp - 0x56a], 0
je 0x405a6b
mov dword [ebp - 0x26b4], 0x418605
jmp 0x405a75
mov dword [ebp - 0x26b4], 0x418607
mov eax, dword [ebp - 0x26b4]
mov dword [ebp - 0x53c], eax
mov eax, dword [ebp - 0x22c]
mov edx, dword [eax]
add edx, 0xc
lea eax, [ebp - 0x548]
add eax, 0x10
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x22c]
mov dword [esp], eax
mov eax, dword [edx]
call eax
cmp dword [ebp - 0x1d0], 0
jne 0x405ae7
lea eax, [ebp - 0x548]
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x438]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x3b8]
mov dword [esp + 8], eax
lea eax, [ebp - 0x338]
mov dword [esp + 4], eax
lea eax, [ebp - 0x2598]
mov dword [esp], eax
call fcn.00404d42
jmp 0x405b1f
lea eax, [ebp - 0x548]
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x438]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x3b8]
mov dword [esp + 8], eax
lea eax, [ebp - 0x338]
mov dword [esp + 4], eax
mov eax, dword [0x41a744]
mov dword [esp], eax
mov eax, dword [ebp - 0x1d0]
call eax
cmp dword [ebp - 0x22c], 0
je 0x405b40
mov eax, dword [ebp - 0x22c]
mov edx, dword [eax]
add edx, 4
mov eax, dword [ebp - 0x22c]
mov dword [esp], eax
mov eax, dword [edx]
call eax
lea eax, [ebp - 0x2598]
mov dword [esp], eax
call fcn.0040486e
lea eax, [ebp - 0x568]
mov dword [esp], eax
call fcn.004128e8
lea eax, [ebp - 0x228]
mov dword [esp], eax
call fcn.00403e8e
mov eax, 0
lea esp, [ebp - 8]
pop ebx
pop edi
pop ebp
ret 0x10