Function at 0x140012e50
Capabilities:
Create http request
Download and write a file
Get common file path
Read data from internet
Receive and write data from server to client
Receive data
Write file on windows

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x1e8
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x150], xmm6
mov qword [rbp + 0x148], 0xfffffffffffffffe
mov qword [rbp + 0xf0], r9
mov r15, r8
mov rsi, rdx
movaps xmm0, xmmword [0x1402efa40]
movups xmmword [rbp + 0xd8], xmm0
mov qword [rbp + 0xe8], reloc.WS2_32.dll_ntohs
movabs rax, 0x64616f6c6e776f64
mov qword [rbp + 0xd0], rax
movabs rax, 0x6e7572646e416461
mov qword [rbp + 0xd6], rax
mov qword [rsp + 0x20], 2
lea r9, [0x1402f06c8]
lea rcx, [rbp + 0xd0]
mov edx, 2
mov qword [rbp + 0xf8], rsi
call fcn.1400024d0
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x130], xmm1
movaps xmmword [rbp + 0x120], xmm0
movaps xmm6, xmmword [0x1402ef840]
movups xmmword [rax + 0x10], xmm6
mov byte [rax], 0
mov r8, qword [rsi + 0x10]
cmp qword [rsi + 0x18], 0x10
mov r9, rsi
jb 0x140012f21
mov r9, qword [rsi]
mov rcx, qword [rbp + 0x130]
mov rax, qword [rbp + 0x138]
mov rdx, rax
sub rdx, rcx
cmp rdx, r8
jae 0x140012f53
mov qword [rsp + 0x20], r8
lea rcx, [rbp + 0x120]
mov rdx, r8
call fcn.1400024d0
mov rsi, rax
jmp 0x140012f84
lea rdi, [rcx + r8]
mov qword [rbp + 0x130], rdi
lea rsi, [rbp + 0x120]
mov rbx, rsi
cmp rax, 0x10
jb 0x140012f75
mov rbx, qword [rbp + 0x120]
add rcx, rbx
mov rdx, r9
call fcn.1402ba9f0
mov byte [rbx + rdi], 0
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
movaps xmmword [rbp + 0x110], xmm1
movaps xmmword [rbp + 0x100], xmm0
movups xmmword [rsi + 0x10], xmm6
mov byte [rsi], 0
mov rcx, qword [rbp + 0x110]
mov rdx, qword [rbp + 0x118]
mov rax, rdx
sub rax, rcx
cmp rax, 2
jae 0x140012fdd
mov qword [rsp + 0x20], 2
lea r9, [0x1402f06c8]
lea rcx, [rbp + 0x100]
mov edx, 2
call fcn.1400024d0
jmp 0x14001300a
lea rax, [rcx + 2]
mov qword [rbp + 0x110], rax
lea rax, [rbp + 0x100]
mov rbx, rax
cmp rdx, 0x10
jb 0x140012fff
mov rbx, qword [rbp + 0x100]
mov word [rbx + rcx], 0x203a
mov byte [rbx + rcx + 2], 0
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp - 0x30], xmm1
movaps xmmword [rbp - 0x40], xmm0
movups xmmword [rax + 0x10], xmm6
mov byte [rax], 0
mov r8, qword [rbp - 0x30]
cmp qword [rbp - 0x28], 0x10
jb 0x140013031
mov r9, qword [rbp - 0x40]
jmp 0x140013035
lea r9, [rbp - 0x40]
mov rcx, qword [r15 + 0x10]
mov rax, qword [r15 + 0x18]
mov rdx, rax
sub rdx, rcx
cmp rdx, r8
jae 0x140013064
mov qword [rsp + 0x20], r8
mov rcx, r15
mov rdx, r8
call fcn.1400024d0
mov rax, qword [rbp - 0x28]
cmp rax, 0x10
jae 0x140013091
jmp 0x1400130c6
lea rsi, [rcx + r8]
mov qword [r15 + 0x10], rsi
mov rdi, r15
cmp rax, 0x10
jb 0x140013078
mov rdi, qword [r15]
add rcx, rdi
mov rdx, r9
call fcn.1402ba9f0
mov byte [rdi + rsi], 0
mov rax, qword [rbp - 0x28]
cmp rax, 0x10
jb 0x1400130c6
mov rcx, qword [rbp - 0x40]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x1400130c1
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x1400144c2
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.1402b4754
movaps xmmword [rbp - 0x30], xmm6
mov byte [rbp - 0x40], 0
mov rax, qword [rbp + 0x118]
cmp rax, 0x10
jb 0x140013113
mov rcx, qword [rbp + 0x100]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x14001310e
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x1400144c7
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.1402b4754
movaps xmmword [rbp + 0x110], xmm6
mov byte [rbp + 0x100], 0
mov rax, qword [rbp + 0x138]
cmp rax, 0x10
jb 0x140013166
mov rcx, qword [rbp + 0x120]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140013161
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x1400144cc
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.1402b4754
movaps xmmword [rbp + 0x130], xmm6
mov byte [rbp + 0x120], 0
mov rax, qword [rbp + 0xe8]
cmp rax, 0x10
jb 0x1400131b9
mov rcx, qword [rbp + 0xd0]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x1400131b4
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x1400144d1
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.1402b4754
lea rdx, [rbp - 0x40]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathA]
lea rdx, [0x1402f0dec]
lea rcx, [rbp - 0x40]
xor r8d, r8d
mov r9, qword [rbp + 0xf0]
call qword [sym.imp.KERNEL32.dll_GetTempFileNameA]
test eax, eax
je 0x1400132cb
mov dword [rsp + 0x20], 0
lea rcx, str.WinINet
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.WININET.dll_InternetOpenA]
mov r12, rax
test rax, rax
je 0x1400133f7
mov rax, qword [rbp + 0xf8]
cmp qword [rax + 0x18], 0x10
mov rdx, rax
jb 0x140013228
mov rdx, qword [rax]
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0x80800000
mov rcx, r12
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.WININET.dll_InternetOpenUrlA]
mov rsi, rax
test rax, rax
je 0x140013493
mov ecx, 0x18
call fcn.1402b4764
mov rdi, rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov qword [rax + 0x10], 0
mov ecx, 0x800
call fcn.1402b475c
mov rbx, rax
lea r13, [rbp + 0xd0]
mov r14, qword [sym.imp.WININET.dll_InternetReadFile]
nop word [rax + rax]
mov rcx, rsi
mov rdx, rbx
mov r8d, 0x800
mov r9, r13
call r14
test eax, eax
je 0x140013363
mov r9d, dword [rbp + 0xd0]
test r9d, r9d
je 0x140013363
mov rdx, qword [rdi + 8]
mov rcx, rdi
mov r8, rbx
call fcn.140019720
jmp 0x140013290
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor esi, esi
mov ecx, 0xcccccccd
nop dword [rax + rax]
mov edx, eax
imul rdx, rcx
shr rdx, 0x23
lea ebx, [rdx + rdx]
lea ebx, [rbx + rbx*4]
mov edi, eax
sub edi, ebx
or dil, 0x30
mov byte [rbp + rsi + 0x114], dil
dec rsi
cmp eax, 9
mov eax, edx
ja 0x1400132e0
xorps xmm0, xmm0
movaps xmmword [rbp + 0x130], xmm0
movaps xmmword [rbp + 0x120], xmm0
test rsi, rsi
je 0x140013533
mov rdi, rsi
neg rdi
js 0x1400144db
lea r14, [rsi + rbp]
add r14, 0x115
cmp rdi, 0xf
ja 0x140013601
mov qword [rbp + 0x130], rdi
mov qword [rbp + 0x138], reloc.WS2_32.dll_ntohs
lea rbx, [rbp + 0x120]
jmp 0x140013817
mov rcx, rbx
call fcn.1402b4754
mov rcx, rsi
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov rcx, r12
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 2
mov rcx, qword [rbp + 0xf0]
mov edx, 0x40000000
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov rsi, rax
cmp rax, 0xffffffffffffffff
je 0x14001364c
mov r8d, dword [rdi + 8]
mov rdx, qword [rdi]
sub r8d, edx
mov qword [rsp + 0x20], 0
lea r9, [rbp + 0xcc]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov r14d, eax
test eax, eax
je 0x1400139a9
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400144a1
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor esi, esi
mov ecx, 0xcccccccd
nop word cs:[rax + rax]
mov edx, eax
imul rdx, rcx
shr rdx, 0x23
lea ebx, [rdx + rdx]
lea ebx, [rbx + rbx*4]
mov edi, eax
sub edi, ebx
or dil, 0x30
mov byte [rbp + rsi + 0x114], dil
dec rsi
cmp eax, 9
mov eax, edx
ja 0x140013410
xorps xmm0, xmm0
movaps xmmword [rbp + 0x130], xmm0
movaps xmmword [rbp + 0x120], xmm0
test rsi, rsi
je 0x1400136e3
mov rdi, rsi
neg rdi
js 0x1400144e0
lea r14, [rsi + rbp]
add r14, 0x115
cmp rdi, 0xf
ja 0x1400137aa
mov qword [rbp + 0x130], rdi
mov qword [rbp + 0x138], reloc.WS2_32.dll_ntohs
lea rbx, [rbp + 0x120]
jmp 0x140013b77
mov rcx, r12
call qword [sym.imp.WININET.dll_InternetCloseHandle]
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor esi, esi
mov ecx, 0xcccccccd
nop dword [rax]
mov edx, eax
imul rdx, rcx
shr rdx, 0x23
lea ebx, [rdx + rdx]
lea ebx, [rbx + rbx*4]
mov edi, eax
sub edi, ebx
or dil, 0x30
mov byte [rbp + rsi + 0x114], dil
dec rsi
cmp eax, 9
mov eax, edx
ja 0x1400134b0
xorps xmm0, xmm0
movaps xmmword [rbp + 0x130], xmm0
movaps xmmword [rbp + 0x120], xmm0
test rsi, rsi
je 0x140013a43
mov rdi, rsi
neg rdi
js 0x1400144ea
lea r14, [rsi + rbp]
add r14, 0x115
cmp rdi, 0xf
ja 0x140013b0a
mov qword [rbp + 0x130], rdi
mov qword [rbp + 0x138], reloc.WS2_32.dll_ntohs
lea rbx, [rbp + 0x120]
jmp 0x140013e3d
mov qword [rbp + 0x138], reloc.WS2_32.dll_ntohs
mov eax, reloc.WS2_32.dll_ntohs
xor r8d, r8d
mov rcx, rax
sub rcx, r8
cmp rcx, 0x18
jb 0x140013849
lea rcx, [rbp + 0x138]
lea rdx, [r8 + 0x18]
mov qword [rbp + 0x130], rdx
cmp rax, 0x10
mov rdx, qword [rbp + 0x120]
lea rsi, [rbp + 0x120]
mov rdi, rsi
cmovae rdi, rdx
lea r9, [0x1402f0e08]
mov r14d, 0x18
mov ebx, 0x18
cmp rdi, r9
jae 0x1400135b7
lea r10, [rdi + r8]
lea r9, str.GetTempFileName_failed:
mov ebx, 0x18
cmp r10, r9
jb 0x1400135b7
mov rbx, rdi
sub rbx, r9
ja 0x1400135b7
xor ebx, ebx
inc r8
add rdx, 0x18
cmp rax, 0x10
cmovae rcx, rdx
mov rdx, rdi
call fcn.1402ba9f0
lea r12, str.GetTempFileName_failed:
mov rcx, rdi
mov rdx, r12
mov r8, rbx
call fcn.1402ba9f0
sub r14, rbx
lea rdx, [rbx + r12]
add rdx, 0x18
add rdi, rbx
mov rcx, rdi
mov r8, r14
call fcn.1402ba9f0
jmp 0x140013875
mov qword [rbp + 0x138], reloc.WS2_32.dll_ntohs
mov rax, rdi
or rax, 0xf
cmp rax, 0x17
mov r12d, reloc.WS2_32.dll_shutdown
cmovae r12, rax
cmp r12, 0xfff
jb 0x1400137f5
lea rcx, [r12 + 0x28]
call fcn.1402b4764
mov rbx, rax
add rbx, 0x27
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x140013802
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor esi, esi
mov ecx, 0xcccccccd
nop dword [rax]
mov edx, eax
imul rdx, rcx
shr rdx, 0x23
lea ebx, [rdx + rdx]
lea ebx, [rbx + rbx*4]
mov edi, eax
sub edi, ebx
or dil, 0x30
mov byte [rbp + rsi + 0x114], dil
dec rsi
cmp eax, 9
mov eax, edx
ja 0x140013660
xorps xmm0, xmm0
movaps xmmword [rbp + 0x130], xmm0
movaps xmmword [rbp + 0x120], xmm0
test rsi, rsi
je 0x140013d09
mov rdi, rsi
neg rdi
js 0x1400144f4
lea r14, [rsi + rbp]
add r14, 0x115
cmp rdi, 0xf
ja 0x140013dd0
mov qword [rbp + 0x130], rdi
mov qword [rbp + 0x138], reloc.WS2_32.dll_ntohs
lea rbx, [rbp + 0x120]
jmp 0x140014102
mov qword [rbp + 0x138], reloc.WS2_32.dll_ntohs
mov eax, reloc.WS2_32.dll_ntohs
xor r8d, r8d
mov rcx, rax
sub rcx, r8
cmp rcx, 0x17
jb 0x140013ba9
lea rcx, [r8 + 0x17]
mov qword [rbp + 0x130], rcx
cmp rax, 0x10
mov rcx, qword [rbp + 0x120]
lea rsi, [rbp + 0x120]
mov rdi, rsi
cmovae rdi, rcx
lea rdx, [0x1402f0e28]
mov r14d, reloc.WS2_32.dll_socket
mov ebx, reloc.WS2_32.dll_socket
cmp rdi, rdx
jae 0x140013760
lea rdx, [rdi + r8]
lea r9, str.InternetOpen___failed:
mov ebx, reloc.WS2_32.dll_socket
cmp rdx, r9
jb 0x140013760
mov rbx, rdi
sub rbx, r9
ja 0x140013760
xor ebx, ebx
inc r8
cmp rax, 0x10
cmovb rcx, rsi
add rcx, 0x17
mov rdx, rdi
call fcn.1402ba9f0
lea r12, str.InternetOpen___failed:
mov rcx, rdi
mov rdx, r12
mov r8, rbx
call fcn.1402ba9f0
sub r14, rbx
lea rdx, [rbx + r12]
add rdx, 0x17
add rdi, rbx
mov rcx, rdi
mov r8, r14
call fcn.1402ba9f0
jmp 0x140013bd5
mov qword [rbp + 0x138], reloc.WS2_32.dll_ntohs
mov rax, rdi
or rax, 0xf
cmp rax, 0x17
mov r12d, reloc.WS2_32.dll_shutdown
cmovae r12, rax
cmp r12, 0xfff
jb 0x140013b55
lea rcx, [r12 + 0x28]
call fcn.1402b4764
mov rbx, rax
add rbx, 0x27
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x140013b62
lea rcx, [r12 + 1]
call fcn.1402b4764
mov rbx, rax
mov qword [rbp + 0x120], rbx
mov qword [rbp + 0x130], rdi
mov qword [rbp + 0x138], r12
mov rcx, rbx
mov rdx, r14
mov r8, rdi
call fcn.1402ba9f0
sub rbx, rsi
mov byte [rbx], 0
mov r8, qword [rbp + 0x130]
mov rax, qword [rbp + 0x138]
mov rcx, rax
sub rcx, r8
cmp rcx, 0x18
jae 0x140013556
lea rax, str.GetTempFileName_failed:
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0x18
lea rcx, [rbp + 0x120]
mov edx, 0x18
xor r9d, r9d
call fcn.14000a620
mov rsi, rax
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
movaps xmmword [rbp + 0x110], xmm1
movaps xmmword [rbp + 0x100], xmm0
movups xmmword [rsi + 0x10], xmm6
mov byte [rsi], 0
mov r8, qword [rbp + 0x110]
cmp qword [rbp + 0x118], 0x10
jb 0x1400138ab
mov r9, qword [rbp + 0x100]
jmp 0x1400138b2
lea r9, [rbp + 0x100]
mov rcx, qword [r15 + 0x10]
mov rax, qword [r15 + 0x18]
mov rdx, rax
sub rdx, rcx
cmp rdx, r8
jae 0x1400138eb
mov qword [rsp + 0x20], r8
mov rcx, r15
mov rdx, r8
call fcn.1400024d0
mov rax, qword [rbp + 0x118]
cmp rax, 0x10
mov rdi, qword [rbp + 0xf8]
jae 0x140013920
jmp 0x140013958
lea rsi, [rcx + r8]
mov qword [r15 + 0x10], rsi
cmp rax, 0x10
jb 0x1400138fc
mov r15, qword [r15]
add rcx, r15
mov rdx, r9
call fcn.1402ba9f0
mov byte [r15 + rsi], 0
mov rax, qword [rbp + 0x118]
cmp rax, 0x10
mov rdi, qword [rbp + 0xf8]
jb 0x140013958
mov rcx, qword [rbp + 0x100]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140013953
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x1400144e5
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.1402b4754
movaps xmmword [rbp + 0x110], xmm6
mov byte [rbp + 0x100], 0
mov rax, qword [rbp + 0x138]
cmp rax, 0x10
jb 0x140014296
mov rcx, qword [rbp + 0x120]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140014291
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jb 0x140014287
call fcn.1402bfaa4
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor esi, esi
mov ecx, 0xcccccccd
nop word cs:[rax + rax]
mov edx, eax
imul rdx, rcx
shr rdx, 0x23
lea ebx, [rdx + rdx]
lea ebx, [rbx + rbx*4]
mov edi, eax
sub edi, ebx
or dil, 0x30
mov byte [rbp + rsi + 0x114], dil
dec rsi
cmp eax, 9
mov eax, edx
ja 0x1400139c0
xorps xmm0, xmm0
movaps xmmword [rbp + 0x130], xmm0
movaps xmmword [rbp + 0x120], xmm0
test rsi, rsi
je 0x140013fcf
mov rbx, rsi
neg rbx
js 0x1400144fe
lea r12, [rsi + rbp]
add r12, 0x115
cmp rbx, 0xf
ja 0x140014096
mov qword [rbp + 0x130], rbx
mov qword [rbp + 0x138], reloc.WS2_32.dll_ntohs
lea rdi, [rbp + 0x120]
jmp 0x14001431b
mov qword [rbp + 0x138], reloc.WS2_32.dll_ntohs
mov eax, reloc.WS2_32.dll_ntohs
xor r8d, r8d
mov rcx, rax
sub rcx, r8
cmp rcx, 0x1a
jb 0x140013e6f
lea rcx, [r8 + 0x1a]
mov qword [rbp + 0x130], rcx
cmp rax, 0x10
mov rcx, qword [rbp + 0x120]
lea rsi, [rbp + 0x120]
mov rdi, rsi
cmovae rdi, rcx
lea rdx, [0x1402f0e43]
mov r14d, 0x1a
mov ebx, 0x1a
cmp rdi, rdx
jae 0x140013ac0
lea rdx, [rdi + r8]
lea r9, str.InternetOpenUrl___failed:
mov ebx, 0x1a
cmp rdx, r9
jb 0x140013ac0
mov rbx, rdi
sub rbx, r9
ja 0x140013ac0
xor ebx, ebx
inc r8
cmp rax, 0x10
cmovb rcx, rsi
add rcx, 0x1a
mov rdx, rdi
call fcn.1402ba9f0
lea r12, str.InternetOpenUrl___failed:
mov rcx, rdi
mov rdx, r12
mov r8, rbx
call fcn.1402ba9f0
sub r14, rbx
lea rdx, [rbx + r12]
add rdx, 0x1a
add rdi, rbx
mov rcx, rdi
mov r8, r14
call fcn.1402ba9f0
jmp 0x140013e9b
mov qword [rbp + 0x138], reloc.WS2_32.dll_ntohs
mov rax, rdi
or rax, 0xf
cmp rax, 0x17
mov r12d, reloc.WS2_32.dll_shutdown
cmovae r12, rax
cmp r12, 0xfff
jb 0x140013e1b
lea rcx, [r12 + 0x28]
call fcn.1402b4764
mov rbx, rax
add rbx, 0x27
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x140013e28
lea rcx, [r12 + 1]
call fcn.1402b4764
mov rbx, rax
mov qword [rbp + 0x120], rbx
mov qword [rbp + 0x130], rdi
mov qword [rbp + 0x138], r12
mov rcx, rbx
mov rdx, r14
mov r8, rdi
call fcn.1402ba9f0
sub rbx, rsi
mov byte [rbx], 0
mov r8, qword [rbp + 0x130]
mov rax, qword [rbp + 0x138]
mov rcx, rax
sub rcx, r8
cmp rcx, 0x17
jae 0x140013706
lea rax, str.InternetOpen___failed:
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], reloc.WS2_32.dll_socket
lea rcx, [rbp + 0x120]
mov edx, reloc.WS2_32.dll_socket
xor r9d, r9d
call fcn.14000a620
mov rsi, rax
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
movaps xmmword [rbp + 0x110], xmm1
movaps xmmword [rbp + 0x100], xmm0
movups xmmword [rsi + 0x10], xmm6
mov byte [rsi], 0
mov r8, qword [rbp + 0x110]
cmp qword [rbp + 0x118], 0x10
jb 0x140013c0b
mov r9, qword [rbp + 0x100]
jmp 0x140013c12
lea r9, [rbp + 0x100]
mov rcx, qword [r15 + 0x10]
mov rax, qword [r15 + 0x18]
mov rdx, rax
sub rdx, rcx
cmp rdx, r8
jae 0x140013c4b
mov qword [rsp + 0x20], r8
mov rcx, r15
mov rdx, r8
call fcn.1400024d0
mov rax, qword [rbp + 0x118]
cmp rax, 0x10
mov rdi, qword [rbp + 0xf8]
jae 0x140013c80
jmp 0x140013cb8
lea rsi, [rcx + r8]
mov qword [r15 + 0x10], rsi
cmp rax, 0x10
jb 0x140013c5c
mov r15, qword [r15]
add rcx, r15
mov rdx, r9
call fcn.1402ba9f0
mov byte [r15 + rsi], 0
mov rax, qword [rbp + 0x118]
cmp rax, 0x10
mov rdi, qword [rbp + 0xf8]
jb 0x140013cb8
mov rcx, qword [rbp + 0x100]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140013cb3
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x1400144ef
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.1402b4754
movaps xmmword [rbp + 0x110], xmm6
mov byte [rbp + 0x100], 0
mov rax, qword [rbp + 0x138]
cmp rax, 0x10
jb 0x140014296
mov rcx, qword [rbp + 0x120]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140014291
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jb 0x140014287
call fcn.1402bfaa4
mov qword [rbp + 0x138], reloc.WS2_32.dll_ntohs
mov eax, reloc.WS2_32.dll_ntohs
xor r8d, r8d
mov rcx, rax
sub rcx, r8
cmp rcx, 0x17
jb 0x140014134
lea rcx, [r8 + 0x17]
mov qword [rbp + 0x130], rcx
cmp rax, 0x10
mov rcx, qword [rbp + 0x120]
lea rsi, [rbp + 0x120]
mov rdi, rsi
cmovae rdi, rcx
lea rdx, [0x1402f0e5b]
mov r14d, reloc.WS2_32.dll_socket
mov ebx, reloc.WS2_32.dll_socket
cmp rdi, rdx
jae 0x140013d86
lea rdx, [rdi + r8]
lea r9, str.Failed_to_create_file:
mov ebx, reloc.WS2_32.dll_socket
cmp rdx, r9
jb 0x140013d86
mov rbx, rdi
sub rbx, r9
ja 0x140013d86
xor ebx, ebx
inc r8
cmp rax, 0x10
cmovb rcx, rsi
add rcx, 0x17
mov rdx, rdi
call fcn.1402ba9f0
lea r12, str.Failed_to_create_file:
mov rcx, rdi
mov rdx, r12
mov r8, rbx
call fcn.1402ba9f0
sub r14, rbx
lea rdx, [rbx + r12]
add rdx, 0x17
add rdi, rbx
mov rcx, rdi
mov r8, r14
call fcn.1402ba9f0
jmp 0x140014160
mov qword [rbp + 0x138], reloc.WS2_32.dll_ntohs
mov rax, rdi
or rax, 0xf
cmp rax, 0x17
mov r12d, reloc.WS2_32.dll_shutdown
cmovae r12, rax
cmp r12, 0xfff
jb 0x1400140e0
lea rcx, [r12 + 0x28]
call fcn.1402b4764
mov rbx, rax
add rbx, 0x27
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x1400140ed
lea rcx, [r12 + 1]
call fcn.1402b4764
mov rbx, rax
mov qword [rbp + 0x120], rbx
mov qword [rbp + 0x130], rdi
mov qword [rbp + 0x138], r12
mov rcx, rbx
mov rdx, r14
mov r8, rdi
call fcn.1402ba9f0
sub rbx, rsi
mov byte [rbx], 0
mov r8, qword [rbp + 0x130]
mov rax, qword [rbp + 0x138]
mov rcx, rax
sub rcx, r8
cmp rcx, 0x1a
jae 0x140013a66
lea rax, str.InternetOpenUrl___failed:
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0x1a
lea rcx, [rbp + 0x120]
mov edx, 0x1a
xor r9d, r9d
call fcn.14000a620
mov rsi, rax
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
movaps xmmword [rbp + 0x110], xmm1
movaps xmmword [rbp + 0x100], xmm0
movups xmmword [rsi + 0x10], xmm6
mov byte [rsi], 0
mov r8, qword [rbp + 0x110]
cmp qword [rbp + 0x118], 0x10
jb 0x140013ed1
mov r9, qword [rbp + 0x100]
jmp 0x140013ed8
lea r9, [rbp + 0x100]
mov rcx, qword [r15 + 0x10]
mov rax, qword [r15 + 0x18]
mov rdx, rax
sub rdx, rcx
cmp rdx, r8
jae 0x140013f11
mov qword [rsp + 0x20], r8
mov rcx, r15
mov rdx, r8
call fcn.1400024d0
mov rax, qword [rbp + 0x118]
cmp rax, 0x10
mov rdi, qword [rbp + 0xf8]
jae 0x140013f46
jmp 0x140013f7e
lea rsi, [rcx + r8]
mov qword [r15 + 0x10], rsi
cmp rax, 0x10
jb 0x140013f22
mov r15, qword [r15]
add rcx, r15
mov rdx, r9
call fcn.1402ba9f0
mov byte [r15 + rsi], 0
mov rax, qword [rbp + 0x118]
cmp rax, 0x10
mov rdi, qword [rbp + 0xf8]
jb 0x140013f7e
mov rcx, qword [rbp + 0x100]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140013f79
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x1400144f9
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.1402b4754
movaps xmmword [rbp + 0x110], xmm6
mov byte [rbp + 0x100], 0
mov rax, qword [rbp + 0x138]
cmp rax, 0x10
jb 0x140014296
mov rcx, qword [rbp + 0x120]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140014291
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jb 0x140014287
call fcn.1402bfaa4
mov qword [rbp + 0x138], reloc.WS2_32.dll_ntohs
mov eax, reloc.WS2_32.dll_ntohs
xor r8d, r8d
mov rcx, rax
sub rcx, r8
cmp rcx, 0x19
jb 0x14001434d
lea rcx, [r8 + 0x19]
mov qword [rbp + 0x130], rcx
cmp rax, 0x10
mov rcx, qword [rbp + 0x120]
lea rsi, [rbp + 0x120]
mov rbx, rsi
cmovae rbx, rcx
lea rdx, [0x1402f0e75]
mov r12d, 0x19
mov edi, 0x19
cmp rbx, rdx
jae 0x14001404c
lea rdx, [rbx + r8]
lea r9, str.Failed_to_write_to_file:
mov edi, 0x19
cmp rdx, r9
jb 0x14001404c
mov rdi, rbx
sub rdi, r9
ja 0x14001404c
xor edi, edi
inc r8
cmp rax, 0x10
cmovb rcx, rsi
add rcx, 0x19
mov rdx, rbx
call fcn.1402ba9f0
lea r13, str.Failed_to_write_to_file:
mov rcx, rbx
mov rdx, r13
mov r8, rdi
call fcn.1402ba9f0
sub r12, rdi
lea rdx, [rdi + r13]
add rdx, 0x19
add rbx, rdi
mov rcx, rbx
mov r8, r12
call fcn.1402ba9f0
jmp 0x140014379
mov qword [rbp + 0x138], reloc.WS2_32.dll_ntohs
mov rax, rbx
or rax, 0xf
cmp rax, 0x17
mov r13d, reloc.WS2_32.dll_shutdown
cmovae r13, rax
cmp r13, 0xfff
jb 0x1400142fa
lea rcx, [r13 + 0x28]
call fcn.1402b4764
mov rdi, rax
add rdi, 0x27
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x140014306
lea rcx, [r12 + 1]
call fcn.1402b4764
mov rbx, rax
mov qword [rbp + 0x120], rbx
mov qword [rbp + 0x130], rdi
mov qword [rbp + 0x138], r12
mov rcx, rbx
mov rdx, r14
mov r8, rdi
call fcn.1402ba9f0
sub rbx, rsi
mov byte [rbx], 0
mov r8, qword [rbp + 0x130]
mov rax, qword [rbp + 0x138]
mov rcx, rax
sub rcx, r8
cmp rcx, 0x17
jae 0x140013d2c
lea rax, str.Failed_to_create_file:
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], reloc.WS2_32.dll_socket
lea rcx, [rbp + 0x120]
mov edx, reloc.WS2_32.dll_socket
xor r9d, r9d
call fcn.14000a620
mov rsi, rax
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
movaps xmmword [rbp + 0x110], xmm1
movaps xmmword [rbp + 0x100], xmm0
movups xmmword [rsi + 0x10], xmm6
mov byte [rsi], 0
mov r8, qword [rbp + 0x110]
cmp qword [rbp + 0x118], 0x10
jb 0x140014196
mov r9, qword [rbp + 0x100]
jmp 0x14001419d
lea r9, [rbp + 0x100]
mov rcx, qword [r15 + 0x10]
mov rax, qword [r15 + 0x18]
mov rdx, rax
sub rdx, rcx
cmp rdx, r8
jae 0x1400141d6
mov qword [rsp + 0x20], r8
mov rcx, r15
mov rdx, r8
call fcn.1400024d0
mov rax, qword [rbp + 0x118]
cmp rax, 0x10
mov rdi, qword [rbp + 0xf8]
jae 0x14001420b
jmp 0x140014243
lea rsi, [rcx + r8]
mov qword [r15 + 0x10], rsi
cmp rax, 0x10
jb 0x1400141e7
mov r15, qword [r15]
add rcx, r15
mov rdx, r9
call fcn.1402ba9f0
mov byte [r15 + rsi], 0
mov rax, qword [rbp + 0x118]
cmp rax, 0x10
mov rdi, qword [rbp + 0xf8]
jb 0x140014243
mov rcx, qword [rbp + 0x100]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x14001423e
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x140014503
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.1402b4754
movaps xmmword [rbp + 0x110], xmm6
mov byte [rbp + 0x100], 0
mov rax, qword [rbp + 0x138]
cmp rax, 0x10
jb 0x140014296
mov rcx, qword [rbp + 0x120]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140014291
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x140014508
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.1402b4754
xor esi, esi
mov rax, qword [rdi + 0x18]
cmp rax, 0x10
jb 0x1400142d6
mov rcx, qword [rdi]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x1400142d1
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x1400144d6
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.1402b4754
movups xmmword [rdi + 0x10], xmm6
mov byte [rdi], 0
mov eax, esi
movaps xmm6, xmmword [rbp + 0x150]
add rsp, 0x1e8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea rcx, [r13 + 1]
call fcn.1402b4764
mov rdi, rax
mov qword [rbp + 0x120], rdi
mov qword [rbp + 0x130], rbx
mov qword [rbp + 0x138], r13
mov rcx, rdi
mov rdx, r12
mov r8, rbx
call fcn.1402ba9f0
sub rdi, rsi
mov byte [rdi], 0
mov r8, qword [rbp + 0x130]
mov rax, qword [rbp + 0x138]
mov rcx, rax
sub rcx, r8
cmp rcx, 0x19
jae 0x140013ff2
lea rax, str.Failed_to_write_to_file:
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0x19
lea rcx, [rbp + 0x120]
mov edx, 0x19
xor r9d, r9d
call fcn.14000a620
mov rsi, rax
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
movaps xmmword [rbp + 0x110], xmm1
movaps xmmword [rbp + 0x100], xmm0
movups xmmword [rsi + 0x10], xmm6
mov byte [rsi], 0
mov r8, qword [rbp + 0x110]
cmp qword [rbp + 0x118], 0x10
jb 0x1400143af
mov r9, qword [rbp + 0x100]
jmp 0x1400143b6
lea r9, [rbp + 0x100]
mov rcx, qword [r15 + 0x10]
mov rax, qword [r15 + 0x18]
mov rdx, rax
sub rdx, rcx
cmp rdx, r8
jae 0x1400143e8
mov qword [rsp + 0x20], r8
mov rcx, r15
mov rdx, r8
call fcn.1400024d0
mov rax, qword [rbp + 0x118]
cmp rax, 0x10
jae 0x140014416
jmp 0x14001444e
lea rsi, [rcx + r8]
mov qword [r15 + 0x10], rsi
cmp rax, 0x10
jb 0x1400143f9
mov r15, qword [r15]
add rcx, r15
mov rdx, r9
call fcn.1402ba9f0
mov byte [r15 + rsi], 0
mov rax, qword [rbp + 0x118]
cmp rax, 0x10
jb 0x14001444e
mov rcx, qword [rbp + 0x100]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140014449
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x14001450d
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.1402b4754
movaps xmmword [rbp + 0x110], xmm6
mov byte [rbp + 0x100], 0
mov rax, qword [rbp + 0x138]
cmp rax, 0x10
jb 0x1400144a1
mov rcx, qword [rbp + 0x120]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x14001449c
mov rbx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, rbx
cmp rcx, 0x20
jae 0x140014512
add rax, 0x28
mov rdx, rax
mov rcx, rbx
call fcn.1402b4754
test r14d, r14d
setne sil
mov rdi, qword [rbp + 0xf8]
mov rax, qword [rdi + 0x18]
cmp rax, 0x10
jb 0x1400142d6
jmp 0x1400142a2
call fcn.1402bfaa4
call fcn.1402bfaa4
call fcn.1402bfaa4
call fcn.1402bfaa4
call fcn.1402bfaa4
call fcn.140002090
call fcn.140002090
call fcn.1402bfaa4
call fcn.140002090
call fcn.1402bfaa4
call fcn.140002090
call fcn.1402bfaa4
call fcn.140002090
call fcn.1402bfaa4
call fcn.1402bfaa4
call fcn.1402bfaa4
call fcn.1402bfaa4
int3