Function at 0x1400f02e0
Capabilities:
Initialize winsock library

Disassembly:
mov rax, rsp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x3e0
mov qword [rsp + 0xe0], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
mov rax, qword [0x1402e0068]
xor rax, rsp
mov qword [rsp + 0x3d0], rax
mov rsi, rcx
lea rax, [0x14023ddc0]
mov qword [rsp + 0x68], rax
xor r12d, r12d
mov dword [rsp + 0x60], r12d
mov dword [rsp + 0x58], r12d
mov dword [rsp + 0x50], r12d
mov dword [rsp + 0x48], r12d
mov dword [rsp + 0x40], 1
mov dword [rsp + 0x38], r12d
mov dword [rsp + 0x30], r12d
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], 0x190
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea ecx, [rdx - 0xb]
call qword [sym.imp.GDI32.dll_CreateFontW]
mov qword [rsi + 0x310], rax
mov r10, qword [rsi + 8]
mov r8d, dword [0x1402db00c]
mov r9d, dword [0x1402db004]
sub r8d, r9d
mov ecx, dword [0x1402db008]
mov edx, dword [section..data]
sub ecx, edx
mov qword [rsp + 0x58], r12
mov rax, qword [0x1402e4a88]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x40], r10
mov dword [rsp + 0x38], r8d
mov dword [rsp + 0x30], ecx
mov dword [rsp + 0x28], r9d
mov dword [rsp + 0x20], edx
xor r9d, r9d
xor r8d, r8d
lea rdx, str.tooltips_class32
xor ecx, ecx
call qword [sym.imp.USER32.dll_CreateWindowExW]
mov qword [rsi + 0x290], rax
xor r9d, r9d
xor r8d, r8d
mov edx, 0x401
mov rcx, rax
call qword [sym.imp.USER32.dll_SendMessageW]
mov rdi, qword [rsi + 8]
xor eax, eax
mov qword [rsp + 0x380], rax
mov qword [rsp + 0x388], rax
mov qword [rsp + 0x390], rax
mov qword [rsp + 0x398], rax
mov qword [rsp + 0x3a0], rax
mov qword [rsp + 0x3a8], rax
mov qword [rsp + 0x3b0], rax
mov qword [rsp + 0x3b8], rax
mov qword [rsp + 0x3c0], rax
lea ebx, [rax + 0x48]
call fcn.1400e9620
mov ecx, 0x40
test al, al
cmove ebx, ecx
mov dword [rsp + 0x380], ebx
mov dword [rsp + 0x384], r12d
mov rcx, rdi
call qword [sym.imp.USER32.dll_GetParent]
mov qword [rsp + 0x388], rax
or dword [rsp + 0x384], 1
mov qword [rsp + 0x390], rdi
mov rax, qword [0x1402e4a90]
mov qword [rsp + 0x3a8], rax
or r15, 0xffffffffffffffff
mov qword [rsp + 0x3b0], r15
mov qword [rsp + 0x3b8], r12
lea r9, [rsp + 0x380]
xor r8d, r8d
mov edx, 0x432
mov rcx, qword [rsi + 0x290]
call qword [sym.imp.USER32.dll_SendMessageW]
mov r9d, 0x12c
xor r8d, r8d
mov edx, 0x418
mov rcx, qword [rsi + 0x290]
call qword [sym.imp.USER32.dll_SendMessageW]
call fcn.14010a780
lea edx, [r12 + 1]
mov rcx, qword [rsi + 8]
call qword [sym.imp.SHELL32.dll_DragAcceptFiles]
xor edx, edx
lea rcx, [rsi + 8]
call fcn.1400e96a0
mov rbp, qword [0x1402e4a90]
mov edi, 0x80
movsxd rcx, edi
mov eax, 2
mul rcx
cmovo rax, r15
mov rcx, rax
call fcn.1401e74e4
mov rbx, rax
lea r14, [0x14023ce88]
test rax, rax
je 0x1400f0572
mov r9d, edi
mov r8, rax
mov edx, 0x80
mov rcx, rbp
call qword [sym.imp.USER32.dll_LoadStringW]
lea ecx, [rdi - 1]
cmp eax, ecx
jl 0x1400f0568
mov rcx, rbx
call fcn.1401e6538
mov rbx, r12
add edi, edi
cmp edi, 0x19000
jl 0x1400f0510
jmp 0x1400f0572
test rbx, rbx
je 0x1400f0572
mov rdx, rbx
jmp 0x1400f0575
mov rdx, r14
mov rcx, qword [rsi + 8]
call qword [sym.imp.USER32.dll_SetWindowTextW]
test rbx, rbx
je 0x1400f058c
mov rcx, rbx
call fcn.1401e6538
mov ecx, 0x101
lea rdx, [rsp + 0x1e0]
call qword [sym.imp.WS2_32.dll_WSAStartup]
mov dword [rsi + 0x148], 0xefdb
mov ecx, reloc.WS2_32.dll_inet_ntoa
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ebx, eax
mov ecx, reloc.WS2_32.dll_inet_addr
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], ebx
mov r9d, eax
mov edx, 0x80
lea r8d, [rdx - 0x7f]
mov rcx, qword [0x1402e4a90]
call qword [sym.imp.USER32.dll_LoadImageW]
mov r9, rax
mov edx, 0x80
lea r8d, [rdx - 0x7f]
mov rcx, qword [rsi + 8]
call qword [sym.imp.USER32.dll_SendMessageW]
mov ecx, gethostbyaddr
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ebx, eax
mov ecx, gethostbyaddr
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], ebx
mov r9d, eax
mov edx, 0x80
lea r8d, [rdx - 0x7f]
mov rcx, qword [0x1402e4a90]
call qword [sym.imp.USER32.dll_LoadImageW]
mov r15, rax
mov r9, rax
xor r8d, r8d
mov edx, 0x80
mov rcx, qword [rsi + 8]
call qword [sym.imp.USER32.dll_SendMessageW]
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov edx, eax
lea rcx, [0x1402e4710]
call fcn.1400f01c0
mov rbx, rax
lea rcx, [rsi + 0x48]
mov qword [rsp + 0x70], rcx
lea rcx, [rax + 8]
lea rdx, [rsp + 0x70]
call fcn.1400ecef0
lea r11, [rsi + 0x50]
mov qword [rsp + 0x70], r11
lea rcx, [rbx + 0x18]
lea rdx, [rsp + 0x70]
call fcn.1400ecef0
mov r11, qword [rsi + 8]
mov edi, 4
test r11, r11
je 0x1400f06b9
mov qword [rsp + 0x70], r11
mov word [rsp + 0x78], di
lea rcx, [rsi + 0xb8]
lea rdx, [rsp + 0x70]
call fcn.1400ecfa0
lea rcx, [rsp + 0x80]
call fcn.1400e7a60
nop
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x80]
call fcn.140002bc0
mov rbx, rax
test rax, rax
je 0x1400f075b
lea rdx, [0x14023df04]
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400f075b
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rbx + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
je 0x1400f075b
movzx eax, byte [rcx]
cmp al, 0x23
jne 0x1400f0727
inc rcx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
mov r11d, eax
jmp 0x1400f075e
cmp al, 0x30
jne 0x1400f074b
movzx eax, byte [rcx + 1]
cmp al, 0x78
je 0x1400f0737
cmp al, 0x58
jne 0x1400f074b
add rcx, 2
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
mov r11d, eax
jmp 0x1400f075e
xor edx, edx
lea r8d, [rdx + 0xa]
call fcn.1401e7480
mov r11d, eax
jmp 0x1400f075e
mov r11d, r12d
mov eax, r12d
test r11d, r11d
setne al
mov dword [0x1402e47d8], eax
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x80]
call fcn.140002bc0
mov rbx, rax
test rax, rax
je 0x1400f07b3
lea rdx, str.host
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400f07b3
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rbx + 8]
mov rdx, qword [rax + rcx*8 + 8]
test rdx, rdx
jne 0x1400f07ba
lea rdx, str.Https:__def.gotohttp.com
lea rcx, [rsi + 0x2e0]
call fcn.1400042e0
lea rcx, [rsi + 0x150]
lea rdx, [0x14023dee4]
call fcn.1400042e0
lea rcx, [rsi + 0x158]
lea rdx, [0x14023dee4]
call fcn.1400042e0
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x80]
call fcn.140002bc0
mov rbx, rax
test rax, rax
je 0x1400f0877
lea rdx, str.app_win
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400f0877
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rbx + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
je 0x1400f0877
movzx eax, byte [rcx]
cmp al, 0x23
jne 0x1400f0849
inc rcx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e74b0
jmp 0x1400f087a
cmp al, 0x30
jne 0x1400f086a
movzx eax, byte [rcx + 1]
cmp al, 0x78
je 0x1400f0859
cmp al, 0x58
jne 0x1400f086a
add rcx, 2
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e74b0
jmp 0x1400f087a
xor edx, edx
lea r8d, [rdx + 0xa]
call fcn.1401e74b0
jmp 0x1400f087a
mov eax, r12d
mov eax, eax
mov qword [rsi + 0x2a0], rax
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x80]
call fcn.140002bc0
mov rbx, rax
test rax, rax
je 0x1400f090e
lea rdx, [0x14023dee0]
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400f090e
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rbx + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
je 0x1400f090e
movzx eax, byte [rcx]
cmp al, 0x23
jne 0x1400f08e0
inc rcx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f0911
cmp al, 0x30
jne 0x1400f0901
movzx eax, byte [rcx + 1]
cmp al, 0x78
je 0x1400f08f0
cmp al, 0x58
jne 0x1400f0901
add rcx, 2
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f0911
xor edx, edx
lea r8d, [rdx + 0xa]
call fcn.1401e7480
jmp 0x1400f0911
mov eax, r12d
mov byte [rsi + 0x2b7], al
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x80]
call fcn.140002bc0
mov rbx, rax
test rax, rax
je 0x1400f09a2
lea rdx, [0x14023dedc]
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400f09a2
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rbx + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
je 0x1400f09a2
movzx eax, byte [rcx]
cmp al, 0x23
jne 0x1400f0974
inc rcx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f09a5
cmp al, 0x30
jne 0x1400f0995
movzx eax, byte [rcx + 1]
cmp al, 0x78
je 0x1400f0984
cmp al, 0x58
jne 0x1400f0995
add rcx, 2
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f09a5
xor edx, edx
lea r8d, [rdx + 0xa]
call fcn.1401e7480
jmp 0x1400f09a5
mov eax, r12d
mov ecx, 0x64
cmp eax, 0x96
cmova eax, ecx
mov dword [0x1402e47dc], eax
lea rcx, [rsi + 0x2a8]
lea rdx, [rsp + 0x80]
call fcn.140101860
lea rcx, [rsp + 0xf0]
call fcn.1400fff20
nop
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x80]
call fcn.140002bc0
mov rbx, rax
test rax, rax
je 0x1400f0a65
lea rdx, str.theme
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400f0a65
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rbx + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
je 0x1400f0a65
movzx eax, byte [rcx]
cmp al, 0x23
jne 0x1400f0a37
inc rcx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f0a67
cmp al, 0x30
jne 0x1400f0a58
movzx eax, byte [rcx + 1]
cmp al, 0x78
je 0x1400f0a47
cmp al, 0x58
jne 0x1400f0a58
add rcx, 2
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f0a67
xor edx, edx
lea r8d, [rdx + 0xa]
call fcn.1401e7480
jmp 0x1400f0a67
mov eax, edi
mov dword [rsi + 0x370], eax
test eax, eax
js 0x1400f0a76
cmp eax, 0xd
jb 0x1400f0a7c
mov dword [rsi + 0x370], edi
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x80]
call fcn.140002bc0
mov rbx, rax
test rax, rax
je 0x1400f0ac2
lea rdx, [0x14023ded0]
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400f0ac2
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rbx + 8]
mov rdi, qword [rax + rcx*8 + 8]
test rdi, rdi
jne 0x1400f0ac5
mov rdi, r12
test rdi, rdi
je 0x1400f0bd6
lea rbx, [0x1402db620]
lea rbp, [0x1402db630]
nop dword [rax]
cmp rbx, rbp
jge 0x1400f0bd6
mov byte [rsp + 0x380], 0
xor eax, eax
mov qword [rsp + 0x381], rax
mov qword [rsp + 0x389], rax
mov qword [rsp + 0x391], rax
mov qword [rsp + 0x399], rax
mov qword [rsp + 0x3a1], rax
mov qword [rsp + 0x3a9], rax
mov qword [rsp + 0x3b1], rax
mov dword [rsp + 0x3b9], eax
mov word [rsp + 0x3bd], ax
mov byte [rsp + 0x3bf], al
mov dword [rsp + 0x70], 0x40
mov dword [rsp + 0x20], r12d
lea r9d, [rax + 0x2c]
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x380]
mov rcx, rdi
call fcn.140001950
mov rdi, rax
movzx eax, byte [rsp + 0x380]
cmp al, 0x23
jne 0x1400f0b8b
xor edx, edx
lea r8d, [rdx + 0x10]
lea rcx, [rsp + 0x381]
call fcn.1401e74b0
jmp 0x1400f0bc7
cmp al, 0x30
jne 0x1400f0bb4
movzx eax, byte [rsp + 0x381]
cmp al, 0x78
je 0x1400f0b9f
cmp al, 0x58
jne 0x1400f0bb4
xor edx, edx
lea r8d, [rdx + 0x10]
lea rcx, [rsp + 0x382]
call fcn.1401e74b0
jmp 0x1400f0bc7
xor edx, edx
lea r8d, [rdx + 0xa]
lea rcx, [rsp + 0x380]
call fcn.1401e74b0
mov dword [rbx], eax
add rbx, 4
test rdi, rdi
jne 0x1400f0ae0
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x80]
call fcn.140002bc0
mov rbx, rax
test rax, rax
je 0x1400f0c70
lea rdx, str.tray
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400f0c70
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rbx + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
je 0x1400f0c70
movzx eax, byte [rcx]
cmp al, 0x23
jne 0x1400f0c35
inc rcx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
mov ebp, eax
jmp 0x1400f0c65
cmp al, 0x30
jne 0x1400f0c58
movzx eax, byte [rcx + 1]
cmp al, 0x78
je 0x1400f0c45
cmp al, 0x58
jne 0x1400f0c58
add rcx, 2
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
mov ebp, eax
jmp 0x1400f0c65
xor edx, edx
lea r8d, [rdx + 0xa]
call fcn.1401e7480
mov ebp, eax
cmp ebp, 2
je 0x1400f0d7b
jmp 0x1400f0c73
mov ebp, r12d
lea rcx, [rsi + 0x128]
xor r8d, r8d
xor edx, edx
call fcn.1400010a0
mov r12, qword [0x1402e4a90]
mov ebx, 0x80
movsxd rcx, ebx
mov eax, 2
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1401e74e4
mov rdi, rax
test rax, rax
je 0x1400f0cf0
mov r9d, ebx
mov r8, rax
mov edx, 0x80
mov rcx, r12
call qword [sym.imp.USER32.dll_LoadStringW]
lea ecx, [rbx - 1]
cmp eax, ecx
jl 0x1400f0ce7
mov rcx, rdi
call fcn.1401e6538
xor edi, edi
add ebx, ebx
cmp ebx, 0x19000
jl 0x1400f0c90
jmp 0x1400f0cf0
mov dword [rsp + 0x78], ebx
xor r12d, r12d
jmp 0x1400f0cf8
xor r12d, r12d
mov dword [rsp + 0x78], r12d
mov qword [rsp + 0x70], rdi
lea rdx, str._10.1
lea rcx, [rsp + 0x70]
call fcn.1400e9c80
mov rbx, qword [rsp + 0x70]
test rbx, rbx
cmovne r14, rbx
mov qword [rsp + 0x20], r14
mov r9, r15
xor edx, edx
lea r8d, [rdx + 1]
mov rcx, rsi
call fcn.1400ea7f0
test eax, eax
sete dil
test rbx, rbx
je 0x1400f0d43
mov rcx, rbx
call fcn.1401e6538
test dil, dil
je 0x1400f0d67
xor r9d, r9d
mov edx, 0x12c
mov r8d, 0x7d0
mov rcx, qword [rsi + 8]
call qword [sym.imp.USER32.dll_SetTimer]
mov qword [rsi + 0x2d0], rax
cmp ebp, 1
je 0x1400f0d7b
mov edx, 0xa
mov rcx, qword [rsi + 8]
call qword [sym.imp.USER32.dll_ShowWindow]
lea rcx, [rsi + 0xe0]
mov r9d, 8
lea r8, [rsi + 8]
lea rdx, str.SM_GotoHTTP_x64
call fcn.1400eb2c0
mov edx, VarUI4FromDisp
mov r8d, 1
mov rcx, qword [rsi + 8]
call fcn.140101290
mov edx, 0x233
mov r8d, 1
mov rcx, qword [rsi + 8]
call fcn.140101290
mov edx, 0x4a
lea r8d, [rdx - 0x49]
mov rcx, qword [rsi + 8]
call fcn.140101290
mov edx, 0x49
lea r8d, [rdx - 0x48]
mov rcx, qword [rsi + 8]
call fcn.140101290
lea rdx, [rsp + 0xd0]
mov rcx, qword [rsi + 8]
call qword [sym.imp.USER32.dll_GetClientRect]
lea rcx, [rsi + 0x1a8]
lea r8, [rsp + 0xd0]
mov rdx, qword [rsi + 8]
call fcn.1400fea10
lea rcx, [rsi + 0x90]
xor r8d, r8d
xor edx, edx
call fcn.1400010a0
xor r9d, r9d
mov edx, VarUI4FromDisp
lea r8d, [r9 + 1]
mov rcx, qword [rsi + 8]
call qword [sym.imp.USER32.dll_PostMessageW]
nop
lea rcx, [rsp + 0xf0]
call fcn.1400ff820
nop
cmp dword [rsp + 0xc4], 0
je 0x1400f0f3f
mov dword [rsp + 0xc4], r12d
xor r8d, r8d
lea rdx, str.general
lea rcx, [rsp + 0x80]
call fcn.140002bc0
mov rbx, rax
test rax, rax
je 0x1400f0ee5
lea rdx, [0x14023cfd0]
mov rcx, rax
call fcn.140001f40
test eax, eax
js 0x1400f0ee5
movsxd rcx, eax
add rcx, rcx
mov rax, qword [rbx + 8]
mov rcx, qword [rax + rcx*8 + 8]
test rcx, rcx
je 0x1400f0ee5
movzx eax, byte [rcx]
cmp al, 0x23
jne 0x1400f0eb7
inc rcx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f0ee8
cmp al, 0x30
jne 0x1400f0ed8
movzx eax, byte [rcx + 1]
cmp al, 0x78
je 0x1400f0ec7
cmp al, 0x58
jne 0x1400f0ed8
add rcx, 2
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1401e7480
jmp 0x1400f0ee8
xor edx, edx
lea r8d, [rdx + 0xa]
call fcn.1401e7480
jmp 0x1400f0ee8
mov eax, r12d
and al, 9
cmp al, 1
jne 0x1400f0f1a
mov rax, qword [0x1402e4808]
test rax, rax
je 0x1400f0f02
mov rdx, qword [rax]
test rdx, rdx
jne 0x1400f0f05
mov rdx, r12
mov r8d, 1
lea rcx, [rsp + 0x80]
call fcn.140002830
jmp 0x1400f0f3f
mov rax, qword [0x1402e4808]
test rax, rax
je 0x1400f0f2e
mov rdx, qword [rax]
test rdx, rdx
jne 0x1400f0f31
mov rdx, r12
lea rcx, [rsp + 0x80]
call fcn.1400027b0
nop
lea rcx, [rsp + 0x80]
call fcn.1400026d0
movabs rax, 1
mov rcx, qword [rsp + 0x3d0]
xor rcx, rsp
call fcn.1401e6720
lea r11, [rsp + 0x3e0]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret