Function at 0x180031550
Capabilities:
Read data from internet
Read file on windows
Receive data

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov dword [rsp + 8], ecx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x88
mov eax, ecx
xor ebx, ebx
add ecx, 0x4fc
xor edi, edi
mov dword [rsp + 0x3c], ecx
mov r11, r9
mov r13, r8
mov r12, rdx
cmp eax, ecx
jae 0x1800316ae
mov rdx, qword [rsp + 0x58]
mov r10, qword [rsp + 0x58]
mov r9, qword [rsp + 0x58]
mov r14d, dword [rsp + 0xd0]
mov r15, qword [rsp + 0xf0]
mov esi, dword [rsp + 0x50]
mov qword [rsp + 0x58], r9
mov r8, qword [rsp + 0x58]
mov qword [rsp + 0x68], r8
mov dword [rsp + 0x38], r14d
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x48], r10
movabs rbp, 0x7fffffffffffffff
cmp eax, 0x118
ja 0x180031854
je 0x1800316c9
sub eax, 0x74
je 0x180031cab
sub eax, 0xa
je 0x18003163b
sub eax, 0x1d
je 0x180031ba0
sub eax, 0x4d
je 0x180031b86
cmp eax, 0xa
mov eax, dword [rsp + 0xd0]
jne 0x18003169c
lea rdx, [r11 + 1]
lea r8, [r13 + 1]
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x68], r8
mov r10, rdx
mov qword [rsp + 0x48], rdx
jmp 0x18003169c
movzx eax, byte [r13]
lea r8, [rsp + 0x50]
xor r14d, r14d
mov byte [rsp + 0x30], al
lea rax, [rsp + 0x30]
mov dword [rsp + 0x38], r14d
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor ecx, ecx
lea edx, [r14 + 2]
call fcn.18001a9c0
mov r11, qword [rsp + 0xe8]
movzx eax, byte [r13]
mov esi, dword [rsp + 0x50]
mov rdx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x68]
mov r9, qword [rsp + 0x58]
mov r10, qword [rsp + 0x48]
mov byte [r11], al
mov ecx, dword [rsp + 0x3c]
mov eax, dword [rsp + 0xd0]
add eax, 0x74
mov dword [rsp + 0xd0], eax
cmp eax, ecx
jb 0x1800315d8
mov eax, dword [rsp + 0xd0]
add rsp, 0x88
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov r14, qword [r15]
mov r13, qword [r12 + 0x10]
cmp r13, r14
ja 0x180031834
mov r15, qword [r12 + 0x18]
cmp r15, r14
je 0x18003182c
jae 0x1800317f1
mov rcx, r14
mov rax, rbp
sub rcx, r13
sub rax, r13
cmp rax, rcx
jb 0x180031f33
mov rbx, r14
or rbx, 0xf
cmp rbx, rbp
jbe 0x180031714
mov rbx, rbp
jmp 0x180031735
mov rcx, r15
mov rax, rbp
shr rcx, 1
sub rax, rcx
cmp r15, rax
jbe 0x18003172a
mov rbx, rbp
jmp 0x180031735
lea rax, [rcx + r15]
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x18003176e
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180031f2d
mov rcx, rax
call fcn.180050104
test rax, rax
je 0x180031f26
lea rbp, [rax + 0x27]
and rbp, 0xffffffffffffffe0
mov qword [rbp - 8], rax
jmp 0x18003177f
test rcx, rcx
je 0x18003177d
call fcn.180050104
mov rbp, rax
jmp 0x18003177f
xor ebp, ebp
mov qword [r12 + 0x10], r14
lea r8, [r13 + 1]
mov qword [r12 + 0x18], rbx
mov rcx, rbp
cmp r15, 0x10
jb 0x1800317de
mov rbx, qword [r12]
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
lea rdx, [r15 + 1]
cmp rdx, 0x1000
jb 0x1800317cb
mov rcx, qword [rbx - 8]
add rdx, 0x27
sub rbx, rcx
lea rax, [rbx - 8]
cmp rax, 0x1f
ja 0x180031f26
mov rbx, rcx
mov rcx, rbx
call fcn.180050140
mov qword [r12], rbp
mov qword [r12 + 0x10], r13
jmp 0x180031805
mov rdx, r12
call sub.VCRUNTIME140.dll_memcpy
mov qword [r12], rbp
mov qword [r12 + 0x10], r13
jmp 0x180031805
cmp r14, 0x10
jae 0x18003182c
cmp r15, 0x10
jb 0x18003182c
mov rcx, r12
call fcn.180017d10
mov r11, qword [rsp + 0xe8]
mov ecx, dword [rsp + 0x3c]
mov r10, qword [rsp + 0x48]
mov eax, dword [rsp + 0xd0]
mov r9, qword [rsp + 0x58]
mov r8, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x40]
mov r15, qword [rsp + 0xf0]
mov r13, qword [rsp + 0xe0]
mov rbx, r13
cmp qword [r13 + 0x18], 0x10
jb 0x18003184a
mov rbx, qword [r13]
mov r14d, dword [rsp + 0x38]
jmp 0x18003169c
sub eax, 0x166
je 0x180031b5b
sub eax, 0x26
je 0x180031b45
sub eax, 0x4e
je 0x1800319a5
sub eax, 0x26
je 0x180031887
cmp eax, 0x4e
jne 0x180031695
mov eax, r14d
jmp 0x1800316b5
xor r8b, r8b
xor r14d, r14d
cmp qword [r15], r14
jbe 0x180031b77
nop word [rax + rax]
mov ebp, 0x11a
mov eax, ebp
sub eax, 0x11a
je 0x18003190b
cmp eax, 0x2e
jne 0x18003196c
mov rdx, qword [r11 + 0x18]
mov rcx, r11
cmp rdx, 0x10
jb 0x1800318c7
mov rcx, qword [r11]
add rcx, qword [r11 + 0x10]
inc rdi
cmp rdi, rcx
jne 0x1800318df
mov rdi, r11
cmp rdx, 0x10
jb 0x1800318df
mov rdi, qword [r11]
mov rdx, qword [r13 + 0x18]
mov rcx, r13
cmp rdx, 0x10
jb 0x1800318f0
mov rcx, qword [r13]
add rcx, qword [r13 + 0x10]
inc rbx
cmp rbx, rcx
jne 0x18003196c
mov rbx, r13
cmp rdx, 0x10
jb 0x18003196c
mov rbx, qword [r13]
jmp 0x18003196c
movzx r9d, byte [rdi]
add r9b, byte [rbx]
mov rcx, qword [r12 + 0x10]
add r9b, r8b
mov rdx, qword [r12 + 0x18]
and r9b, 0xf
cmp rcx, rdx
jae 0x180031949
lea rax, [rcx + 1]
mov qword [r12 + 0x10], rax
mov rax, r12
cmp rdx, 0x10
jb 0x18003193e
mov rax, qword [r12]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x180031958
xor r8d, r8d
mov rcx, r12
lea edx, [r8 + 1]
call fcn.180001db0
mov rcx, r12
call fcn.18001a190
mov r11, qword [rsp + 0xe8]
movzx r8d, byte [rax]
add ebp, 0x2e
cmp ebp, 0x176
jb 0x1800318a5
inc r14
cmp r14, qword [r15]
jb 0x1800318a0
mov rdx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x68]
mov r9, qword [rsp + 0x58]
mov r10, qword [rsp + 0x48]
mov r14d, dword [rsp + 0x38]
jmp 0x180031691
cmp dword [r15], 0
jne 0x180031aca
mov eax, esi
and al, 0xe0
cmp al, 0x80
jne 0x180031aca
mov r14d, esi
and r14d, 3
cmp r14d, 3
je 0x180031ac5
mov r15, qword [rsp + 0x68]
mov ebp, 0xbc
mov r12d, dword [rsp + 0x38]
nop dword [rax + rax]
mov eax, ebp
sub eax, 0xbc
je 0x180031a50
sub eax, 1
je 0x180031a4a
sub eax, 1
je 0x180031a2f
cmp eax, 1
jne 0x180031a8e
mov eax, dword [rsp + 0x70]
and eax, 0xe0
cmp al, 0xa0
jne 0x180031a8e
mov rdx, qword [rsp + 0x40]
mov r10, qword [rsp + 0x48]
test r14d, r14d
jne 0x180031a98
movabs rax, 0xf4f4f4f4f4f4f4f4
add r12d, 4
mov dword [r9], eax
jmp 0x180031a98
lea rdx, [r11 + 2]
mov qword [rsp + 0x40], rdx
mov r10, rdx
mov qword [rsp + 0x48], rdx
mov r9, rdx
mov qword [rsp + 0x58], rdx
jmp 0x180031a98
lea r15, [r13 + 2]
jmp 0x180031a8e
movzx eax, byte [r15]
lea r8, [rsp + 0x70]
xor r9d, r9d
mov byte [rsp + 0x30], al
lea rax, [rsp + 0x30]
inc r12d
xor ecx, ecx
mov qword [rsp + 0x20], rax
lea edx, [r9 + 2]
call fcn.18001a9c0
mov r11, qword [rsp + 0xe8]
movzx eax, byte [r13 + 1]
mov r9, qword [rsp + 0x58]
mov byte [r11 + 1], al
mov r10, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
inc ebp
cmp ebp, 0xc0
jb 0x1800319e0
mov qword [rsp + 0x68], r15
mov r8, qword [rsp + 0x68]
mov r15, qword [rsp + 0xf0]
mov dword [rsp + 0x38], r12d
mov r12, qword [rsp + 0xd8]
mov r14d, dword [rsp + 0x38]
mov ecx, esi
and ecx, 3
lea eax, [rcx - 1]
cmp eax, 1
ja 0x180031b29
cmp ecx, 1
jne 0x180031af1
movzx eax, byte [r8]
add r14d, ecx
mov byte [rdx], al
mov eax, ecx
mov dword [rsp + 0x38], r14d
jmp 0x180031691
cmp dword [r15], 0
je 0x180031b11
movzx eax, word [r8]
mov word [r10], ax
mov eax, 2
add r14d, eax
mov dword [rsp + 0x38], r14d
jmp 0x180031691
mov eax, dword [r8]
mov dword [r9], eax
mov eax, 4
add r14d, eax
mov dword [rsp + 0x38], r14d
jmp 0x180031691
cmp ecx, 3
jne 0x180031691
and dword [r12 + 0xc], 0xfffffff7
mov dword [r12], 1
jmp 0x180031691
cmp qword [r11 + 0x18], 0x10
mov rdi, r11
jb 0x180031695
mov rdi, qword [r11]
jmp 0x180031695
or dword [r12 + 0xc], 8
lea r9, [r11 + 1]
mov qword [rsp + 0x58], r9
mov dword [r12], 6
jmp 0x180031695
mov r8, qword [rsp + 0x68]
mov r14d, dword [rsp + 0x38]
jmp 0x180031695
mov eax, dword [rsp + 0xd0]
mov edx, 0x64
mov r12d, dword [rsp + 0xd0]
jmp 0x180031f0b
cmp qword [r13 + 0x18], 0
je 0x180031c0d
mov eax, dword [rsp + 0xd0]
mov ebx, 0xdf
mov ecx, ebx
sub ecx, 0xdf
je 0x180031bc8
cmp ecx, 1
je 0x1800316b5
jmp 0x180031bed
mov r8d, dword [r15]
lea r9, [rsp + 0x60]
mov rcx, qword [r13 + 0x18]
mov rdx, r11
call qword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
je 0x180031c00
mov eax, dword [rsp + 0x60]
mov r11, qword [rsp + 0xe8]
inc ebx
cmp ebx, 0xe1
jb 0x180031bb3
mov eax, dword [rsp + 0x60]
jmp 0x1800316b5
call qword [sym.imp.KERNEL32.dll_GetLastError]
neg eax
jmp 0x1800316b5
mov ebx, 0x6a
cmp ebx, 0x6a
je 0x180031c3e
cmp ebx, 0x2f9e
je 0x180031c34
cmp ebx, 0x5ed2
jne 0x180031c86
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x180031c7e
mov eax, dword [rsp + 0x60]
add qword [r13 + 0x10], rax
jmp 0x180031c86
mov rcx, qword [r13 + 8]
mov r8, qword [r13 + 0x10]
mov rax, rcx
mov edx, dword [r15]
sub rax, r8
cmp rdx, rax
jbe 0x180031c5c
sub ecx, r8d
mov dword [r15], ecx
mov edx, ecx
mov rcx, qword [r13]
lea r9, [rsp + 0x60]
mov r8d, edx
mov qword [rsp + 0x20], 0
mov rdx, r11
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x180031ca1
mov r11, qword [rsp + 0xe8]
add ebx, 0x2f34
cmp ebx, 0x8d9c
jbe 0x180031c12
mov eax, dword [rsp + 0x60]
jmp 0x1800316b5
mov eax, 0xffffffff
jmp 0x1800316b5
mov ebx, dword [rsp + 0xd0]
xor r12d, r12d
mov edi, dword [rsp + 0xd0]
mov r15, r13
mov esi, dword [rsp + 0xd0]
mov ebp, dword [rsp + 0xd0]
nop dword [rax]
movzx ecx, byte [r13]
mov byte [rsp + 0xd0], cl
test cl, cl
je 0x180031cea
cmp cl, 0x2c
je 0x180031cea
inc r13
jmp 0x180031cd0
mov eax, 0x33
mov dword [rsp + 0x50], eax
sub eax, 0x32
je 0x180031ec3
cmp eax, 1
jne 0x180031ecd
mov byte [r13], 0
mov r14d, 0x122
mov eax, r14d
sub eax, 0x11e
je 0x180031d36
sub eax, 1
je 0x180031d43
cmp eax, 3
jne 0x180031d68
lea rdx, [0x180054440]
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__stricmp]
mov ebx, eax
test ebx, ebx
jne 0x180031d76
or r12d, 1
jmp 0x180031ecd
test r15, r15
je 0x180031d51
mov dword [r15], 0x415341
jmp 0x180031d66
lea r8, [0x180054440]
xor edx, edx
lea rcx, str.C:_slave_buildsWinInstallerMegaPack_srcopencvmodulesimgproc_srcimgwarp.cpp
call fcn.18004e550
xor ebx, ebx
dec r14d
cmp r14d, 0x11f
ja 0x180031d10
jmp 0x180031d36
mov r14d, 0x122
nop dword [rax]
mov eax, r14d
sub eax, 0x11e
je 0x180031da6
sub eax, 1
je 0x180031db3
cmp eax, 3
jne 0x180031dd8
lea rdx, [0x180054444]
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__stricmp]
mov edi, eax
test edi, edi
jne 0x180031de6
or r12d, 2
jmp 0x180031ecd
test r15, r15
je 0x180031dc1
mov dword [r15], 0x525545
jmp 0x180031dd6
lea r8, [0x180054444]
xor edx, edx
lea rcx, str.C:_slave_buildsWinInstallerMegaPack_srcopencvmodulesimgproc_srcimgwarp.cpp
call fcn.18004e550
xor edi, edi
dec r14d
cmp r14d, 0x11f
ja 0x180031d80
jmp 0x180031da6
mov r14d, 0x122
nop dword [rax]
mov eax, r14d
sub eax, 0x11e
je 0x180031e16
sub eax, 1
je 0x180031e23
cmp eax, 3
jne 0x180031e48
lea rdx, [0x180054448]
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__stricmp]
mov esi, eax
test esi, esi
jne 0x180031e56
or r12d, 4
jmp 0x180031ecd
test r15, r15
je 0x180031e31
mov dword [r15], 0x4e504a
jmp 0x180031e46
lea r8, [0x180054448]
xor edx, edx
lea rcx, str.C:_slave_buildsWinInstallerMegaPack_srcopencvmodulesimgproc_srcimgwarp.cpp
call fcn.18004e550
xor esi, esi
dec r14d
cmp r14d, 0x11f
ja 0x180031df0
jmp 0x180031e16
mov r14d, 0x122
nop dword [rax]
mov eax, r14d
sub eax, 0x11e
je 0x180031e86
sub eax, 1
je 0x180031e90
cmp eax, 3
jne 0x180031eb5
lea rdx, [0x180053398]
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__stricmp]
mov ebp, eax
test ebp, ebp
jne 0x180031eed
or r12d, 8
jmp 0x180031ecd
test r15, r15
je 0x180031e9e
mov dword [r15], 0x415355
jmp 0x180031eb3
lea r8, [0x180053398]
xor edx, edx
lea rcx, str.C:_slave_buildsWinInstallerMegaPack_srcopencvmodulesimgproc_srcimgwarp.cpp
call fcn.18004e550
xor ebp, ebp
dec r14d
cmp r14d, 0x11f
ja 0x180031e60
jmp 0x180031e86
test cl, cl
je 0x180031efc
inc r13
mov r15, r13
mov eax, dword [rsp + 0x50]
movzx ecx, byte [rsp + 0xd0]
dec eax
mov dword [rsp + 0x50], eax
cmp eax, 0x31
ja 0x180031cf3
jmp 0x180031cd0
mov rax, qword [rsp + 0xe8]
mov eax, dword [rax]
jmp 0x1800316b5
mov r14d, dword [rsp + 0x38]
mov edx, 0x64
mov eax, r12d
dec edx
cmp edx, 0x62
jbe 0x18003187f
mov ecx, edx
sub ecx, 0x63
je 0x1800316b5
cmp ecx, 1
jne 0x180031f09
jmp 0x180031f01
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800181e0
int3
call fcn.180018320
int3