Function at 0x1400b8760
Capabilities:
Set file attributes

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x28d0]
mov eax, 0x29d0
call fcn.1401e33b0
sub rsp, rax
mov rax, qword [0x1402a76c0]
xor rax, rsp
mov qword [rbp + 0x28c0], rax
mov edi, r9d
mov r14d, r8d
mov rsi, rdx
mov qword [rbp - 0x58], rdx
mov qword [rbp + 0x48], rdx
xor r13d, r13d
mov dword [rsp + 0x40], r13d
lea rdx, str.SilentInstallManager::CheckShareNameForSilent
lea rcx, [rbp + 0x50]
call fcn.14001abe0
nop
lea r15, [0x1402a8360]
lea rbx, [0x1402bbdb0]
mov rcx, qword [0x1402a8360]
cmp rcx, r15
je 0x1400b8852
test byte [rcx + 0x1c], 1
je 0x1400b880e
mov r9, rbx
cmp qword [0x1402bbdc8], 8
cmovae r9, qword [0x1402bbdb0]
lea edx, [r13 + 0x1d]
lea r8, [0x14025b168]
mov rcx, qword [rcx + 0x10]
call fcn.140001ad0
mov rcx, qword [0x1402a8360]
cmp rcx, r15
je 0x1400b8852
test byte [rcx + 0x1c], 1
je 0x1400b8852
mov r9, rbx
cmp qword [0x1402bbdc8], 8
cmovae r9, qword [0x1402bbdb0]
mov edx, 0x1e
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x28], r14d
mov rax, qword [rsi]
mov qword [rsp + 0x20], rax
lea r8, [0x14025b168]
mov rcx, qword [rcx + 0x10]
call fcn.14005f570
xor edx, edx
mov r8d, 0x800
lea rcx, [rbp + 0x8c0]
call fcn.1401e7e40
xor edx, edx
mov r8d, 0x800
lea rcx, [rbp + 0x20c0]
call fcn.1401e7e40
xor edx, edx
mov r8d, 0x800
lea rcx, [rbp + 0x10c0]
call fcn.1401e7e40
xor edx, edx
mov r8d, 0x800
lea rcx, [rbp + 0x18c0]
call fcn.1401e7e40
mov rcx, qword [0x1402bbf50]
mov rax, qword [rcx]
mov rax, qword [rax + 0x48]
call qword [case.0x1400136d6.0]
mov rcx, rax
mov rax, qword [rax]
lea r8, [rbp + 0x20c0]
lea rdx, str.PrinterName
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
call fcn.1401bb0c4
mov rcx, rax
test rax, rax
je 0x1400b9e5e
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
add rax, 0x18
mov qword [rsp + 0x58], rax
call fcn.1401bb0c4
mov rcx, rax
test rax, rax
je 0x1400b9e69
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
add rax, 0x18
mov qword [rbp], rax
mov edx, SysAllocStringByteLen
lea rcx, [rbp]
call fcn.1400041d0
lea r8, [rbp + 0x20c0]
mov rdx, qword [rbp]
lea rcx, [rsp + 0x58]
call fcn.140018e20
dec edi
mov dword [rsp + 0x48], edi
mov r15, 0xffffffffffffffff
lea r12d, [r15 + 2]
test r14d, r14d
je 0x1400b9262
mov rax, qword [rsi]
cmp dword [rax - 0x10], 0
jne 0x1400b8c88
call fcn.1401bb0c4
mov rcx, rax
test rax, rax
je 0x1400b9e74
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
add rax, 0x18
mov qword [rbp - 0x80], rax
lea edx, [r15 + 0x70]
lea rcx, [rbp - 0x80]
call fcn.1400041d0
nop
mov rdi, qword [rbp - 0x80]
mov rcx, qword [rdi - 0x18]
test rcx, rcx
je 0x1400b89c1
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x1400136d6.0]
mov rcx, rax
test rax, rax
jne 0x1400b89e2
call fcn.1401bb0c4
mov rcx, rax
mov rax, qword [rax]
mov rax, qword [rax + 0x20]
call qword [case.0x1400136d6.0]
mov rcx, rax
test rax, rax
je 0x1400b9e7f
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
lea rbx, [rax + 0x18]
mov qword [rbp - 0x50], rbx
mov dword [rsp + 0x40], reloc.WSOCK32.dll_recv
lea r14, [0x140252310]
mov rsi, r15
nop dword [rax]
inc rsi
cmp word [r14 + rsi*2], 0
jne 0x1400b8a10
mov eax, dword [rdi - 0x10]
mov dword [rsp + 0x50], eax
lea edx, [rax + rsi]
mov dword [rsp + 0x48], edx
test edx, edx
js 0x1400b9ea0
mov r12d, 1
mov ecx, r12d
sub ecx, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, edx
or eax, ecx
jge 0x1400b8a5a
lfence
lea rcx, [rbp - 0x50]
call fcn.140004e00
mov rdi, qword [rbp - 0x80]
mov rbx, qword [rbp - 0x50]
movsxd rax, dword [rsp + 0x50]
lea r8, [rax + rax]
mov qword [rsp + 0x50], r8
test r8, r8
je 0x1400b8a8f
test rbx, rbx
jne 0x1400b8a84
call fcn.1401ec568
mov dword [rax], socket
call fcn.1401ec3fc
jmp 0x1400b8a8f
mov rdx, rdi
mov rcx, rbx
call fcn.1401e7770
movsxd r8, esi
add r8, r8
mov rcx, qword [rsp + 0x50]
lea rcx, [rcx + rbx]
je 0x1400b8abf
test rcx, rcx
jne 0x1400b8ab7
call fcn.1401ec568
mov dword [rax], socket
call fcn.1401ec3fc
jmp 0x1400b8abf
mov rdx, r14
call fcn.1401e7770
movsxd rax, dword [rsp + 0x48]
cmp eax, dword [rbx - 0xc]
jg 0x1400b9ea0
mov dword [rbx - 0x10], eax
mov word [rbx + rax*2], r13w
mov rcx, qword [rbx - 0x18]
test rcx, rcx
je 0x1400b8af3
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x1400136d6.0]
mov rcx, rax
test rax, rax
jne 0x1400b8b14
call fcn.1401bb0c4
mov rcx, rax
mov rax, qword [rax]
mov rax, qword [rax + 0x20]
call qword [case.0x1400136d6.0]
mov rcx, rax
test rax, rax
je 0x1400b9e8a
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
lea rdi, [rax + 0x18]
mov qword [rbp - 0x18], rdi
mov dword [rsp + 0x40], 0x30
mov rsi, qword [rsp + 0x58]
mov ecx, dword [rsi - 0x10]
mov dword [rsp + 0x50], ecx
mov eax, dword [rbx - 0x10]
mov dword [rsp + 0x48], eax
lea r14d, [rcx + rax]
test r14d, r14d
js 0x1400b9e95
sub r12d, dword [rdi - 8]
mov eax, dword [rdi - 0xc]
sub eax, r14d
or eax, r12d
jge 0x1400b8b7c
lfence
mov edx, r14d
lea rcx, [rbp - 0x18]
call fcn.140004e00
mov rsi, qword [rsp + 0x58]
mov rbx, qword [rbp - 0x50]
mov rdi, qword [rbp - 0x18]
movsxd rax, dword [rsp + 0x48]
lea r12, [rax + rax]
test r12, r12
je 0x1400b8baf
test rdi, rdi
jne 0x1400b8ba1
call fcn.1401ec568
mov dword [rax], socket
call fcn.1401ec3fc
jmp 0x1400b8baf
mov r8, r12
mov rdx, rbx
mov rcx, rdi
call fcn.1401e7770
movsxd r8, dword [rsp + 0x50]
add r8, r8
lea rcx, [r12 + rdi]
je 0x1400b8bdc
test rcx, rcx
jne 0x1400b8bd4
call fcn.1401ec568
mov dword [rax], socket
call fcn.1401ec3fc
jmp 0x1400b8bdc
mov rdx, rsi
call fcn.1401e7770
cmp r14d, dword [rdi - 0xc]
jg 0x1400b9e95
mov dword [rdi - 0x10], r14d
movsxd rax, r14d
mov word [rdi + rax*2], r13w
lea rdx, [rbp - 0x18]
lea rcx, [rbp - 0x80]
call fcn.140004620
mov dword [rsp + 0x40], reloc.WSOCK32.dll_recv
lea rdx, [rdi - 0x18]
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b8c2c
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400136d6.0]
nop
mov rdx, qword [rbp - 0x50]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b8c54
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400136d6.0]
mov rcx, qword [0x1402bbf68]
mov rax, qword [rcx]
mov rbx, qword [rbp - 0x80]
mov rdx, rbx
mov rax, qword [rax + 0x20]
call qword [case.0x1400136d6.0]
mov r13d, 0x8001002e
mov dword [0x1402bbd98], 0x2e
lea rdx, [rbx - 0x18]
jmp 0x1400b9cc3
mov rcx, qword [0x1402bbf50]
mov rax, qword [rcx]
mov rax, qword [rax + 0x48]
call qword [case.0x1400136d6.0]
mov rcx, rax
mov rax, qword [rax]
lea r8, [rbp + 0x8c0]
lea rdx, str.TEMPPATH
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
lea r8, str.InsDrv.ini
mov edx, 0x400
lea rcx, [rbp + 0x8c0]
call fcn.1401ec614
mov edx, 0x20
lea rcx, [rbp + 0x8c0]
call qword [sym.imp.KERNEL32.dll_SetFileAttributesW]
mov rcx, qword [0x1402bbf50]
mov rax, qword [rcx]
mov rax, qword [rax + 0x48]
call qword [case.0x1400136d6.0]
mov rcx, rax
mov rax, qword [rax]
lea r8, [rbp + 0x10c0]
lea rdx, str.MEDIATYPE
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
mov rcx, qword [0x1402a8360]
lea rax, [0x1402a8360]
cmp rcx, rax
je 0x1400b8d63
test byte [rcx + 0x1c], 4
je 0x1400b8d63
mov r9, rbx
cmp qword [0x1402bbdc8], 8
cmovae r9, qword [0x1402bbdb0]
mov edx, 0x1f
lea rax, [rbp + 0x10c0]
mov qword [rsp + 0x20], rax
lea r8, [0x14025b168]
mov rcx, qword [rcx + 0x10]
call fcn.14001b1a0
mov dword [rsp + 0x60], r13d
lea rcx, [rbp - 0x38]
call fcn.14009ffa0
nop
lea r9, [rbp + 0x10c0]
lea r8, [rsp + 0x60]
mov edx, r12d
lea rcx, [rbp - 0x38]
call fcn.1400a0270
mov ebx, r12d
mov edi, r13d
lea rcx, [rbp - 0x40]
call fcn.14005f660
nop
mov esi, dword [rsp + 0x60]
nop
test esi, ebx
je 0x1400b8dc0
mov dword [rbp - 0x20], 0x63
lea r8, [rbp - 0x20]
mov edx, ebx
lea rcx, [rbp - 0x40]
call fcn.140063670
test eax, eax
jne 0x1400b8dc0
inc edi
add ebx, ebx
cmp ebx, 0x40
jbe 0x1400b8da0
test edi, edi
jne 0x1400b8e13
mov rcx, qword [0x1402bbf68]
mov rax, qword [rcx]
lea r8, [rbp + 0x8c0]
mov edx, DllRegisterServer
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
mov r13d, 0x80010031
mov dword [0x1402bbd98], 0x31
lea rcx, [rbp - 0x40]
call fcn.14005f7d0
nop
lea rcx, [rbp - 0x38]
call fcn.1400a0110
jmp 0x1400b9ce3
mov rax, qword [0x1402a8360]
lea rcx, [0x1402a8360]
cmp rax, rcx
je 0x1400b8e6b
test byte [rax + 0x1c], 4
je 0x1400b8e6b
lfence
lea r9, [0x1402bbdb0]
cmp qword [0x1402bbdc8], 8
cmovae r9, qword [0x1402bbdb0]
mov edx, 0x20
mov dword [rsp + 0x20], r14d
lea r8, [0x14025b168]
mov rcx, qword [0x1402a8360]
mov rcx, qword [rcx + 0x10]
call fcn.140001b40
mov esi, dword [rsp + 0x60]
mov rcx, qword [0x1402bbf58]
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
mov rcx, rax
mov rax, qword [rax]
mov rax, qword [rax + 0x170]
call qword [case.0x1400136d6.0]
and esi, r14d
mov edx, r13d
cmp esi, r14d
sete dl
mov ecx, r13d
test r14d, eax
cmove ecx, edx
test ecx, ecx
jne 0x1400b9247
call fcn.1401bb0c4
mov rcx, rax
test rax, rax
je 0x1400b9eab
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
add rax, 0x18
mov qword [rsp + 0x68], rax
mov edx, DllRegisterServer
lea rcx, [rsp + 0x68]
call fcn.1400041d0
nop
mov rsi, qword [rsp + 0x68]
mov rcx, qword [rsi - 0x18]
test rcx, rcx
je 0x1400b8f09
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x1400136d6.0]
mov rcx, rax
test rax, rax
jne 0x1400b8f2a
call fcn.1401bb0c4
mov rcx, rax
mov rax, qword [rax]
mov rax, qword [rax + 0x20]
call qword [case.0x1400136d6.0]
mov rcx, rax
test rax, rax
je 0x1400b9eb6
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
lea rdi, [rax + 0x18]
mov qword [rbp - 0x48], rdi
mov dword [rsp + 0x40], 4
lea r14, [0x140252310]
mov rbx, r15
inc rbx
cmp word [r14 + rbx*2], 0
jne 0x1400b8f51
mov eax, dword [rsi - 0x10]
mov dword [rsp + 0x48], eax
lea edx, [rax + rbx]
mov dword [rsp + 0x50], edx
test edx, edx
js 0x1400b9ed7
mov ecx, r12d
sub ecx, dword [rdi - 8]
mov eax, dword [rdi - 0xc]
sub eax, edx
or eax, ecx
jge 0x1400b8f96
lfence
lea rcx, [rbp - 0x48]
call fcn.140004e00
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rbp - 0x48]
movsxd rax, dword [rsp + 0x48]
lea r8, [rax + rax]
mov qword [rsp + 0x48], r8
test r8, r8
je 0x1400b8fcb
test rdi, rdi
jne 0x1400b8fc0
call fcn.1401ec568
mov dword [rax], socket
call fcn.1401ec3fc
jmp 0x1400b8fcb
mov rdx, rsi
mov rcx, rdi
call fcn.1401e7770
movsxd r8, ebx
add r8, r8
mov rcx, qword [rsp + 0x48]
lea rcx, [rcx + rdi]
je 0x1400b8ffb
test rcx, rcx
jne 0x1400b8ff3
call fcn.1401ec568
mov dword [rax], socket
call fcn.1401ec3fc
jmp 0x1400b8ffb
mov rdx, r14
call fcn.1401e7770
movsxd rax, dword [rsp + 0x50]
cmp eax, dword [rdi - 0xc]
jg 0x1400b9ed7
mov dword [rdi - 0x10], eax
mov word [rdi + rax*2], r13w
mov rcx, qword [rdi - 0x18]
test rcx, rcx
je 0x1400b902f
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x1400136d6.0]
mov rcx, rax
test rax, rax
jne 0x1400b9050
call fcn.1401bb0c4
mov rcx, rax
mov rax, qword [rax]
mov rax, qword [rax + 0x20]
call qword [case.0x1400136d6.0]
mov rcx, rax
test rax, rax
je 0x1400b9ec1
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
lea rbx, [rax + 0x18]
mov qword [rbp - 0x10], rbx
mov dword [rsp + 0x40], reloc.OLEAUT32.dll_VariantTimeToDosDateTime
mov r14, qword [rsp + 0x58]
mov ecx, dword [r14 - 0x10]
mov dword [rsp + 0x48], ecx
mov eax, dword [rdi - 0x10]
mov dword [rsp + 0x50], eax
add ecx, eax
js 0x1400b9ecc
sub r12d, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, ecx
or eax, r12d
jge 0x1400b90b7
lfence
mov edx, ecx
lea rcx, [rbp - 0x10]
call fcn.140004e00
mov r14, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rbp - 0x48]
mov rbx, qword [rbp - 0x10]
movsxd rax, dword [rsp + 0x50]
lea r12, [rax + rax]
test r12, r12
je 0x1400b90ea
test rbx, rbx
jne 0x1400b90dc
call fcn.1401ec568
mov dword [rax], socket
call fcn.1401ec3fc
jmp 0x1400b90ea
mov r8, r12
mov rdx, rdi
mov rcx, rbx
call fcn.1401e7770
movsxd rdi, dword [rsp + 0x48]
mov r8, rdi
add r8, r8
lea rcx, [r12 + rbx]
je 0x1400b911a
test rcx, rcx
jne 0x1400b9112
call fcn.1401ec568
mov dword [rax], socket
call fcn.1401ec3fc
jmp 0x1400b911a
mov rdx, r14
call fcn.1401e7770
mov eax, dword [rsp + 0x50]
add eax, edi
cmp eax, dword [rbx - 0xc]
jg 0x1400b9ecc
mov dword [rbx - 0x10], eax
cdqe
mov word [rbx + rax*2], r13w
lea rcx, [rbx - 0x18]
add rsi, 0xffffffffffffffe8
cmp rcx, rsi
je 0x1400b9199
cmp dword [rsi + 0x10], 0
jl 0x1400b9188
mov rax, qword [rsi]
cmp qword [rcx], rax
jne 0x1400b9188
call fcn.140004d00
mov rbx, rax
mov ecx, r15d
lock xadd dword [rsi + 0x10], ecx
sub ecx, 1
jg 0x1400b9179
lfence
mov rcx, qword [rsi]
mov rax, qword [rcx]
mov rdx, rsi
mov rax, qword [rax + 8]
call qword [case.0x1400136d6.0]
lea rax, [rbx + 0x18]
mov qword [rsp + 0x68], rax
mov rbx, qword [rbp - 0x10]
jmp 0x1400b9199
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
lea rcx, [rsp + 0x68]
call fcn.140004e60
mov dword [rsp + 0x40], 4
lea rdx, [rbx - 0x18]
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b91c6
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400136d6.0]
nop
mov rdx, qword [rbp - 0x48]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b91ee
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400136d6.0]
mov rcx, qword [0x1402bbf68]
mov rax, qword [rcx]
mov rbx, qword [rsp + 0x68]
mov rdx, rbx
mov rax, qword [rax + 0x20]
call qword [case.0x1400136d6.0]
mov r13d, 0x80010032
mov dword [0x1402bbd98], 0x32
lea rdx, [rbx - 0x18]
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b8dfb
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400136d6.0]
jmp 0x1400b8dfb
lea rcx, [rbp - 0x40]
call fcn.14005f7d0
nop
lea rcx, [rbp - 0x38]
call fcn.1400a0110
mov edi, dword [rsp + 0x48]
mov rsi, qword [rbp - 0x58]
mov rax, qword [rsi]
cmp dword [rax - 0x10], 0
je 0x1400b9ce3
xor edx, edx
mov r8d, 0x410
lea rcx, [rbp + 0xa0]
call fcn.1401e7e40
xor edx, edx
mov r8d, 0x410
lea rcx, [rbp + 0x4b0]
call fcn.1401e7e40
mov rcx, qword [0x1402bbf58]
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
mov rcx, rax
mov rax, qword [rax]
lea rdx, [rbp - 0x1c]
mov rax, qword [rax + 0xf8]
call qword [case.0x1400136d6.0]
mov ebx, eax
cmp dword [rbp - 0x1c], 0
jle 0x1400b9ce3
mov r8, qword [rsi]
mov edx, 0x208
lea rcx, [rbp + 0xa0]
call fcn.1401ebfa8
lea r8, [rbp + 0xa0]
mov edx, 0x208
lea rcx, [rbp + 0x4b0]
call fcn.1401ebfa8
lea rcx, [rbp + 0x4b0]
mov rax, r15
inc rax
cmp word [rcx + rax*2], 0
jne 0x1400b9304
cmp eax, ebx
jbe 0x1400b9380
call fcn.1401bb0c4
mov rcx, rax
test rax, rax
je 0x1400b9f0e
lfence
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
add rax, 0x18
mov qword [rbp + 8], rax
mov r8d, ebx
mov edx, 0x97
lea rcx, [rbp + 8]
call fcn.14001ce30
mov rcx, qword [0x1402bbf68]
mov rax, qword [rcx]
mov rbx, qword [rbp + 8]
mov rdx, rbx
mov rax, qword [rax + 0x20]
call qword [case.0x1400136d6.0]
mov r13d, 0x80010033
mov dword [0x1402bbd98], 0x33
lea rdx, [rbx - 0x18]
jmp 0x1400b9cc3
mov rcx, qword [0x1402bbf50]
mov rax, qword [rcx]
mov rax, qword [rax + 0x48]
call qword [case.0x1400136d6.0]
mov rcx, rax
mov rax, qword [rax]
lea r8, [rbp + 0x18c0]
lea rdx, str.PortList
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
mov r8d, 2
lea rdx, [0x140254e70]
lea rcx, [rbp + 0x18c0]
call fcn.1401fdaa0
test eax, eax
jne 0x1400b9621
mov rcx, qword [0x1402a8360]
lea rax, [0x1402a8360]
cmp rcx, rax
je 0x1400b9424
test byte [rcx + 0x1c], 4
je 0x1400b9424
lea r9, [0x1402bbdb0]
cmp qword [0x1402bbdc8], 8
cmovae r9, qword [0x1402bbdb0]
mov edx, 0x21
lea rax, [rbp + 0x18c0]
mov qword [rsp + 0x20], rax
lea r8, [0x14025b168]
mov rcx, qword [rcx + 0x10]
call fcn.140006c90
call fcn.1401bb0c4
mov rcx, rax
test rax, rax
je 0x1400b9f0e
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
add rax, 0x18
mov qword [rbp - 0x78], rax
mov edx, WSAStartup
lea rcx, [rbp - 0x78]
call fcn.1400041d0
nop
mov rdi, qword [rbp - 0x78]
mov rcx, qword [rdi - 0x18]
test rcx, rcx
je 0x1400b947b
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x1400136d6.0]
mov rcx, rax
test rax, rax
jne 0x1400b949c
call fcn.1401bb0c4
mov rcx, rax
mov rax, qword [rax]
mov rax, qword [rax + 0x20]
call qword [case.0x1400136d6.0]
mov rcx, rax
test rax, rax
je 0x1400b9ee2
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
lea rbx, [rax + 0x18]
mov qword [rbp - 0x30], rbx
mov dword [rsp + 0x40], 0x40
lea r14, [0x140252310]
mov rsi, r15
inc rsi
cmp word [r14 + rsi*2], 0
jne 0x1400b94c3
mov eax, dword [rdi - 0x10]
mov dword [rsp + 0x48], eax
lea ecx, [rax + rsi]
mov dword [rsp + 0x50], ecx
test ecx, ecx
js 0x1400b9eed
sub r12d, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, ecx
or eax, r12d
jge 0x1400b9508
lfence
mov edx, ecx
lea rcx, [rbp - 0x30]
call fcn.140004e00
mov rdi, qword [rbp - 0x78]
mov rbx, qword [rbp - 0x30]
movsxd rax, dword [rsp + 0x48]
lea r12, [rax + rax]
test r12, r12
je 0x1400b953b
test rbx, rbx
jne 0x1400b952d
call fcn.1401ec568
mov dword [rax], socket
call fcn.1401ec3fc
jmp 0x1400b953b
mov r8, r12
mov rdx, rdi
mov rcx, rbx
call fcn.1401e7770
movsxd r8, esi
add r8, r8
lea rcx, [rbx + r12]
je 0x1400b9566
test rcx, rcx
jne 0x1400b955e
call fcn.1401ec568
mov dword [rax], socket
call fcn.1401ec3fc
jmp 0x1400b9566
mov rdx, r14
call fcn.1401e7770
movsxd rax, dword [rsp + 0x50]
cmp eax, dword [rbx - 0xc]
jg 0x1400b9eed
mov dword [rbx - 0x10], eax
mov word [rbx + rax*2], r13w
lea r8, [rsp + 0x58]
lea rdx, [rbp - 0x30]
lea rcx, [rbp + 0x10]
call fcn.140051260
nop
mov rdx, rax
lea rcx, [rbp - 0x78]
call fcn.140004620
nop
mov rdx, qword [rbp + 0x10]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b95c5
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400136d6.0]
nop
mov rdx, qword [rbp - 0x30]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b95ed
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400136d6.0]
mov rcx, qword [0x1402bbf68]
mov rax, qword [rcx]
mov rbx, qword [rbp - 0x78]
mov rdx, rbx
mov rax, qword [rax + 0x20]
call qword [case.0x1400136d6.0]
mov r13d, 0x80010034
mov dword [0x1402bbd98], 0x34
lea rdx, [rbx - 0x18]
jmp 0x1400b9cc3
lea rdx, [0x140254e68]
mov rcx, qword [rsi]
call fcn.1401fd9a0
test rax, rax
je 0x1400b9851
sub rax, qword [rsi]
sar rax, 1
test eax, eax
js 0x1400b9851
call fcn.1401bb0c4
mov rcx, rax
test rax, rax
je 0x1400b9f0e
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
add rax, 0x18
mov qword [rsp + 0x78], rax
mov edx, WSAStartup
lea rcx, [rsp + 0x78]
call fcn.1400041d0
nop
mov rdi, qword [rsp + 0x78]
mov rcx, qword [rdi - 0x18]
test rcx, rcx
je 0x1400b96a1
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x1400136d6.0]
mov rcx, rax
test rax, rax
jne 0x1400b96c2
call fcn.1401bb0c4
mov rcx, rax
mov rax, qword [rax]
mov rax, qword [rax + 0x20]
call qword [case.0x1400136d6.0]
mov rcx, rax
test rax, rax
je 0x1400b9ef8
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
lea rbx, [rax + 0x18]
mov qword [rbp - 0x28], rbx
mov dword [rsp + 0x40], 0x80
lea r14, [0x140252310]
mov rsi, r15
nop dword [rax]
inc rsi
cmp word [r14 + rsi*2], 0
jne 0x1400b96f0
mov eax, dword [rdi - 0x10]
mov dword [rsp + 0x48], eax
lea ecx, [rax + rsi]
mov dword [rsp + 0x50], ecx
test ecx, ecx
js 0x1400b9f03
sub r12d, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, ecx
or eax, r12d
jge 0x1400b9736
lfence
mov edx, ecx
lea rcx, [rbp - 0x28]
call fcn.140004e00
mov rdi, qword [rsp + 0x78]
mov rbx, qword [rbp - 0x28]
movsxd rax, dword [rsp + 0x48]
lea r12, [rax + rax]
test r12, r12
je 0x1400b9769
test rbx, rbx
jne 0x1400b975b
call fcn.1401ec568
mov dword [rax], socket
call fcn.1401ec3fc
jmp 0x1400b9769
mov r8, r12
mov rdx, rdi
mov rcx, rbx
call fcn.1401e7770
movsxd r8, esi
add r8, r8
lea rcx, [r12 + rbx]
je 0x1400b9794
test rcx, rcx
jne 0x1400b978c
call fcn.1401ec568
mov dword [rax], socket
call fcn.1401ec3fc
jmp 0x1400b9794
mov rdx, r14
call fcn.1401e7770
movsxd rax, dword [rsp + 0x50]
cmp eax, dword [rbx - 0xc]
jg 0x1400b9f03
mov dword [rbx - 0x10], eax
mov word [rbx + rax*2], r13w
lea r8, [rsp + 0x58]
lea rdx, [rbp - 0x28]
lea rcx, [rbp + 0x18]
call fcn.140051260
nop
mov rdx, rax
lea rcx, [rsp + 0x78]
call fcn.140004620
nop
mov rdx, qword [rbp + 0x18]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b97f4
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400136d6.0]
nop
mov rdx, qword [rbp - 0x28]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b981c
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400136d6.0]
mov rcx, qword [0x1402bbf68]
mov rax, qword [rcx]
mov rbx, qword [rsp + 0x78]
mov rdx, rbx
mov rax, qword [rax + 0x20]
call qword [case.0x1400136d6.0]
mov r13d, 0x8001001c
mov dword [0x1402bbd98], 0x1c
lea rdx, [rbx - 0x18]
jmp 0x1400b9cc3
call fcn.1401bb0c4
mov rcx, rax
test rax, rax
je 0x1400b9f0e
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
add rax, 0x18
mov qword [rbp - 0x70], rax
call fcn.1401bb0c4
mov rcx, rax
test rax, rax
je 0x1400b9f19
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
add rax, 0x18
mov qword [rsp + 0x70], rax
mov r8d, r12d
lea rdx, [rbp + 0x20]
mov rcx, rsi
call fcn.140004340
nop
mov rdx, rax
lea rcx, [rbp - 0x70]
call fcn.140004620
nop
mov rdx, qword [rbp + 0x20]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b98e3
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400136d6.0]
mov r8d, r12d
lea rdx, [rbp + 0x28]
mov rcx, rsi
call fcn.1400044a0
nop
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.140004620
nop
mov rdx, qword [rbp + 0x28]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b9929
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400136d6.0]
mov r8d, r12d
lea rdx, [rbp + 0x38]
mov rcx, rsi
call fcn.140004340
nop
mov esi, r12d
mov dword [rsp + 0x40], r12d
mov rcx, qword [rax]
cmp dword [rcx - 0x10], r12d
jne 0x1400b9950
cmp word [rcx], 0x20
je 0x1400b99c1
mov r8d, r12d
lea rdx, [rbp + 0x30]
mov r14, qword [rbp - 0x58]
mov rcx, r14
call fcn.1400044a0
nop
mov esi, 3
mov dword [rsp + 0x40], esi
mov rcx, qword [rax]
cmp dword [rcx - 0x10], 1
jne 0x1400b997c
cmp word [rcx], 0x20
je 0x1400b99c5
mov rax, qword [rbp - 0x70]
cmp word [rax], 0x3000
jne 0x1400b9993
cmp word [rax + 2], 0
jne 0x1400b9993
mov eax, r13d
jmp 0x1400b9998
sbb eax, eax
or eax, 1
test eax, eax
je 0x1400b99c5
mov rax, qword [rsp + 0x70]
cmp word [rax], 0x3000
jne 0x1400b99b4
cmp word [rax + 2], 0
jne 0x1400b99b4
mov eax, r13d
jmp 0x1400b99b9
sbb eax, eax
or eax, 1
test eax, eax
je 0x1400b99c5
xor bl, bl
jmp 0x1400b99c7
mov r14, qword [rbp - 0x58]
mov bl, 1
test sil, 2
je 0x1400b9a00
and esi, 0xfffffffd
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp + 0x30]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b99fc
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400136d6.0]
mov esi, dword [rsp + 0x40]
test sil, 1
je 0x1400b9a39
and esi, 0xfffffffe
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp + 0x38]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b9a35
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400136d6.0]
mov esi, dword [rsp + 0x40]
test bl, bl
je 0x1400b9c5b
call fcn.1401bb0c4
mov rcx, rax
test rax, rax
je 0x1400b9f24
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
add rax, 0x18
mov qword [rbp - 0x68], rax
mov edx, reloc.WSOCK32.dll_WSAStartup
lea rcx, [rbp - 0x68]
call fcn.1400041d0
nop
mov rdi, qword [rbp - 0x68]
mov rcx, qword [rdi - 0x18]
test rcx, rcx
je 0x1400b9a98
mov rax, qword [rcx]
mov rax, qword [rax + 0x20]
call qword [case.0x1400136d6.0]
mov rcx, rax
test rax, rax
jne 0x1400b9ab9
call fcn.1401bb0c4
mov rcx, rax
mov rax, qword [rax]
mov rax, qword [rax + 0x20]
call qword [case.0x1400136d6.0]
mov rcx, rax
test rax, rax
je 0x1400b9f2f
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x1400136d6.0]
lea rbx, [rax + 0x18]
mov qword [rbp - 0x60], rbx
bts esi, 8
mov dword [rsp + 0x40], esi
lea r14, [0x140252310]
mov rsi, r15
inc rsi
cmp word [r14 + rsi*2], 0
jne 0x1400b9ae0
mov eax, dword [rdi - 0x10]
mov dword [rsp + 0x48], eax
lea ecx, [rax + rsi]
mov dword [rsp + 0x50], ecx
test ecx, ecx
js 0x1400b9e53
sub r12d, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, ecx
or eax, r12d
jge 0x1400b9b25
lfence
mov edx, ecx
lea rcx, [rbp - 0x60]
call fcn.140004e00
mov rdi, qword [rbp - 0x68]
mov rbx, qword [rbp - 0x60]
movsxd rax, dword [rsp + 0x48]
lea r12, [rax + rax]
test r12, r12
je 0x1400b9b58
test rbx, rbx
jne 0x1400b9b4a
call fcn.1401ec568
mov dword [rax], socket
call fcn.1401ec3fc
jmp 0x1400b9b58
mov r8, r12
mov rdx, rdi
mov rcx, rbx
call fcn.1401e7770
movsxd r8, esi
add r8, r8
lea rcx, [r12 + rbx]
je 0x1400b9b83
test rcx, rcx
jne 0x1400b9b7b
call fcn.1401ec568
mov dword [rax], socket
call fcn.1401ec3fc
jmp 0x1400b9b83
mov rdx, r14
call fcn.1401e7770
movsxd rax, dword [rsp + 0x50]
cmp eax, dword [rbx - 0xc]
jg 0x1400b9e53
mov dword [rbx - 0x10], eax
mov word [rbx + rax*2], r13w
lea r8, [rsp + 0x58]
lea rdx, [rbp - 0x60]
lea rcx, [rbp + 0x40]
call fcn.140051260
nop
mov rdx, rax
lea rcx, [rbp - 0x68]
call fcn.140004620
nop
mov rdx, qword [rbp + 0x40]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b9be2
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400136d6.0]
nop
mov rdx, qword [rbp - 0x60]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b9c0a
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400136d6.0]
mov rcx, qword [0x1402bbf68]
mov rax, qword [rcx]
mov rbx, qword [rbp - 0x68]
mov rdx, rbx
mov rax, qword [rax + 0x20]
call qword [case.0x1400136d6.0]
mov r13d, 0x8001001c
mov dword [0x1402bbd98], 0x1c
lea rdx, [rbx - 0x18]
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b9c91
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400136d6.0]
jmp 0x1400b9c91
lea rcx, [rbp - 8]
call fcn.1400484a0
nop
mov r8, qword [r14]
mov edx, edi
lea rcx, [rbp - 8]
call fcn.14004cf90
test eax, eax
jne 0x1400b9c87
mov r13d, 0x8001002f
mov dword [0x1402bbd98], 0x2f
lea rcx, [rbp - 8]
call fcn.140048610
nop
mov rdx, qword [rsp + 0x70]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b9cbb
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400136d6.0]
nop
mov rdx, qword [rbp - 0x70]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b9ce3
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400136d6.0]
mov byte [rbp + 0x58], 1
mov rcx, qword [0x1402a8360]
lea rdi, [0x1402a8360]
lea rbx, [0x1402bbdb0]
cmp rcx, rdi
je 0x1400b9d35
test byte [rcx + 0x1c], 1
je 0x1400b9d35
mov r9, rbx
cmp qword [0x1402bbdc8], 8
cmovae r9, qword [0x1402bbdb0]
mov edx, 0x22
mov dword [rsp + 0x20], r13d
lea r8, [0x14025b168]
mov rcx, qword [rcx + 0x10]
call fcn.140001b40
nop
mov rdx, qword [rbp]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b9d5e
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400136d6.0]
nop
mov rdx, qword [rsp + 0x58]
add rdx, 0xffffffffffffffe8
mov eax, r15d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400b9d88
lfence
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1400136d6.0]
nop
lea rax, vtable.WppTrace.0
mov qword [rbp + 0x50], rax
cmp byte [rbp + 0x58], 0
jne 0x1400b9de6
mov rcx, qword [0x1402a8360]
cmp rcx, rdi
je 0x1400b9de6
test byte [rcx + 0x1c], 1
je 0x1400b9de6
lea rax, [rbp + 0x60]
cmp qword [rbp + 0x78], 8
cmovae rax, qword [rbp + 0x60]
cmp qword [0x1402bbdc8], 8
cmovae rbx, qword [0x1402bbdb0]
mov edx, 0xa
mov qword [rsp + 0x20], rax
mov r9, rbx
lea r8, [0x140252818]
mov rcx, qword [rcx + 0x10]
call fcn.140006c90
lea rcx, [rbp + 0x80]
call fcn.1400048a0
lea rcx, [rbp + 0x60]
call fcn.1400048a0
nop
mov rdx, qword [rbp - 0x58]
mov rdx, qword [rdx]
sub rdx, 0x18
lock xadd dword [rdx + 0x10], r15d
sub r15d, 1
jg 0x1400b9e26
lfence
mov rcx, qword [rdx]
mov r8, qword [rcx]
mov rax, qword [r8 + 8]
call qword [case.0x1400136d6.0]
mov eax, r13d
mov rcx, qword [rbp + 0x28c0]
xor rcx, rsp
call fcn.1401e2900
mov rbx, qword [rsp + 0x2a10]
add rsp, 0x29d0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ecx, 0x80070057
call fcn.140001470
nop
mov ecx, 0x80004005
call fcn.140001470
nop
mov ecx, 0x80004005
call fcn.140001470
nop
mov ecx, 0x80004005
call fcn.140001470
nop
mov ecx, 0x80004005
call fcn.140001470
nop
mov ecx, 0x80004005
call fcn.140001470
int3
mov ecx, 0x80070057
call fcn.140001470
nop
mov ecx, 0x80070057
call fcn.140001470
nop
mov ecx, 0x80004005
call fcn.140001470
nop
mov ecx, 0x80004005
call fcn.140001470
nop
mov ecx, 0x80004005
call fcn.140001470
int3
mov ecx, 0x80070057
call fcn.140001470
nop
mov ecx, 0x80070057
call fcn.140001470
nop
mov ecx, 0x80004005
call fcn.140001470
int3
mov ecx, 0x80070057
call fcn.140001470
nop
mov ecx, 0x80004005
call fcn.140001470
int3
mov ecx, 0x80070057
call fcn.140001470
nop
mov ecx, 0x80004005
call fcn.140001470
nop
mov ecx, 0x80004005
call fcn.140001470
nop
mov ecx, 0x80004005
call fcn.140001470
nop
mov ecx, 0x80004005
call fcn.140001470
int3