Function at 0x140052690
Capabilities:
Check os version
Get local ipv4 addresses
Get memory capacity
Get socket information
Get system information on windows
Initialize winsock library
Inspect section memory permissions
Resolve dns

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
lea rbp, [rsp - 0x758]
sub rsp, 0x858
mov rax, qword [0x1400d1608]
xor rax, rsp
mov qword [rbp + 0x730], rax
mov r12, qword [rbp + 0x7b8]
mov rdi, r9
mov rsi, r8
movzx r13d, dx
mov dword [rsp + 0x64], ecx
mov ebx, 3
xor eax, eax
lock cmpxchg dword [0x1400e35a0], ebx
cmp eax, ebx
jne 0x140052702
cmp dword [0x14023a710], 0
jl 0x1400526f8
lea rdx, str.MTP_is_already_initialized
xor ecx, ecx
call fcn.1400481d0
mov eax, 0xfffffff5
jmp 0x140052afb
lea rcx, [0x1400e35d8]
mov qword [rsp + 0x850], r14
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
lea rcx, [0x1400e35d8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [0x1400e35b0]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
lea rcx, [0x1400e35b0]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [rbp + 0x7b0]
xor r14d, r14d
cdq
mov qword [0x1400e35a4], r14
xor eax, edx
mov ecx, 7
sub eax, edx
cmp eax, ecx
cmovg eax, ecx
mov dword [0x14023a710], eax
test r12, r12
je 0x140052771
mov rax, qword [r12]
test rax, rax
jne 0x140052774
mov rax, r14
mov ecx, 0x128
mov qword [0x1400e3618], rax
call fcn.140073404
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x58]
test rax, rax
jne 0x14005279e
mov eax, 0xfffffff9
jmp 0x140052af3
mov rax, qword [rsp + 0x58]
test al, 7
jne 0x1400539bc
mov rcx, qword [rsp + 0x58]
call fcn.1400733f0
lea rcx, [rbp + 0xb0]
mov dword [rbp + 0xb0], 0x9c
call qword [sym.imp.KERNEL32.dll_GetVersionExA]
test eax, eax
je 0x14005281d
mov r8d, dword [rbp + 0xb4]
movzx eax, word [rbp + 0x144]
cmp r8d, 5
jb 0x1400527f5
jne 0x14005281d
cmp dword [rbp + 0xb8], 1
jb 0x1400527f5
jne 0x14005281d
cmp eax, ebx
jae 0x14005281d
cmp dword [0x14023a710], r14d
jl 0x140052813
mov r9d, eax
mov dword [rsp + 0x20], eax
lea rdx, str.Requires_Windows_XP_Service_Pack_3_or_later___d._d._d_
xor ecx, ecx
call fcn.1400481d0
mov eax, 0xfffffffa
jmp 0x140052af3
xorps xmm0, xmm0
lea rcx, [0x14023a5e0]
xor edx, edx
mov r8d, 0xc8
movups xmmword [0x14023a6c0], xmm0
movups xmmword [0x14023a6d0], xmm0
movups xmmword [0x14023a6e0], xmm0
movups xmmword [0x14023a6f0], xmm0
call fcn.140070680
xorps xmm0, xmm0
movups xmmword [0x14023a560], xmm0
movups xmmword [0x14023a570], xmm0
movups xmmword [0x14023a580], xmm0
movups xmmword [0x14023a590], xmm0
movups xmmword [0x14023a5a0], xmm0
movups xmmword [0x14023a5b0], xmm0
movups xmmword [0x14023a5c0], xmm0
movups xmmword [0x140239520], xmm0
movups xmmword [0x140239530], xmm0
movups xmmword [0x140239540], xmm0
movups xmmword [0x140239550], xmm0
call fcn.140045310
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov dword [0x14023a600], eax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov ecx, dword [0x14023a600]
mov qword [0x14023a628], rax
movzx eax, cx
mov dword [rsp + 0x58], eax
mov eax, dword [0x14023a710]
mov qword [0x14023a5f8], 0xffffffffffffffff
cmp eax, 1
jl 0x14005290e
mov r9, qword [str.4.3.3]
lea rdx, str.MTP_s__s_Starting.__Diagnostic_level__d_for_process__u
mov r8, qword [str._win64]
mov dword [rsp + 0x28], ecx
mov ecx, 1
mov dword [rsp + 0x20], eax
call fcn.1400481d0
mov eax, dword [0x14023a710]
cmp eax, 2
jl 0x14005292a
lea rdx, str.WARNING:_Diagnostic_levels_higher_than_1_may_reduce_performance.
mov ecx, 2
call fcn.1400481d0
mov eax, dword [0x14023a710]
cmp eax, ebx
jl 0x14005293c
lea rdx, str.WARNING:_Seriously__dont_do_this_unless_a_DEI_engineer_told_you_to.
mov ecx, ebx
call fcn.1400481d0
mov ebx, 0xa
mov qword [rsp + 0x848], r15
mov ecx, ebx
call qword [sym.imp.WINMM.dll_timeBeginPeriod]
call fcn.140051fb0
mov qword [0x140239510], rax
test rax, rax
jns 0x140052992
cmp dword [0x14023a710], r14d
jl 0x140053875
mov r8d, eax
lea rdx, str.Unable_to_initialize_MTP_clock:__d
xor ecx, ecx
call fcn.1400481d0
lea rcx, [rsp + 0x70]
call fcn.140053ed0
lea eax, [rbx - 0xc]
jmp 0x140052aeb
mov ecx, 2
mov qword [0x140239518], r14
lea rdx, [rbp + 0x150]
call qword [sym.imp.WS2_32.dll_WSAStartup]
test eax, eax
je 0x1400529e3
cmp dword [0x14023a710], r14d
jl 0x140053875
mov r8d, 0x100
lea rdx, [rbp + 0x330]
mov ecx, eax
call fcn.140044d90
lea r8, str.WSAStartup
lea rdx, [0x1400cb62c]
jmp 0x14005386b
or dword [0x14023a560], 1
call fcn.140055b70
test eax, eax
jns 0x140052a22
lea rcx, [rsp + 0x70]
call fcn.140053ed0
cmp dword [0x14023a710], r14d
jl 0x14005387f
lea rdx, str.MTP_Init_unable_to_initialize_self_pipe
xor ecx, ecx
call fcn.1400481d0
mov eax, 0xfffffffe
jmp 0x140052aeb
call fcn.1400564c0
lea ecx, [rax - 1]
cmp ecx, 0x5da
ja 0x140052a68
lea r8d, [rax - 0x5c]
mov ecx, 0x500
cmp r8d, ecx
cmovb r8d, ecx
cmp dword [0x14023a710], 1
mov dword [0x14023a698], r8d
jl 0x140052a72
mov r9d, eax
lea rdx, str.Adjusting_Max_Datagram_to__d_for_small_MTU__d
mov ecx, 1
call fcn.1400481d0
jmp 0x140052a72
mov dword [0x14023a698], 0x580
lea r8, [rsp + 0x70]
mov rdx, rsi
mov rcx, rdi
call fcn.1400557f0
test eax, eax
js 0x140052aeb
mov edi, dword [rsp + 0x70]
mov r14, qword [rbp + 0x18]
test edi, edi
jne 0x140052b1a
cmp qword [rbp - 0x60], 0
jne 0x140052b1a
cmp qword [rbp - 0x50], 0
jne 0x140052b1a
cmp dword [rbp - 0x48], edi
jne 0x140052b1a
cmp qword [rbp - 0x38], 0
jne 0x140052b1a
cmp qword [rbp - 0x30], 0
jne 0x140052b1a
cmp qword [rbp - 0x28], 0
jne 0x140052b1a
cmp qword [rbp + 0x28], 0
jne 0x140052b1a
cmp dword [rbp - 0x40], 0xffffffff
je 0x140052b1a
test r14, r14
jne 0x140052b1a
cmp dword [0x14023a710], edi
jl 0x140052ae6
lea rdx, str.Configuration_error
xor ecx, ecx
call fcn.1400481d0
mov eax, 0xfffffff0
mov r15, qword [rsp + 0x848]
mov r14, qword [rsp + 0x850]
mov rcx, qword [rbp + 0x730]
xor rcx, rsp
call fcn.14006f1f0
add rsp, 0x858
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov r9, qword [str._C_2021_Data_Expedition__Inc._R__US_Pat._7158479_7313627_7404003_7630315]
lea r8, str._.127s
mov edx, 0x80
lea rcx, [0x1400e3480]
call fcn.140044c10
mov edx, dword [0x14023a710]
movsxd rcx, eax
mov qword [0x1400e3588], rcx
cmp edx, 1
jl 0x140052b6c
lea r8, [0x1400e3480]
mov ecx, 1
lea rdx, [0x1400cb4d4]
call fcn.1400481d0
mov edx, dword [0x14023a710]
movsx eax, byte [str.Jul_16_2021]
lea r15, str.Unknown_Application
test rsi, rsi
mov r9d, 4
cmovne r15, rsi
add eax, 0xffffffbf
cmp eax, 0x12
ja case.0x140052ba7.66
lea r8, [0x140000000]
cdqe
mov ecx, dword [r8 + rax*4 + 0x539ec]
add rcx, r8
jmp rcx
xor ebx, ebx
cmp byte [0x1400cb439], 0x61
je case.0x140052ba7.78
cmp byte [0x1400cb43a], 0x6e
setne bl
add ebx, 5
jmp case.0x140052ba7.78
mov ebx, 1
jmp case.0x140052ba7.78
cmp byte [0x1400cb43a], 0x72
mov ebx, 2
cmovne ebx, r9d
jmp case.0x140052ba7.78
cmp byte [0x1400cb439], 0x70
mov ebx, 3
mov eax, 7
cmovne ebx, eax
jmp case.0x140052ba7.78
mov ebx, 8
jmp case.0x140052ba7.78
mov ebx, 9
jmp case.0x140052ba7.78
mov ebx, reloc.WS2_32.dll_inet_addr
movsx eax, byte [0x1400cb43d]
cmp al, 0x20
jne 0x140052c23
movsx edx, byte [0x1400cb43c]
lea r8, [0x1400cb43e]
sub edx, 0x31
jmp 0x140052c44
lea edx, [rax - 0x31]
mov rax, qword [0x1400cb43c]
lea r8, [0x1400cb43f]
cmp al, 0x20
je 0x140052c44
movsx eax, al
sub eax, 0x30
lea eax, [rax + rax*4]
lea edx, [rdx + rax*2]
movsx eax, byte [r8 + 2]
lea ecx, [rax + rax*4]
movsx eax, byte [r8 + 3]
lea ecx, [rax + rcx*2]
lea eax, [rcx + rcx*2]
lea ecx, [rbx + rax*4]
imul eax, ecx, 0x1f
lea ecx, [rdx - 0x30fbc]
add ecx, eax
jmp 0x140052c7b
test edx, edx
js 0x140052c79
lea rdx, str.Unknown_build
xor ecx, ecx
call fcn.1400481d0
xor ecx, ecx
mov rax, qword [str.4.3.3]
lea r8, str._.100s_MTP_s__s__.3d
mov dword [rsp + 0x30], ecx
mov r9, r15
mov qword [rsp + 0x28], rax
lea rcx, [0x1400e3400]
mov rax, qword [str._win64]
mov edx, 0x80
mov qword [rsp + 0x20], rax
call fcn.140044c10
movsxd rcx, eax
mov qword [0x1400e3580], rcx
cmp rcx, 0x80
jb 0x140052ce7
cmp dword [0x14023a710], 0
jl 0x140052cdc
lea rdx, str.Truncated_excessive_MTPappstr
xor ecx, ecx
call fcn.1400481d0
mov qword [0x1400e3580], 0x7f
cmp dword [0x14023a710], 1
jl 0x140052d08
lea r8, [0x1400e3400]
mov ecx, 1
lea rdx, [0x1400cb584]
call fcn.1400481d0
mov edx, 0x80
test edi, edi
je 0x140052d26
lea r8, str.Unconfigured
lea rcx, [0x1400e3500]
call fcn.140044c10
jmp 0x140052d97
mov rcx, qword [rbp - 0x78]
mov r9d, dword [rsp + 0x78]
test rcx, rcx
je 0x140052d7d
mov rax, qword [rbp - 0x70]
test rax, rax
je 0x140052d5c
mov qword [rsp + 0x28], rax
lea r8, str._.8X:__s___s
mov qword [rsp + 0x20], rcx
lea rcx, [0x1400e3500]
call fcn.140044c10
jmp 0x140052d97
mov eax, dword [rbp - 0x80]
lea r8, str._.8X:__s__d
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rcx
lea rcx, [0x1400e3500]
call fcn.140044c10
jmp 0x140052d97
mov eax, dword [rbp - 0x80]
lea r8, str._.8X__d
lea rcx, [0x1400e3500]
mov dword [rsp + 0x20], eax
call fcn.140044c10
movsxd rcx, eax
mov qword [0x1400e3590], rcx
cmp rcx, 0x80
jb 0x140052dcc
cmp dword [0x14023a710], 0
jl 0x140052dc1
lea rdx, str.Truncated_excessive_MTPlicstr
xor ecx, ecx
call fcn.1400481d0
mov qword [0x1400e3590], 0x7f
cmp dword [rbp + 0xc], 0
je 0x140052e09
cmp dword [0x14023a710], 0
jl 0x140052e2a
lea rdx, str.This_software_is_licensed_for_use_exclusively_by:
xor ecx, ecx
call fcn.1400481d0
cmp dword [0x14023a710], 0
jl 0x140052e2a
lea r8, [0x1400e3500]
xor ecx, ecx
lea rdx, [0x1400cb634]
call fcn.1400481d0
jmp 0x140052e2a
cmp dword [0x14023a710], 1
jl 0x140052e2a
lea r8, [0x1400e3500]
mov ecx, 1
lea rdx, [0x1400cd7b4]
call fcn.1400481d0
mov r8, qword [rbp + 0x20]
test r8, r8
je 0x140052e4a
cmp dword [0x14023a710], 0
jl 0x140052e4a
lea rdx, [0x1400cd7f4]
xor ecx, ecx
call fcn.1400481d0
test r14, r14
je 0x140052e78
cmp dword [0x14023a710], 0
jl 0x140052e69
mov r8, r14
lea rdx, [0x1400cd874]
xor ecx, ecx
call fcn.1400481d0
lea rcx, [rsp + 0x70]
call fcn.140053ed0
jmp 0x140052ae6
lea rcx, [rsp + 0x70]
call fcn.140054700
test eax, eax
js 0x140052aeb
call fcn.140055320
mov r8, r12
lea rdx, [rsp + 0x70]
lea rcx, str.MTP_Init
call fcn.140055db0
mov rax, qword [rbp - 0x20]
test rax, rax
je 0x140052edc
mov rcx, qword [0x14023a670]
test rcx, rcx
je 0x140052ebd
cmp rcx, rax
jle 0x140052ec4
mov qword [0x14023a670], rax
mov rcx, qword [0x14023a678]
test rcx, rcx
je 0x140052ed5
cmp rcx, rax
jle 0x140052edc
mov qword [0x14023a678], rax
mov eax, dword [rbp - 0x18]
mov esi, reloc.WS2_32.dll_recv
mov ecx, dword [0x14023a604]
test eax, eax
cmove eax, esi
mov dword [rbp - 0x18], eax
test ecx, ecx
je 0x140052efa
cmp ecx, eax
jle 0x140052f0a
mov dword [0x14023a604], eax
test r12, r12
je 0x140052f0a
mov dword [r12 + 0x10], eax
mov rdx, qword [rbp - 0x68]
test rdx, rdx
je 0x140052f6c
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x140052f20
mov rcx, r15
call fcn.140075520
test eax, eax
je 0x140052f6c
cmp dword [0x14023a710], 0
jl 0x14005314b
lea r8, [0x1400e3500]
xor ecx, ecx
lea rdx, str.Software_does_not_match_license_for___s_
call fcn.1400481d0
lea rcx, [rsp + 0x70]
call fcn.140053ed0
mov eax, 0xfffffff1
jmp 0x140052aeb
mov rcx, qword [rbp - 0x50]
test rcx, rcx
je 0x140052f82
call fcn.1400563e0
test eax, eax
je 0x1400530c4
mov edx, dword [rbp - 0x48]
test edx, edx
je 0x14005303a
mov ecx, dword [rbp - 0x44]
cmp ecx, 0x20
ja 0x1400530c4
lea eax, [rcx - 1]
cmp eax, 0x1e
ja 0x140052fac
mov ebx, 1
shl ebx, cl
dec ebx
jmp 0x140052fb1
mov ebx, 0xffffffff
mov edi, ebx
xor ecx, ecx
and edi, edx
call qword [sym.imp.WS2_32.dll_gethostbyname]
test rax, rax
jne 0x140053005
cmp dword [0x14023a710], eax
jl 0x14005314b
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov r8d, 0x100
lea rdx, [rbp + 0x330]
mov ecx, eax
call fcn.140044d90
mov r9, rax
lea r8, str.gethostbyname
lea rdx, [0x1400cb4a8]
xor ecx, ecx
call fcn.1400481d0
jmp 0x1400530c4
mov rdx, qword [rax + 0x18]
mov rax, qword [rdx]
test rax, rax
je 0x1400530c4
xor r14d, r14d
mov ecx, r14d
nop dword [rax + rax]
mov eax, dword [rax]
and eax, ebx
cmp edi, eax
je 0x14005303d
mov rax, qword [rdx + rcx*8 + 8]
inc rcx
test rax, rax
jne 0x140053020
jmp 0x1400530c4
xor r14d, r14d
mov rdx, qword [rbp - 0x38]
test rdx, rdx
je 0x140053064
lea r9, [0x1400e3f34]
lea r8, [0x1400e3f35]
lea rcx, str._latest_meta_data_
call fcn.1400565b0
test eax, eax
je 0x1400530c4
mov rdx, qword [rbp - 0x30]
test rdx, rdx
je 0x14005308b
lea r9, str.Metadata_Flavor:_Google_r_n
lea r8, [0x1400e3f36]
lea rcx, str._computeMetadata_v1_instance_
call fcn.1400565b0
test eax, eax
je 0x1400530c4
mov rdx, qword [rbp - 0x28]
test rdx, rdx
je 0x1400530b2
lea r9, str.Metadata:true_r_n
lea r8, str._api_version2017_08_01formattext
lea rcx, str._metadata_instance_
call fcn.1400565b0
test eax, eax
je 0x1400530c4
mov rcx, qword [rbp + 0x28]
test rcx, rcx
je 0x1400530f6
call fcn.140056810
test eax, eax
jne 0x1400530f6
cmp dword [0x14023a710], 0
jl 0x14005314b
lea r8, [0x1400e3500]
xor ecx, ecx
lea rdx, str.Host_does_not_match_license_for___s_
call fcn.1400481d0
lea rcx, [rsp + 0x70]
call fcn.140053ed0
mov eax, 0xfffffff1
jmp 0x140052aeb
mov ecx, dword [rbp - 0x40]
test ecx, ecx
je 0x140053164
cmp ecx, 0xffffffff
jne 0x140053129
test r13w, r13w
je 0x14005311a
cmp dword [0x14023a710], 0
jl 0x14005314b
lea rdx, [0x1400ce168]
jmp 0x140053144
mov r13d, r14d
mov dword [0x14023a658], 1
jmp 0x140053164
cmp r13d, ecx
je 0x140053164
test r13w, r13w
je 0x14005315f
cmp dword [0x14023a710], 0
jl 0x14005314b
lea rdx, str.Port_binding_not_available_with_this_license
xor ecx, ecx
call fcn.1400481d0
lea rcx, [rsp + 0x70]
call fcn.140053ed0
mov eax, 0xfffffff1
jmp 0x140052aeb
movzx r13d, word [rbp - 0x40]
mov eax, dword [rbp - 4]
mov edi, 2
test eax, eax
jne 0x140053180
cmp dword [0x14023a6dc], eax
jne 0x140053186
mov dword [0x14023a6dc], edi
jmp 0x140053186
mov dword [0x14023a6dc], eax
mov ecx, dword [rbp]
test ecx, ecx
je 0x14005319e
mov eax, dword [0x14023a630]
test eax, eax
cmove eax, ecx
mov dword [0x14023a630], eax
mov eax, dword [rbp + 4]
test eax, eax
je 0x1400531b0
cmp dword [0x14023a640], 0
jne 0x1400531c6
jmp 0x1400531b6
mov eax, dword [0x14023a640]
test eax, eax
mov ecx, 0x20000
cmove eax, ecx
mov dword [0x14023a640], eax
mov ecx, dword [rbp + 8]
test ecx, ecx
je 0x1400531de
mov eax, dword [0x14023a698]
test eax, eax
cmove eax, ecx
mov dword [0x14023a698], eax
mov r8d, dword [0x14023a634]
test r8d, r8d
jne 0x1400532b2
xorps xmm0, xmm0
lea rcx, [rbp + 0x70]
movups xmmword [rbp + 0x70], xmm0
mov dword [rbp + 0x70], 0x40
movups xmmword [rbp + 0x80], xmm0
movups xmmword [rbp + 0x90], xmm0
movups xmmword [rbp + 0xa0], xmm0
call qword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
test eax, eax
jne 0x14005325a
cmp dword [0x14023a710], eax
jl 0x140053252
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, 0x100
lea rdx, [rbp + 0x330]
mov ecx, eax
call fcn.140044d90
mov r8, rax
lea rdx, str.GlobalMemoryStatusEx:__s
xor ecx, ecx
call fcn.1400481d0
mov r8d, 0x2000000
jmp 0x1400532ab
mov rdx, qword [rbp + 0x78]
mov eax, 0x80000000
cmp rdx, rax
jb 0x140053270
mov r8d, 0x10000000
jmp 0x1400532ab
cmp rdx, 0x40000000
jb 0x140053281
mov r8d, 0x8000000
jmp 0x1400532ab
cmp rdx, 0x20000000
jl 0x140053292
mov r8d, 0x4000000
jmp 0x1400532ab
mov r8d, 0x10000000
mov ecx, 0x1000000
cmp rdx, r8
mov eax, 0x2000000
cmovge ecx, eax
mov r8d, ecx
mov dword [0x14023a634], r8d
mov ecx, dword [0x14023a604]
xor edx, edx
mov eax, r8d
div ecx
cmp eax, 0x80000
jae 0x1400532d2
shl ecx, 0x13
mov r8d, ecx
mov dword [0x14023a634], ecx
cmp dword [0x14023a710], 1
jl 0x1400532f3
lea rdx, str.UBuff__d
mov ecx, 1
call fcn.1400481d0
mov r8d, dword [0x14023a634]
mov eax, r8d
mov dword [0x14023a648], 0x40000
shr eax, 3
mov dword [0x14023a638], eax
mov eax, 0xaaaaaaab
mul r8d
shr edx, 2
cmp dword [0x14023a644], 0
mov dword [0x14023a63c], edx
jne 0x140053352
lea rcx, [rbp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
cmp dword [0x14023a710], 1
mov r8d, dword [rbp + 0x50]
mov dword [0x14023a644], r8d
jl 0x140053352
lea rdx, str.CPU_Cores__d
mov ecx, 1
call fcn.1400481d0
mov rax, qword [0x14023a678]
mov edx, 0x330
movsxd rcx, dword [0x14023a604]
mov qword [0x14023a588], rax
call fcn.140074c18
movsxd rcx, dword [0x14023a604]
mov edx, 4
mov qword [0x1400e3598], rax
call fcn.140074c18
mov ecx, dword [rbp - 0x14]
or dword [0x14023a560], 4
mov qword [0x1400e3610], rax
call fcn.1400572e0
cmp qword [0x1400e3598], 0
je 0x140053991
cmp qword [0x1400e3610], 0
je 0x140053991
test eax, eax
js 0x140053991
or dword [0x14023a560], 8
lea rcx, [0x140239560]
xor edx, edx
mov r8d, 0x1000
call fcn.140070680
xor r8d, r8d
mov edx, edi
mov ecx, edi
call qword [sym.imp.WS2_32.dll_socket]
mov qword [0x14023a5f0], rax
cmp rax, 0xffffffffffffffff
jne 0x140053432
cmp dword [0x14023a710], 0
jl 0x140053875
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov r8d, 0x100
lea rdx, [rbp + 0x530]
mov ecx, eax
call fcn.140044d90
lea r8, str.MTP_Init
lea rdx, str._s_socket:__s
jmp 0x14005386b
or dword [0x14023a560], 0x20
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x40], r14
lea r8, [rsp + 0x50]
mov qword [rsp + 0x38], r14
mov r9d, 4
mov qword [rsp + 0x30], rcx
mov edx, 0x9800000c
mov dword [rsp + 0x28], r14d
mov rcx, rax
mov qword [rsp + 0x20], r14
mov dword [rsp + 0x60], r14d
mov dword [rsp + 0x50], r14d
call qword [sym.imp.WS2_32.dll_WSAIoctl]
test eax, eax
je 0x1400534b9
cmp dword [0x14023a710], 0
jl 0x1400534b9
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov r8d, 0x100
lea rdx, [rbp + 0x530]
mov ecx, eax
call fcn.140044d90
mov r9, rax
lea r8, str.Unable_to_disable_UDP_CONNRESET
lea rdx, [0x1400ce228]
xor ecx, ecx
call fcn.1400481d0
call fcn.140056ae0
mov ebx, eax
test eax, eax
jns 0x1400534d5
lea rcx, [rsp + 0x70]
call fcn.140053ed0
mov eax, ebx
jmp 0x140052aeb
mov eax, dword [rsp + 0x64]
movzx ecx, r13w
mov dword [0x14023a5e4], eax
mov word [0x14023a5e0], di
call qword [sym.imp.WS2_32.dll_htons]
cmp dword [0x14023a710], 3
mov word [0x14023a5e2], ax
jl 0x14005352f
movzx ecx, ax
call qword [sym.imp.WS2_32.dll_ntohs]
mov ecx, dword [0x14023a5e4]
movzx ebx, ax
call qword [sym.imp.WS2_32.dll_ntohl]
mov r9d, ebx
lea rdx, str.Binding_to_address__8X:_2d
mov r8d, eax
mov ecx, 3
call fcn.1400481d0
mov rcx, qword [0x14023a5f0]
lea rdx, [0x14023a5e0]
mov r8d, esi
call qword [sym.imp.WS2_32.dll_bind]
test eax, eax
js 0x140053918
mov rcx, qword [0x14023a5f0]
lea r8, [rsp + 0x50]
lea rdx, [0x14023a700]
mov dword [rsp + 0x50], esi
call qword [sym.imp.WS2_32.dll_getsockname]
test eax, eax
je 0x1400535a9
cmp dword [0x14023a710], 0
jl 0x140053875
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov r8d, 0x100
lea rdx, [rbp + 0x430]
mov ecx, eax
call fcn.140044d90
lea r8, str.getsockname
lea rdx, [0x1400ce25c]
jmp 0x14005386b
mov edx, 3
mov ecx, edi
lea r8d, [rdx - 2]
call qword [sym.imp.WS2_32.dll_socket]
mov qword [0x14023a5f8], rax
cmp rax, 0xffffffffffffffff
jne 0x14005360b
cmp dword [0x14023a710], 1
jl 0x14005366d
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov r8d, 0x100
lea rdx, [rbp + 0x430]
mov ecx, eax
call fcn.140044d90
mov r9, rax
lea r8, str.socket
lea rdx, [0x1400cddc8]
mov ecx, 1
call fcn.1400481d0
jmp 0x14005366d
mov r8d, esi
lea rdx, [0x14023a5e0]
mov rcx, rax
call qword [sym.imp.WS2_32.dll_bind]
test eax, eax
jns 0x140053678
cmp dword [0x14023a710], 1
jl 0x140053660
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov r8d, 0x100
lea rdx, [rbp + 0x430]
mov ecx, eax
call fcn.140044d90
mov r9, rax
lea r8, [0x1400cb744]
lea rdx, str.ICMP_unavailable:__s__s
mov ecx, 1
call fcn.1400481d0
mov rcx, qword [0x14023a5f8]
call qword [sym.imp.WS2_32.dll_closesocket]
mov qword [0x14023a5f8], 0xffffffffffffffff
lea rcx, [rbp + 0x60]
call qword [sym.imp.KERNEL32.dll_GetSystemTime]
mov eax, dword [rsp + 0x58]
movzx ecx, byte [rbp + 0x6c]
shl eax, 8
or ecx, eax
movzx eax, word [rbp + 0x6e]
movzx edx, al
shl ecx, 8
or ecx, edx
call fcn.140075488
call fcn.14007545c
mov edx, dword [0x14023a6cc]
mov dword [0x14023a568], eax
test edx, edx
je 0x1400536c9
mov r9d, edx
mov dword [0x14023a650], edx
mov r8d, edx
mov dword [0x14023a654], edx
jmp 0x1400536dd
mov r8d, dword [0x14023a654]
mov r9d, 0x208
mov dword [0x14023a650], r9d
cmp dword [0x14023a6d8], 0
mov eax, 0x5140
mov r10d, dword [0x14023a630]
mov r11d, 0x30000
mov ecx, 0x28a0
cmovne ecx, eax
mov eax, r10d
shr eax, 1
cmp ecx, eax
cmova ecx, eax
mov eax, dword [0x14023a6c8]
cmp ecx, r11d
mov dword [0x14023a6e4], eax
cmovg ecx, r11d
mov dword [0x14023a64c], ecx
test edx, edx
jne 0x14005377a
test r8d, r8d
jne 0x140053738
mov r8d, r10d
shr r8d, 3
mov dword [0x14023a654], r8d
mov ecx, dword [0x14023a694]
test ecx, ecx
je 0x140053750
cmp r8d, ecx
cmova r8d, ecx
mov dword [0x14023a654], r8d
test eax, eax
je 0x140053767
cdq
sub eax, edx
sar eax, 1
cmp eax, r8d
cmovl r8d, eax
mov dword [0x14023a654], r8d
test r8d, r8d
je 0x14005377a
cmp r9d, r8d
cmovg r9d, r8d
mov dword [0x14023a650], r9d
mov edx, edi
lea rcx, [0x14023a650]
call fcn.140056be0
mov edx, edi
lea rcx, [0x14023a654]
call fcn.140056be0
mov eax, dword [0x14023a6c0]
test eax, eax
jne 0x1400537a9
mov eax, dword [0x14023a630]
shr eax, 2
mov edx, edi
mov dword [0x14023a5a0], eax
lea rcx, [0x14023a5a0]
call fcn.140056ca0
mov eax, dword [0x14023a5a0]
mov ecx, dword [0x14023a650]
mov dword [0x14023a5a4], eax
cmp eax, ecx
jge 0x1400537e7
mov dword [0x14023a5a4], ecx
mov edx, edi
lea rcx, [0x14023a5a4]
call fcn.140056ca0
mov rax, qword [0x140239510]
lea r8, [0x140044970]
xor edx, edx
mov qword [0x14023a5a8], rax
xor ecx, ecx
mov dword [0x1400e35a0], 1
call fcn.140047fe0
xor edx, edx
lea r8, [0x140044970]
lea ecx, [rdx + 1]
call fcn.140047fe0
xor edx, edx
lea r8, [0x140044970]
lea ecx, [rdx + 3]
call fcn.140047fe0
call fcn.140054ee0
test eax, eax
je 0x140053889
cmp dword [0x14023a710], 0
jl 0x140053875
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov r8d, 0x100
lea rdx, [rbp + 0x630]
mov ecx, eax
call fcn.140044d90
lea r8, str.Unable_to_initialize_MTP_workers
lea rdx, [0x1400ce29c]
mov r9, rax
xor ecx, ecx
call fcn.1400481d0
lea rcx, [rsp + 0x70]
call fcn.140053ed0
mov eax, 0xfffffffe
jmp 0x140052aeb
cmp dword [0x14023a710], 2
jl 0x1400538bc
movzx edx, word [0x14023a702]
lea r8, [rbp + 0x2f0]
mov ecx, dword [0x14023a704]
call fcn.140044cd0
mov r8, rax
lea rdx, str.MTP_Listening_on__s
mov ecx, edi
call fcn.1400481d0
mov rax, qword [rbp + 0x10]
test rax, rax
je 0x1400538dc
mov qword [0x14023a660], rax
test r12, r12
je 0x1400538d6
mov qword [r12 + 8], rax
mov qword [rbp + 0x10], r14
jmp 0x1400538e6
test r12, r12
je 0x1400538e6
mov qword [r12 + 8], r14
lea rcx, [rsp + 0x70]
call fcn.140055ac0
lea rcx, [0x1400e35b0]
mov dword [0x1400e35ac], r14d
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rcx, [0x1400e35d8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor eax, eax
jmp 0x140052aeb
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp dword [0x14023a710], 0
mov ebx, eax
jl 0x140053955
mov r8d, 0x100
lea rdx, [rbp + 0x630]
mov ecx, eax
call fcn.140044d90
mov r9, rax
lea r8, str.bind
lea rdx, [0x1400ce26c]
xor ecx, ecx
call fcn.1400481d0
lea rcx, [rsp + 0x70]
call fcn.140053ed0
sub ebx, 0x271d
je 0x140053987
sub ebx, 0x23
je 0x14005397d
cmp ebx, 1
jne 0x14005387f
lea eax, [rbx - 2]
jmp 0x140052aeb
mov eax, 0xffffffea
jmp 0x140052aeb
mov eax, 0xffffffeb
jmp 0x140052aeb
cmp dword [0x14023a710], 0
jl 0x1400539a8
lea rdx, str.Out_of_Memory
xor ecx, ecx
call fcn.1400481d0
lea rcx, [rsp + 0x70]
call fcn.140053ed0
mov eax, 0xfffffff9
jmp 0x140052aeb
cmp dword [0x14023a710], r14d
jl 0x1400539e0
mov r9, qword [str._win64]
lea rdx, str.MTP_Init_detected_a_platform_incompatibility___d_s_.
mov r8d, 1
xor ecx, ecx
call fcn.1400481d0
mov eax, 0xffffffee
jmp 0x140052af3