Function at 0x140015e60
Capabilities:
Authenticate hmac
Encrypt data using speck
Parse credit card information

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xd8]
sub rsp, 0x1d8
mov r14, qword [rdx]
mov r15d, dword [rcx]
mov r11, qword [r8]
xor esi, esi
mov dword [rbp - 0x58], r15d
mov qword [rbp - 0x68], r14
mov ecx, esi
mov edx, esi
mov r8, r14
mov dword [rbp - 0x48], esi
mov dword [rbp], esi
mov dword [rbp + 0x50], esi
mov dword [rbp + 0xc], esi
mov qword [rbp + 0x88], r14
mov qword [rbp + 0x98], r14
mov r10d, esi
mov dword [rbp - 0x70], esi
mov dword [rbp + 0x1c], esi
mov qword [rbp - 0x80], r11
mov qword [rbp - 0x78], r11
mov qword [rbp + 0x58], rcx
mov r12d, esi
mov qword [rbp - 0x40], rsi
mov qword [rbp + 0x20], rdx
mov qword [rbp - 8], rsi
lea eax, [rsi + 1]
bt r15d, 0xb
jae 0x140016eef
mov dword [rbp - 0x5c], eax
bt r15d, 9
jb 0x140015f01
mov eax, esi
mov r13d, 0xfffffffe
mov dword [rbp + 0x18], eax
xor eax, 1
mov dword [rbp + 0x60], eax
movsx eax, r15b
mov dword [rbp - 0xc], esi
and eax, 1
mov dword [rbp + 4], esi
mov dword [rbp - 0x20], esi
mov dword [rbp - 0x1c], esi
mov dword [rbp - 0x24], r13d
mov dword [rbp - 0x10], r13d
mov dword [rbp + 8], eax
mov dword [rbp - 0x28], r13d
mov dword [rbp - 0x50], r13d
mov edi, 0x7fffffeb
nop dword [rax + rax]
movzx ebx, word [r11]
test ebx, ebx
je 0x140016418
mov r9, qword [rbp + 0x170]
mov rsi, qword [rbp + 0x178]
movsxd rcx, dword [r9 + 0x60]
mov rax, qword [r9 + 0x20]
add rcx, 0xffffffffffffff9c
lea rcx, [rax + rcx*2]
test rsi, rsi
je 0x14001612f
cmp r14, rcx
ja 0x14009938f
cmp r14, r8
jb 0x140095f05
mov edx, dword [rsi]
mov eax, edi
mov rcx, r14
sub eax, edx
sub rcx, r8
cdqe
sar rcx, 1
cmp rax, rcx
jl 0x140098f8b
lea eax, [rdx + rcx]
mov dword [rsi], eax
test r12, r12
je 0x1400162c5
mov rcx, qword [rbp + 0x98]
cmp r12, rcx
jbe 0x140016000
mov r8, r14
mov rdx, r12
sub r8, r12
and r8, 0xfffffffffffffffe
call fcn.140025590
mov rcx, qword [rbp + 0x98]
mov rax, qword [rbp - 0x78]
mov r9, qword [rbp + 0x170]
mov r10d, dword [rbp - 0x70]
sub r12, rcx
sar r12, 1
mov qword [rbp - 0x40], rcx
mov qword [rbp - 0x80], rax
neg r12
mov r11, rax
lea r14, [r14 + r12*2]
mov r12, rcx
mov qword [rbp - 0x68], r14
mov rdx, qword [rbp + 0x20]
mov r8, r14
mov qword [rbp + 0x88], r14
test r10d, r10d
jne 0x140095f11
lea eax, [rbx - 0x2a]
cmp eax, 1
jbe 0x140016449
cmp ebx, 0x3f
je 0x140016449
cmp ebx, 0x7b
je 0x140095fab
xor r10d, r10d
mov edi, r10d
test rdx, rdx
jne 0x140095fcd
mov r10d, r15d
and r10d, 8
mov dword [rbp - 0x4c], r10d
jne 0x140096007
xor edx, edx
bt r15d, 0xe
jb 0x140096146
cmp ebx, 0x5f
jae 0x14001613e
cmp ebx, 0x2f
jae 0x1400162b7
cmp ebx, 0x28
je 0x1400162d1
test ebx, ebx
je case.0x1400160a8.37
lea eax, [rbx - 0x24]
cmp eax, 0x58
ja case.0x1400160a8.47
lea r10, [0x140000000]
movzx eax, byte [r10 + rax + 0x16fbc]
mov ecx, dword [r10 + rax*4 + 0x16f8c]
add rcx, r10
jmp rcx
mov rax, qword [rbp + 0x140]
mov ecx, dword [rbp - 0x1c]
mov rdx, qword [rbp + 0x130]
mov dword [rax], ecx
mov rax, qword [rbp + 0x148]
mov ecx, dword [rbp - 0x50]
mov dword [rax], ecx
mov rax, qword [rbp + 0x150]
mov ecx, dword [rbp - 0x20]
mov dword [rax], ecx
mov rax, qword [rbp + 0x158]
mov ecx, dword [rbp - 0x28]
mov dword [rax], ecx
mov rax, qword [rbp + 0x128]
mov qword [rax], r14
mov rax, qword [rbp - 0x80]
mov qword [rdx], rax
test rsi, rsi
je 0x140016116
mov ecx, dword [rsi]
mov eax, 0x7fffffeb
sub r14, r8
sub eax, ecx
sar r14, 1
cdqe
cmp rax, r14
jl 0x14009909e
add ecx, r14d
mov dword [rsi], ecx
mov eax, 1
add rsp, 0x1d8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
cmp qword [r9 + 0x48], rcx
jbe 0x14001600e
jmp 0x14009938f
cmp ebx, 0x7b
jae 0x14001606b
mov r10, qword [rbp - 0x80]
cmp dword [rbp - 0x5c], 0
mov esi, 1
movzx edi, bx
mov word [rbp + 0x78], bx
je 0x140016171
mov edx, 0xfc00
mov eax, 0xd800
and ebx, edx
cmp ebx, eax
je 0x140097c64
mov r10d, dword [rbp - 0x70]
cmp dword [rbp - 0x5c], 0
mov r12, r14
mov qword [rbp - 0x40], r14
je 0x1400161e9
test r15b, 1
je 0x1400161ed
mov ecx, 0xfc00
movzx edx, di
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
je 0x140097c93
mov eax, edx
lea r8, [0x140000000]
cdq
and edx, 0x7f
add eax, edx
mov ecx, eax
and eax, 0x7f
sub eax, edx
sar ecx, 7
movsxd rcx, ecx
cdqe
movzx edx, byte [rcx + r8 + 0xbf430]
shl rdx, 7
add rdx, rax
movzx eax, word [r8 + rdx*2 + 0xb1590]
movzx ecx, byte [r8 + rax*8 + 0xbe093]
test ecx, ecx
jne 0x140016426
test r15b, 1
mov eax, 0
setne al
add r14, 2
add eax, 0x1d
mov qword [rbp - 0x68], r14
mov word [r14 - 2], ax
test esi, esi
je 0x140016225
mov r8d, esi
lea rdx, [rbp + 0x78]
mov rcx, r14
add r8, r8
mov ebx, esi
call fcn.140025590
lea r14, [r14 + rbx*2]
mov qword [rbp - 0x68], r14
cmp di, 0xd
je 0x140097cc8
cmp di, 0xa
je 0x140097cc8
mov r9, qword [rbp + 0x170]
mov r13d, dword [rbp - 0x50]
mov eax, dword [rbp - 0x20]
mov r8d, dword [rbp - 0x28]
mov dword [rbp - 0xc], eax
mov dword [rbp - 0x24], r8d
cmp r13d, 0xfffffffe
je 0x14001669e
mov ecx, dword [rbp - 0x1c]
mov dword [rbp - 0x10], r13d
mov dword [rbp + 4], ecx
cmp esi, 1
jne 0x140097d0b
mov edi, dword [r9 + 0x84]
movzx eax, word [r14 - 2]
or edi, dword [rbp + 8]
mov dword [rbp - 0x20], eax
mov dword [rbp - 0x28], edi
mov r11, qword [rbp - 0x78]
mov r10d, dword [rbp - 0x70]
mov edi, 0x7fffffeb
mov r13d, dword [rbp - 0x24]
mov r8, qword [rbp + 0x88]
mov rdx, qword [rbp + 0x20]
mov rcx, qword [rbp + 0x58]
add r11, 2
xor esi, esi
mov qword [rbp - 0x80], r11
mov qword [rbp - 0x78], r11
jmp 0x140015f40
cmp ebx, 0x3f
jb case.0x1400160a8.47
jmp 0x140016074
mov r14, qword [rbp + 0x98]
jmp 0x140015ffc
mov rdi, qword [rbp - 0x80]
mov rax, qword [r9 + 0x48]
mov r11, qword [rbp + 0x170]
xor edx, edx
add rdi, 2
mov ebx, r15d
mov qword [rbp - 0x78], rdi
mov dword [rbp - 0x38], edx
mov r9d, edx
mov dword [rbp - 0x54], edx
movzx edx, word [rdi]
mov dword [rbp - 0x60], 0x7f
mov qword [rbp - 8], rax
mov qword [rbp - 0x80], rdi
cmp dx, 0x2a
je 0x140097d1a
mov edi, 0xff
cmp dx, 0x3f
jne 0x14001699a
mov rdx, qword [rbp - 0x80]
add rdx, 2
mov qword [rbp - 0x78], rdx
mov qword [rbp - 0x80], rdx
movzx r8d, word [rdx]
mov eax, r8d
cmp r8d, 0x53
jl 0x140097fcc
cmp eax, 0x7c
jge 0x140097fcc
mov edi, 1
lea r13, [0x140000000]
xor r12d, r12d
lea rdx, [rbp - 0x30]
mov eax, r12d
mov ebx, r12d
mov dword [rbp - 0x54], eax
mov dword [rbp - 0x30], ebx
cmp r8w, 0x29
je 0x1400163b4
cmp r8w, 0x3a
je 0x1400163ae
mov r11, qword [rbp - 0x80]
movzx eax, r8w
add r11, 2
mov qword [rbp - 0x80], r11
mov qword [rbp - 0x78], r11
cmp eax, 0x69
jne 0x140098dcc
or dword [rdx], 1
mov r11, qword [rbp + 0x170]
mov rax, qword [rbp - 0x80]
movzx r8d, word [rax]
cmp r8w, 0x29
jne 0x140016371
mov ebx, dword [rbp - 0x30]
mov eax, dword [rbp - 0x54]
or ebx, r15d
not eax
and ebx, eax
mov rax, qword [rbp - 0x80]
cmp word [rax], 0x29
jne 0x140098e58
mov rax, qword [r11 + 0x28]
add rax, 4
cmp r14, rax
je 0x140098e41
bt ebx, 9
jb 0x140016f58
mov eax, r12d
mov dword [rbp + 0x18], eax
xor eax, 1
mov dword [rbp + 0x60], eax
test bl, 1
je 0x140016f5f
mov dword [rbp + 8], edi
mov rax, qword [rbp + 0x120]
mov r15d, ebx
mov dword [rbp - 0x58], ebx
mov dword [rax], ebx
mov qword [rbp - 0x40], r12
mov r11, qword [rbp - 0x80]
jmp 0x140016288
test rcx, rcx
je 0x140015f4c
jmp 0x140095eee
mov dword [r14], 0x90010
mov word [r14 + 4], cx
add r14, 6
cmp dword [rbp - 0x50], 0xfffffffe
mov qword [rbp - 0x68], r14
jne 0x140016284
jmp 0x140097cb6
mov edi, 1
jmp 0x140016044
mov rcx, qword [rbp - 0x80]
mov r12, r14
mov qword [rbp - 0x40], r14
movzx eax, word [rcx + 2]
cmp ax, 0x3d
jbe 0x140016b79
xor r11d, r11d
mov esi, r11d
mov dword [rbp - 0x4c], r11d
mov eax, 1
add rcx, 2
mov qword [rbp - 0x78], rcx
mov qword [rbp - 0x80], rcx
movzx edi, word [rcx]
cmp edi, 0x5c
je 0x140016e4c
test esi, esi
jne 0x1400164a0
cmp edi, 0x5e
je 0x140016f0e
cmp edi, 0x5d
je 0x140096233
xor edx, edx
lea rcx, [rbp + 0x30]
mov dword [rbp - 0x54], r11d
lea r8d, [rdx + 0x20]
mov r13d, r11d
mov r12d, r11d
call fcn.140025cb0
lea r15, [r14 + 6]
xor r11d, r11d
mov rcx, r15
mov dword [rbp - 0xc], r11d
mov qword [rbp - 0x30], r15
mov qword [rbp - 0x38], rcx
test edi, edi
je 0x140016f81
mov rdx, qword [rbp - 0x78]
mov qword [rbp - 0x80], rdx
mov esi, dword [rbp - 0x5c]
test esi, esi
je 0x140016509
mov eax, edi
mov r8d, 0xfc00
mov r9d, 0xd800
and eax, r8d
cmp eax, r9d
je 0x14009627f
mov r9, qword [rbp + 0x178]
mov r14d, 1
test r9, r9
je 0x140016524
cmp r15, rcx
ja 0x1400962d0
mov r10d, dword [rbp - 0x70]
test r10d, r10d
jne 0x1400962e9
cmp edi, 0x5b
je 0x140096310
cmp edi, 0x5c
je 0x140016e79
mov r9, qword [rbp + 0x170]
mov r15d, dword [rbp - 0x58]
cmp word [rdx + 2], 0x5c
je 0x14009683d
mov rbx, rdx
cmp edi, 0xd
je 0x140096866
cmp edi, 0xa
je 0x140096866
test r10d, r10d
jne 0x14001657e
cmp word [rdx + 2], 0x2d
je 0x140016c97
mov rbx, qword [rbp - 0x80]
cmp r12d, 2
jl 0x140016696
cmp r12d, 1
je 0x1400167c3
mov dword [rsp + 0x28], edi
lea rdx, [rbp - 0x30]
lea rcx, [rbp + 0x30]
mov r8d, r15d
mov dword [rsp + 0x20], edi
call fcn.140017018
mov r15, qword [rbp - 0x30]
mov rcx, qword [rbp - 0x78]
add r13d, eax
xor r11d, r11d
mov r10d, dword [rbp - 0x70]
mov r9, qword [rbp + 0x178]
mov qword [rbp - 0x80], rcx
mov rdi, rcx
mov rcx, qword [rbp - 0x38]
mov esi, dword [rbp - 0x58]
add rdi, 2
mov qword [rbp - 0x80], rdi
mov qword [rbp - 0x78], rdi
movzx edi, word [rdi]
test edi, edi
je 0x14009699b
mov rdx, qword [rbp - 0x80]
cmp edi, 0x5d
jne 0x1400164e8
test r10d, r10d
jne 0x140016f21
cmp r15, rcx
ja 0x140016f2a
mov edx, dword [rbp - 0xc]
mov eax, dword [rbp - 0x50]
mov r8d, dword [rbp - 0x28]
mov ebx, dword [rbp - 0x54]
cmp eax, 0xfffffffe
mov ecx, 0xffffffff
mov dword [rbp - 0x24], r8d
cmove eax, ecx
mov ecx, dword [rbp - 0x1c]
mov dword [rbp - 0x50], eax
mov dword [rbp - 0x10], eax
mov eax, dword [rbp - 0x20]
mov dword [rbp + 4], ecx
mov dword [rbp - 0xc], eax
test edx, edx
jne 0x140096b28
mov esi, dword [rbp - 0x4c]
cmp esi, ebx
jne 0x140016f34
mov eax, 0x6a
mov r14, qword [rbp - 0x68]
mov word [r14], ax
test r9, r9
jne 0x14001667d
test esi, esi
jne 0x140096bc9
lea rdx, [rbp + 0x30]
lea rcx, [r14 + 2]
mov r8d, reloc.OLEAUT32.dll_RegisterActiveObject
call fcn.140025590
mov r10d, dword [rbp - 0x70]
mov r11, qword [rbp - 0x78]
mov r15d, dword [rbp - 0x58]
mov r12, qword [rbp - 0x40]
add r14, 0x22
mov qword [rbp - 0x68], r14
jmp 0x14001628c
inc r12d
jmp 0x14001658c
or ecx, 0xffffffff
mov dword [rbp - 0x10], ecx
cmp esi, 1
jne 0x140097cdf
movzx eax, di
mov dword [rbp - 0x1c], eax
mov eax, dword [rbp + 8]
mov dword [rbp - 0x50], eax
cmp esi, 1
je 0x140016284
jmp 0x140097cf4
mov rax, qword [rbp - 0x80]
mov rbx, qword [rbp + 0x138]
mov r9d, dword [r9 + 0x64]
mov qword [rbp + 0x68], rax
xor eax, eax
lea rdx, [rbp + 0x28]
mov dword [rsp + 0x28], eax
lea rcx, [rbp - 0x78]
mov r8, rbx
mov dword [rsp + 0x20], r15d
call fcn.14001739c
cmp dword [rbx], 0
movsxd rdi, eax
jne 0x140016f78
test eax, eax
je 0x140016c34
cmp edi, 0x1a
je 0x1400979aa
cmp edi, 0x19
je 0x140016284
mov r13d, dword [rbp - 0x50]
or ecx, 0xffffffff
cmp r13d, 0xfffffffe
jne 0x140016736
lea eax, [rdi - 6]
cmp eax, 0x10
ja 0x140016736
mov r13d, ecx
mov dword [rbp - 0x50], ecx
mov eax, dword [rbp - 0x1c]
mov r8d, dword [rbp - 0x28]
mov dword [rbp - 0x10], r13d
mov dword [rbp + 4], eax
mov eax, dword [rbp - 0x20]
mov dword [rbp - 0x24], r8d
mov dword [rbp - 0xc], eax
cmp edi, 0x1b
je 0x1400979d7
cmp edi, 0x1c
je 0x140097b15
test edi, edi
js 0x140097b87
lea eax, [rdi - 0xf]
cmp eax, 1
jbe 0x140097bfa
cmp edi, 1
je 0x140097b9b
lea eax, [rdi - 4]
cmp eax, 1
jbe 0x140097b9b
lea eax, [rdi - 0x1d]
cmp eax, 5
jbe 0x140097bb9
lea eax, [rdi - 6]
cmp eax, 0x10
ja 0x140097bdd
mov r12, r14
cmp dword [rbp - 0x5c], 0
mov qword [rbp - 0x40], r12
je 0x140097be7
mov word [r14], di
add r14, 2
mov qword [rbp - 0x68], r14
jmp 0x140016284
cmp word [rbx + 2], 0x5d
jne 0x140016596
jmp 0x1400969e1
xor r8d, r8d
or eax, 0xffffffff
lea edi, [rax + 2]
mov esi, eax
mov dword [rbp - 0x54], eax
mov dword [rbp], eax
mov edx, r8d
mov dword [rbp - 0x48], edx
test r12, r12
je 0x140099080
test edx, edx
jne 0x140016f3e
mov eax, dword [rbp + 4]
mov ebx, r13d
mov dword [rbp - 0x1c], eax
mov eax, dword [rbp - 0x10]
mov dword [rbp - 0x28], ebx
mov dword [rbp - 0x50], eax
mov eax, dword [rbp - 0xc]
mov dword [rbp - 0x20], eax
cmp edx, esi
je 0x140016f46
mov eax, 2
mov dword [rbp - 0x4c], eax
lea rcx, [r11 + 2]
mov qword [rbp - 0x18], r12
mov r10d, r8d
movzx eax, word [rcx]
mov dword [rbp - 0x60], r8d
mov r9, r12
cmp ax, 0x2b
je 0x140096c4a
cmp ax, 0x3f
jne 0x140016bf8
mov r13d, dword [rbp + 0x60]
mov qword [rbp - 0x80], rcx
mov qword [rbp - 0x78], rcx
mov r11, rcx
cmp word [r12], 0x6f
je 0x140096c63
mov rcx, qword [rbp + 0x170]
movzx r8d, word [r12]
lea eax, [r8 - 0x1d]
cmp ax, 3
jbe 0x140097395
cmp r8w, 0x17
jae 0x140016c01
mov ebx, reloc.WSOCK32.dll_gethostbyname
movzx edi, r8w
test r10d, r10d
jne 0x1400168d0
test esi, esi
jns 0x1400168d0
mov r8, qword [rbp - 0x80]
mov edx, dword [rbp - 0x5c]
mov qword [rsp + 0x20], rcx
add r8, 2
mov r9d, r15d
mov rcx, r12
call fcn.140017624
test eax, eax
jne 0x140096d1b
mov rax, qword [rbp - 0x78]
mov r10d, dword [rbp - 0x60]
mov qword [rbp - 0x80], rax
mov edx, dword [rbp - 0x48]
mov r11d, dword [rbp - 0x5c]
movzx eax, word [r12]
sub ax, 0xf
cmp ax, 1
jbe 0x1400974af
or eax, 0xffffffff
mov r14d, eax
mov esi, eax
mov r15d, dword [rbp - 0x54]
mov rax, qword [rbp - 0x68]
mov qword [rbp - 0x68], r12
test r15d, r15d
je 0x140016f4f
add r13d, ebx
test edx, edx
jne 0x1400974ed
lea rbx, [r12 + 2]
cmp r15d, 0xffffffff
jne 0x1400974c0
add r13w, 0x21
mov word [r12], r13w
test r11d, r11d
je 0x140016937
bt edi, 0x1c
jb 0x140097654
mov word [rbx], di
add rbx, 2
mov r12d, 2
mov qword [rbp - 0x68], rbx
lea r15d, [r12 + 0x70]
test esi, esi
jns 0x14009767e
mov rax, qword [rbp - 0x78]
mov r9, qword [rbp - 0x18]
mov r14, rbx
mov qword [rbp - 0x80], rax
xor r8d, r8d
mov rsi, qword [rbp - 8]
test r10d, r10d
jne 0x1400976ac
mov rcx, qword [rbp + 0x170]
mov r15d, dword [rbp - 0x58]
mov r11, qword [rbp - 0x80]
xor eax, eax
mov r12d, eax
mov qword [rbp - 0x40], rax
mov eax, dword [rbp - 0x4c]
or dword [rcx + 0x84], eax
jmp 0x140016288
bt r15d, 0xc
jb 0x140098e79
inc dword [r11 + 0x64]
movzx eax, word [r11 + 0x64]
mov r10d, 1
mov word [r14 + 4], ax
mov r11d, r10d
mov eax, dword [rbp - 0x60]
mov rdi, qword [rbp + 0x170]
mov r13, qword [rbp + 0x178]
xor edx, edx
mov word [r14], ax
mov esi, dword [rdi + 0x84]
mov edi, dword [rdi + 0x64]
test r13, r13
lea rcx, [rbp + 0xc]
mov r8d, 0x81
cmove rcx, rdx
mov r12, r14
mov qword [rbp - 0x40], r14
mov qword [rbp - 0x18], r14
mov dword [rbp + 0xc], edx
cmp eax, r8d
je 0x140016f68
add eax, 0xffffff87
mov r8d, edx
cmp eax, 1
jbe 0x140016f70
xor eax, eax
mov eax, dword [rbp + 0x168]
mov qword [rsp + 0x70], rcx
mov rcx, qword [rbp + 0x160]
add eax, r8d
mov r8, qword [rbp + 0x170]
mov qword [rsp + 0x68], r8
mov qword [rsp + 0x60], rcx
lea rcx, [rbp + 0x10]
mov qword [rsp + 0x58], rcx
lea rcx, [rbp + 0x2c]
lea r8, [rbp - 0x78]
mov qword [rsp + 0x50], rcx
lea rcx, [rbp + 0x14]
mov qword [rsp + 0x48], rcx
lea rcx, [rbp + 0x70]
mov qword [rsp + 0x40], rcx
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x30], r11d
mov dword [rsp + 0x28], r9d
mov r9, qword [rbp + 0x138]
mov dword [rsp + 0x20], edx
lea rdx, [rbp - 0x18]
mov ecx, ebx
call fcn.140015ad0
test eax, eax
je 0x140016f78
mov edx, dword [rbp - 0x60]
cmp edx, 0x7b
je 0x140098e9b
lea eax, [rdx - 0x77]
cmp eax, 3
jbe 0x140098ec2
mov eax, 0x81
xor r9d, r9d
cmp edx, eax
je 0x140098ed1
mov r8d, 0x8b
mov eax, dword [rbp + 0x10]
mov ecx, dword [rbp + 0x14]
or r10d, 0xffffffff
mov r11, qword [rbp - 0x78]
cmp word [r11], 0x29
jne 0x140099371
test r13, r13
je 0x140016b92
mov r8d, dword [rbp + 0xc]
mov edx, dword [r13]
mov edi, 0x7fffffeb
mov ecx, edi
lea eax, [r8 - 4]
sub ecx, edx
cmp ecx, eax
jl 0x140098f8b
mov r10d, dword [rbp - 0x70]
lea eax, [r8 - 4]
add eax, edx
add r14, 8
mov dword [r13], eax
mov dword [r14 - 6], 0x720002
mov eax, 2
mov word [r14 - 2], ax
mov r11, qword [rbp - 0x78]
mov qword [rbp - 0x68], r14
jmp 0x140016291
mov eax, dword [rbp - 0x50]
cmp eax, 0xfffffffe
jne 0x140016b3b
or eax, 0xffffffff
mov dword [rbp - 0x50], eax
mov ecx, dword [rbp - 0x1c]
mov r8d, dword [rbp - 0x28]
mov dword [rbp - 0x10], eax
mov eax, dword [rbp - 0x20]
mov dword [rbp + 4], ecx
mov dword [rbp - 0x24], r8d
mov r12, r14
mov qword [rbp - 0x40], r14
mov dword [rbp - 0xc], eax
test r15b, 4
jne 0x140016ef7
mov eax, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
mov word [r14], ax
add r14, 2
mov qword [rbp - 0x68], r14
jmp 0x140016284
movabs rdx, 0x2400400000000000
bt rdx, rax
jae 0x14001646c
jmp 0x14009620c
mov r14, qword [rbp - 0x18]
mov qword [rbp - 0x68], r14
cmp edx, r8d
je 0x140016288
mov r8d, dword [rbp - 0x20]
mov dword [rbp + 0x1c], r9d
mov dword [rbp - 0xc], r8d
mov r8d, dword [rbp - 0x28]
mov dword [rbp - 0x24], r8d
mov r8d, dword [rbp - 0x1c]
mov dword [rbp + 4], r8d
mov r8d, dword [rbp - 0x50]
mov dword [rbp - 0x10], r8d
cmp edx, 0x7b
jl 0x140098f63
cmp r8d, 0xfffffffe
je 0x140098f39
test ecx, ecx
jns 0x140016ed5
test eax, eax
js 0x140016288
mov ecx, dword [rbp + 0x2c]
mov dword [rbp - 0x28], eax
mov dword [rbp - 0x20], ecx
jmp 0x140016288
mov r13d, dword [rbp + 0x18]
jmp 0x14001685b
lea eax, [r8 - 0x6a]
cmp ax, 4
ja 0x140016d30
test esi, esi
je 0x140097345
test edx, edx
jne 0x140097351
cmp esi, 0xffffffff
je 0x140016c66
cmp esi, 1
jne 0x140097365
add r13w, 0x66
jmp 0x140016c6b
mov edi, dword [rbp + 0x28]
cmp edi, 0xffff
ja 0x14009798a
mov word [rbp + 0x78], di
mov esi, 1
jmp 0x140016171
mov edi, 1
xor r8d, r8d
mov esi, edi
mov dword [rbp - 0x54], edi
mov dword [rbp], edi
jmp 0x1400167e4
add r13w, 0x62
mov word [r14], r13w
add r14, 2
mov qword [rbp - 0x68], r14
xor r8d, r8d
mov r15d, WSAStartup
mov rax, qword [rbp - 0x78]
mov r9, qword [rbp - 0x18]
mov qword [rbp - 0x80], rax
mov r12d, 2
jmp 0x140016967
add rdx, 4
mov qword [rbp - 0x78], rdx
mov qword [rbp - 0x80], rdx
cmp word [rdx], 0x5c
je 0x140096876
movzx eax, word [rdx]
test ax, ax
je 0x140016f18
test r10d, r10d
jne 0x140016cc8
cmp ax, 0x5d
je 0x140016f18
movzx edx, ax
mov dword [rbp - 0x24], edx
test esi, esi
je 0x140016ce8
mov ecx, 0xfc00
mov eax, edx
and eax, ecx
mov ecx, 0xd800
cmp eax, ecx
je 0x1400968e5
mov r11, qword [rbp - 0x80]
test r10d, r10d
jne 0x140016cfa
cmp edx, 0x5c
je 0x140096920
mov r14, qword [rbp + 0x138]
cmp edx, edi
jb 0x140099046
je 0x14001657e
mov r12d, 2
cmp edx, 0xd
je 0x14009698b
cmp edx, 0xa
je 0x14009698b
mov dword [rsp + 0x28], edx
jmp 0x14001659a
lea eax, [r8 - 0x77]
cmp ax, 0xa
ja 0x140097318
xor edi, edi
mov r15, r14
mov eax, 0x81
sub r15, r12
mov r12d, edi
mov r14d, edi
mov rdi, qword [rbp - 0x40]
sar r15, 1
cmp r8w, ax
je 0x140096d38
cmp r8w, 0x7b
jb 0x140096d4c
mov eax, 1
test edx, edx
jne 0x140096dd2
mov rax, qword [rbp - 8]
mov r8d, dword [rbp - 0x5c]
xor edx, edx
mov r9, rcx
mov qword [rsp + 0x20], rax
mov rcx, rdi
cmp esi, 1
jg 0x140096d7f
mov r14, qword [rbp - 0x68]
mov word [r14], dx
mov edx, 1
call fcn.1400179f0
lea eax, [r15 + r15]
lea rbx, [rdi + 2]
movsxd r8, eax
mov rcx, rbx
mov rdx, rdi
call fcn.140025590
add r14, 2
mov qword [rbp - 0x68], r14
test esi, esi
je 0x140096d6a
mov eax, 0x8c
mov r14, rdi
mov rcx, rbx
add eax, r13d
mov qword [rbp - 0x40], rbx
mov word [rdi], ax
mov rax, qword [rbp - 0x78]
mov r9, qword [rbp - 0x18]
mov edx, dword [rbp - 0x48]
mov r10d, dword [rbp - 0x60]
mov r8, qword [rbp + 0x178]
mov r11, qword [rbp + 0x170]
mov qword [rbp - 0x80], rax
dec esi
mov ebx, 0x7fffffeb
mov dword [rbp], esi
test esi, esi
js 0x140097198
test r8, r8
je 0x140016e25
test esi, esi
jg 0x140096f99
lea edi, [rsi - 1]
mov dword [rbp - 0x30], edi
test edi, edi
jns 0x140096fe3
mov r14, qword [rbp - 0x68]
xor r8d, r8d
lea r15d, [r8 + 0x72]
test r12, r12
je 0x140016c8c
jmp 0x14009714e
add rcx, 2
cmp word [rcx], 0x45
je 0x14001647b
lea rdx, [0x1400c5ae8]
mov r8d, 3
call fcn.140023fe8
test eax, eax
jne 0x1400164a9
jmp 0x140096226
mov rax, qword [rbp + 0x170]
mov rdi, qword [rbp + 0x138]
mov esi, dword [rbp - 0x58]
mov r9d, dword [rax + 0x64]
lea rdx, [rbp + 0x28]
lea rcx, [rbp - 0x78]
mov r8, rdi
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], esi
call fcn.14001739c
cmp dword [rdi], 0
movsxd rbx, eax
jne 0x140016f78
test eax, eax
jne 0x1400964f6
mov edi, dword [rbp + 0x28]
mov rdx, qword [rbp - 0x78]
mov r10d, dword [rbp - 0x70]
mov esi, dword [rbp - 0x5c]
mov qword [rbp - 0x80], rdx
xor r11d, r11d
jmp 0x140016543
test eax, eax
jns 0x140016bea
mov eax, dword [rbp + 0x70]
mov dword [rbp + 0x2c], eax
mov eax, ecx
or eax, esi
mov dword [rbp + 0x10], eax
jmp 0x140016be2
mov dword [rbp - 0x5c], esi
jmp 0x140015ef8
mov eax, reloc.WSOCK32.dll_listen
add r14, 2
mov word [r14 - 2], ax
mov qword [rbp - 0x68], r14
jmp 0x140016284
mov esi, eax
mov dword [rbp - 0x4c], eax
jmp 0x14001647b
mov qword [rbp - 0x78], rbx
jmp 0x140016582
mov rdx, qword [rbp - 0x80]
jmp 0x1400164e8
mov edx, 1
jmp 0x14001660e
mov eax, WSAGetLastError
jmp 0x140016651
mov ebx, dword [rbp - 0x28]
jmp 0x140016813
mov dword [rbp - 0x4c], r8d
jmp 0x140016823
mov r14, qword [rbp - 0x68]
jmp 0x140016974
mov eax, edi
jmp 0x1400163e7
mov dword [rbp + 8], r12d
jmp 0x1400163fc
mov r8d, r10d
jmp 0x140016a13
mov edx, r10d
jmp 0x140016a15
mov r11, qword [rbp - 0x78]
jmp 0x14009939c
mov r11, qword [rbp - 0x78]
jmp 0x1400969c3
mov qword [rbp - 0x78], rcx
movzx ebx, word [rcx]
mov qword [rbp - 0x80], rcx
mov qword [rbp + 0x58], rsi
mov r11, rcx
jmp 0x140015f4c
mov r14, r8
mov qword [rbp - 0x68], r8
jmp 0x140015f85
test ebx, ebx
je 0x140016017
mov rcx, qword [rbp - 0x80]
cmp ebx, 0x5c
jne 0x140095f3a
cmp word [rcx + 2], 0x45
jne 0x140095f3a
xor edx, edx
lea r11, [rcx + 2]
mov r10d, edx
mov dword [rbp - 0x70], edx
jmp 0x140016291
test rdx, rdx
je 0x140095f71
test rsi, rsi
jne 0x140095f65
mov eax, ecx
sub eax, dword [r9 + 0x30]
sar rax, 1
sub ax, word [rdx + 4]
mov word [rdx + 6], ax
mov rax, qword [rbp - 0x78]
xor edx, edx
mov qword [rbp - 0x80], rax
mov qword [rbp + 0x20], rdx
jmp 0x140095f77
mov rax, qword [rbp - 0x80]
xor edx, edx
mov qword [rbp + 0x20], rdx
jmp 0x140095f77
mov rax, qword [rbp - 0x80]
xor edx, edx
bt r15d, 0xe
jae case.0x1400160a8.47
mov dword [r14], 0xff0070
sub eax, dword [r9 + 0x30]
mov word [r14 + 6], dx
sar rax, 1
mov qword [rbp + 0x20], r14
add r14, 8
mov word [r14 - 4], ax
mov r10, qword [rbp - 0x78]
jmp 0x14001614b
mov rcx, qword [rbp - 0x80]
add rcx, 2
call fcn.140083e84
mov r11, qword [rbp - 0x80]
test eax, eax
jne 0x140016449
mov rdx, qword [rbp + 0x20]
jmp 0x140016035
mov ecx, dword [rbp + 0x50]
mov eax, ecx
dec ecx
mov dword [rbp + 0x50], ecx
test eax, eax
jg 0x140016044
test rsi, rsi
jne 0x140095ffe
mov eax, dword [rbp - 0x80]
sub eax, dword [r9 + 0x30]
sar rax, 1
sub ax, word [rdx + 4]
mov word [rdx + 6], ax
mov r11, qword [rbp - 0x78]
mov qword [rbp - 0x80], r11
mov qword [rbp + 0x20], r10
jmp 0x140016044
mov eax, 0xff
cmp word [r11], ax
ja 0x140096020
mov rax, qword [r9 + 0x18]
test byte [rbx + rax], 1
jne 0x140016288
cmp ebx, 0x23
jne 0x140016055
add r11, 2
mov qword [rbp - 0x78], r11
mov qword [rbp - 0x80], r11
movzx r8d, word [r11]
test r8w, r8w
je 0x1400960a7
mov eax, dword [rbp - 0x5c]
mov ecx, 0xfc00
mov edx, dword [r9 + 0x94]
test edx, edx
je 0x1400960b7
mov r8, qword [r9 + 0x38]
cmp r11, r8
jae 0x1400960f4
add r9, 0x98
mov rcx, r11
mov dword [rsp + 0x20], eax
call fcn.1400236f4
mov r11, qword [rbp - 0x80]
mov r9, qword [rbp + 0x170]
test eax, eax
je 0x1400960ec
mov eax, dword [r9 + 0x98]
dec eax
cdqe
lea r11, [r11 + rax*2]
mov qword [rbp - 0x78], r11
mov qword [rbp - 0x80], r11
cmp word [r11], 0
jne 0x140016288
mov r10d, dword [rbp - 0x4c]
mov r8, qword [rbp + 0x88]
xor edx, edx
mov ebx, edx
jmp 0x140016057
movsxd rcx, dword [r9 + 0x98]
mov rax, rcx
imul rax, rax, 0xfffffffffffffffe
add rax, qword [r9 + 0x38]
cmp r11, rax
ja 0x1400960ec
cmp r8w, word [r9 + 0x9c]
jne 0x1400960ec
cmp ecx, 1
je 0x140096081
movzx eax, word [r9 + 0x9e]
cmp word [r11 + 2], ax
je 0x140096081
mov eax, dword [rbp - 0x5c]
mov ecx, 0xfc00
add r11, 2
mov qword [rbp - 0x80], r11
mov qword [rbp - 0x78], r11
test eax, eax
je 0x140096124
movzx eax, word [r11]
mov edx, 0xdc00
and ax, cx
cmp ax, dx
mov eax, dword [rbp - 0x5c]
jne 0x140096124
add r11, 2
mov qword [rbp - 0x80], r11
mov qword [rbp - 0x78], r11
movzx r8d, word [r11]
test r8w, r8w
jne 0x140096047
mov r10d, dword [rbp - 0x4c]
mov r8, qword [rbp + 0x88]
xor edx, edx
mov ebx, edx
jmp 0x140016057
test edi, edi
jne 0x140016062
mov dword [r14], 0xff0070
mov eax, r11d
mov qword [rbp + 0x20], r14
sub eax, dword [r9 + 0x30]
mov word [r14 + 6], dx
sar rax, 1
add r14, 8
mov word [r14 - 4], ax
mov r11, qword [rbp - 0x78]
mov qword [rbp - 0x68], r14
mov qword [rbp - 0x80], r11
jmp 0x140016062
mov r10d, dword [rbp - 0x70]
mov r12, rdx
mov qword [rbp - 0x40], rdx
mov edi, 0x7fffffeb
test r15b, 2
je 0x1400961ae
mov eax, dword [rbp - 0x50]
mov ecx, 0xffffffff
cmp eax, 0xfffffffe
cmove eax, ecx
mov dword [rbp - 0x50], eax
lea eax, [rcx + 0x1b]
jmp 0x1400961b3
mov eax, 0x19
mov word [r14], ax
mov r11, qword [rbp - 0x78]
add r14, 2
mov qword [rbp - 0x68], r14
jmp 0x140016291
xor eax, eax
test r15b, 2
mov r12d, eax
mov qword [rbp - 0x40], rax
setne al
add eax, 0x1b
jmp 0x140016b68
test dword [r9 + 0x7c], 0x2000000
je case.0x1400160a8.47
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov dword [rax], 0x40
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
lea rdx, [rbp + 0x68]
call fcn.140082e40
test eax, eax
jne 0x140098fa9
mov rcx, qword [rbp - 0x80]
jmp 0x14001646c
mov rcx, qword [rbp - 0x80]
add rcx, 6
jmp 0x140016476
mov r8, qword [rbp + 0x170]
test dword [r8 + 0x7c], 0x2000000
je 0x1400164a9
test esi, esi
mov ecx, reloc.WSOCK32.dll_listen
mov eax, reloc.WSOCK32.dll___WSAFDIsSet
cmovne eax, ecx
mov ecx, 0xffffffff
add r14, 2
mov word [r14 - 2], ax
mov eax, dword [rbp - 0x50]
cmp eax, 0xfffffffe
cmove eax, ecx
mov ecx, dword [rbp - 0x1c]
mov dword [rbp + 4], ecx
mov dword [rbp - 0x50], eax
mov dword [rbp - 0x10], eax
jmp 0x1400167ba
mov rax, qword [rbp - 0x80]
movzx edi, word [rax]
mov eax, edi
and eax, r8d
cmp eax, r9d
jne 0x1400962c7
mov rax, qword [rbp - 0x80]
and edi, 0x3ff
movzx ecx, word [rax + 2]
add rax, 2
and ecx, 0x3ff
mov qword [rbp - 0x80], rax
mov eax, edi
mov edi, ecx
mov rcx, qword [rbp - 0x80]
shl eax, 0xa
or edi, eax
mov qword [rbp - 0x78], rcx
mov rcx, qword [rbp - 0x38]
add edi, 0x10000
mov rdx, qword [rbp - 0x80]
jmp 0x140016509
sub r15, rcx
mov dword [rbp - 0xc], r14d
mov qword [rbp - 0x30], rcx
sar r15, 1
add dword [r9], r15d
mov r15, rcx
jmp 0x140016524
cmp edi, 0x5c
jne 0x140016543
cmp word [rdx + 2], 0x45
lea rax, [rdx + 2]
jne 0x140016543
mov r10d, r11d
mov dword [rbp - 0x70], r11d
mov rdi, rax
jmp 0x1400165d2
movzx r8d, word [rdx + 2]
cmp r8w, 0x3d
ja 0x140016543
movzx eax, r8w
movabs rcx, 0x2400400000000000
bt rcx, rax
jae 0x140016543
mov rcx, qword [rbp - 0x80]
lea rdx, [rbp + 0x68]
call fcn.140082e40
test eax, eax
je 0x140096834
mov rax, qword [rbp + 0x170]
mov esi, r11d
mov rdi, qword [rax + 0x10]
cmp r8w, 0x3a
jne 0x140098ffc
mov rcx, qword [rbp - 0x80]
add rcx, 4
mov qword [rbp - 0x78], rcx
mov qword [rbp - 0x80], rcx
cmp word [rcx], 0x5e
jne 0x14009638f
add rcx, 2
mov esi, r14d
mov dword [rbp - 0x54], r14d
mov qword [rbp - 0x80], rcx
mov qword [rbp - 0x78], rcx
mov r14, qword [rbp + 0x68]
mov rdx, r14
sub rdx, rcx
sar rdx, 1
call fcn.140082dbc
mov edx, eax
test eax, eax
js 0x140098fda
mov eax, dword [rbp - 0x58]
test al, 1
je 0x1400963c1
cmp edx, 2
mov r11d, 0
cmovle edx, r11d
jmp 0x1400963c4
xor r11d, r11d
bt eax, 0x1d
jae 0x1400963ff
mov eax, esi
neg eax
sbb rcx, rcx
and ecx, 0xe
lea eax, [rcx + rdx]
movsxd rcx, eax
lea rax, [0x140000000]
mov rax, qword [rax + rcx*8 + 0xd96d0]
test rax, rax
je 0x1400963ff
lea rcx, [r14 + 2]
mov qword [rbp + 0x58], rcx
lea rcx, [rax - 2]
jmp 0x1400165bc
lea eax, [rdx + rdx*2]
lea r12, [0x140000000]
lea rcx, [rbp + 0xa0]
movsxd rbx, eax
mov r8d, reloc.OLEAUT32.dll_RegisterActiveObject
movsxd rdx, dword [r12 + rbx*4 + 0xc9650]
add rdx, rdi
call fcn.140025590
mov r10d, dword [r12 + rbx*4 + 0xc9654]
mov r9d, dword [r12 + rbx*4 + 0xc9658]
xor r11d, r11d
test r10d, r10d
js 0x140096483
mov r8d, r11d
test r9d, r9d
js 0x140096466
lea eax, [r10 + r8]
mov edx, r8d
inc r8d
movzx eax, byte [rax + rdi]
or byte [rbp + rdx + 0xa0], al
cmp r8d, 0x20
jb 0x140096449
jmp 0x140096483
lea eax, [r10 + r8]
mov edx, r8d
inc r8d
movzx eax, byte [rax + rdi]
not al
and byte [rbp + rdx + 0xa0], al
cmp r8d, 0x20
jb 0x140096466
test r9d, r9d
jns 0x14009648b
neg r9d
cmp r9d, 1
jne 0x14009649a
and byte [rbp + 0xa1], 0xc3
jmp 0x1400964a7
cmp r9d, 2
jne 0x1400964a7
and byte [rbp + 0xab], 0x7f
mov rcx, r11
mov edx, reloc.OLEAUT32.dll_RegisterActiveObject
test esi, esi
je 0x1400964cc
movzx eax, byte [rbp + rcx + 0xa0]
lea rcx, [rcx + 1]
not al
or byte [rbp + rcx + 0x2f], al
dec rdx
jne 0x1400964b3
jmp 0x1400964e1
movzx eax, byte [rbp + rcx + 0xa0]
lea rcx, [rcx + 1]
or byte [rbp + rcx + 0x2f], al
dec rdx
jne 0x1400964cc
mov eax, 2
lea rcx, [r14 + 2]
lea r13d, [rax - 1]
mov r12d, eax
jmp 0x1400165bc
cmp ebx, 5
jne 0x140096503
lea edi, [rbx + 3]
jmp 0x140016ebe
cmp ebx, 0xc
je 0x14009902a
cmp ebx, 0x1a
jne 0x140096552
mov rcx, qword [rbp - 0x78]
mov qword [rbp - 0x80], rcx
cmp word [rcx + 2], 0x5c
jne 0x140096534
cmp word [rcx + 4], 0x45
lea rax, [rcx + 4]
jne 0x140096534
mov qword [rbp - 0x80], rax
jmp 0x1400965d3
mov rcx, qword [rbp - 0x38]
mov rdi, qword [rbp - 0x80]
mov r9, qword [rbp + 0x178]
mov r10d, r14d
mov dword [rbp - 0x70], r14d
xor r11d, r11d
jmp 0x1400165d5
cmp ebx, 0x19
je 0x140096610
mov r9, qword [rbp + 0x170]
lea eax, [rbx - 6]
inc r13d
mov rdx, qword [r9 + 0x10]
add r12d, 2
cmp eax, 0x1c
ja case.0x14009658d.12
lea r8, [0x140000000]
cdqe
mov ecx, dword [r8 + rax*4 + 0x993ae]
add rcx, r8
jmp rcx
mov rcx, qword [rbp - 0x78]
mov rax, rbx
mov qword [rbp + 0x58], rcx
mov rcx, qword [r8 + rbx*8 + 0xd95b8]
sub rcx, 2
dec r13d
jmp 0x1400965cf
lea rax, [0x1400c9bd0]
lea rdx, [rbp - 0x30]
lea rcx, [rbp + 0x30]
mov r8d, esi
mov qword [rsp + 0x20], rax
call fcn.140082b08
mov rcx, qword [rbp - 0x78]
mov r15, qword [rbp - 0x30]
mov qword [rbp - 0x80], rcx
mov rcx, qword [rbp - 0x38]
mov rdi, qword [rbp - 0x80]
mov r9, qword [rbp + 0x178]
mov r10d, dword [rbp - 0x70]
xor r11d, r11d
jmp 0x1400165d5
lea rax, [rbp + 0x30]
lea rcx, [rbp + 0x30]
mov r8d, reloc.OLEAUT32.dll_RegisterActiveObject
sub rdx, rax
movzx eax, byte [rdx + rcx + 0x40]
lea rcx, [rcx + 1]
or byte [rcx - 1], al
dec r8
jne 0x1400965ff
mov rcx, qword [rbp - 0x78]
jmp 0x1400965cf
lea rax, [rbp + 0x30]
mov dword [rbp - 0x54], r14d
lea rcx, [rbp + 0x30]
sub rdx, rax
mov r8d, reloc.OLEAUT32.dll_RegisterActiveObject
movzx eax, byte [rcx + rdx + 0x40]
lea rcx, [rcx + 1]
not al
or byte [rcx - 1], al
dec r8
jne 0x14009662b
mov rcx, qword [rbp - 0x78]
jmp 0x1400965cf
lea rax, [rbp + 0x30]
lea rcx, [rbp + 0x30]
mov r8d, reloc.OLEAUT32.dll_RegisterActiveObject
sub rdx, rax
movzx eax, byte [rdx + rcx + 0xa0]
lea rcx, [rcx + 1]
or byte [rcx - 1], al
dec r8
jne 0x140096655
mov rcx, qword [rbp - 0x78]
jmp 0x1400965cf
lea rax, [rbp + 0x30]
mov dword [rbp - 0x54], r14d
lea rcx, [rbp + 0x30]
sub rdx, rax
mov r8d, reloc.OLEAUT32.dll_RegisterActiveObject
movzx eax, byte [rcx + rdx + 0xa0]
lea rcx, [rcx + 1]
not al
or byte [rcx - 1], al
dec r8
jne 0x140096687
mov rcx, qword [rbp - 0x78]
jmp 0x1400965cf
movzx eax, byte [rdx]
lea rcx, [rbp + 0x32]
mov r8d, RegisterActiveObject
or byte [rbp + 0x30], al
movzx eax, byte [rdx + 1]
and al, 0xf7
or byte [rbp + 0x31], al
lea rax, [rbp + 0x32]
sub rdx, rax
movzx eax, byte [rdx + rcx + 2]
lea rcx, [rcx + 1]
or byte [rcx - 1], al
dec r8
jne 0x1400966c6
mov rcx, qword [rbp - 0x78]
jmp 0x1400965cf
lea rax, [rbp + 0x30]
mov dword [rbp - 0x54], r14d
lea rcx, [rbp + 0x30]
sub rdx, rax
mov r8d, reloc.OLEAUT32.dll_RegisterActiveObject
movzx eax, byte [rcx + rdx]
lea rcx, [rcx + 1]
not al
or byte [rcx - 1], al
dec r8
jne 0x1400966f5
or byte [rbp + 0x31], 8
mov rcx, qword [rbp - 0x78]
jmp 0x1400965cf
lea rax, [0x1400c9bd0]
jmp 0x140096724
lea rax, str._n_v_f_r
lea rdx, [rbp - 0x30]
lea rcx, [rbp + 0x30]
mov r8d, esi
mov dword [rsp + 0x28], 0xffffffff
mov qword [rsp + 0x20], rax
call fcn.140082a64
mov rcx, qword [rbp - 0x78]
mov r15, qword [rbp - 0x30]
jmp 0x1400965cf
lea rax, str._n_v_f_r
lea rdx, [rbp - 0x30]
lea rcx, [rbp + 0x30]
mov r8d, esi
mov qword [rsp + 0x20], rax
call fcn.140082b08
mov rcx, qword [rbp - 0x78]
mov r15, qword [rbp - 0x30]
jmp 0x1400965cf
xor eax, eax
lea r9, [rbp - 0x24]
lea r8, [rbp - 0x30]
lea rdx, [rbp + 0x90]
lea rcx, [rbp - 0x78]
mov qword [rsp + 0x20], rdi
mov dword [rbp - 0x30], eax
mov dword [rbp - 0x24], eax
call fcn.140083d44
test eax, eax
je 0x140016f78
mov r9, qword [rbp + 0x178]
mov r10d, dword [rbp - 0x70]
xor r11d, r11d
cmp ebx, 0x10
mov eax, r11d
mov ecx, r11d
sete al
cmp eax, dword [rbp + 0x90]
movzx eax, word [rbp - 0x30]
sete cl
add r15, 6
add ecx, 3
mov qword [rbp - 0x30], r15
dec r13d
mov word [r15 - 6], cx
mov word [r15 - 4], ax
movzx eax, word [rbp - 0x24]
mov word [r15 - 2], ax
mov rcx, qword [rbp - 0x78]
mov qword [rbp - 0x80], rcx
mov rcx, qword [rbp - 0x38]
mov rdi, qword [rbp - 0x80]
jmp 0x1400165d5
mov r15d, dword [rbp - 0x58]
test r15b, 0x40
jne 0x14009901f
mov rdi, qword [rbp - 0x78]
mov r10d, dword [rbp - 0x70]
mov esi, dword [rbp - 0x5c]
mov qword [rbp - 0x80], rdi
movzx edi, word [rdi]
mov rdx, qword [rbp - 0x80]
dec r13d
sub r12d, 2
xor r11d, r11d
jmp 0x14001654e
mov rdx, qword [rbp - 0x80]
jmp 0x140016543
cmp word [rdx + 4], 0x45
lea rax, [rdx + 4]
jne 0x140096859
mov qword [rbp - 0x78], rax
cmp word [rax + 2], 0x5c
mov r10d, r11d
mov rdx, rax
je 0x14009683d
mov dword [rbp - 0x70], r10d
mov qword [rbp - 0x80], rdx
jmp 0x140016559
or dword [r9 + 0x80], 0x800
jmp 0x14001656e
cmp word [rdx + 2], 0x45
jne 0x140096894
add rdx, 4
mov qword [rbp - 0x78], rdx
mov qword [rbp - 0x80], rdx
cmp word [rdx], 0x5c
je 0x140096876
jmp 0x140016cad
cmp word [rdx], 0x5c
jne 0x140016cad
cmp word [rdx + 2], 0x51
jne 0x140016cad
add rdx, 4
mov qword [rbp - 0x78], rdx
mov qword [rbp - 0x80], rdx
cmp word [rdx], 0x5c
jne 0x1400968d9
cmp word [rdx + 2], 0x45
jne 0x1400968d9
add rdx, 4
mov qword [rbp - 0x78], rdx
mov qword [rbp - 0x80], rdx
cmp word [rdx], 0x5c
je 0x14009689e
jmp 0x140016cad
mov r10d, r14d
mov dword [rbp - 0x70], r14d
jmp 0x140016cad
mov rax, qword [rbp - 0x80]
and edx, 0x3ff
movzx ecx, word [rax + 2]
add rax, 2
mov qword [rbp - 0x80], rax
mov r11, qword [rbp - 0x80]
mov eax, edx
and ecx, 0x3ff
shl eax, 0xa
mov qword [rbp - 0x78], r11
mov edx, ecx
or edx, eax
add edx, 0x10000
mov dword [rbp - 0x24], edx
jmp 0x140016cec
mov r9d, dword [r9 + 0x64]
mov dword [rsp + 0x28], r14d
mov r14, qword [rbp + 0x138]
lea rdx, [rbp - 0x24]
lea rcx, [rbp - 0x78]
mov r8, r14
mov dword [rsp + 0x20], r15d
call fcn.14001739c
cmp dword [r14], 0
jne 0x140016f78
mov r9, qword [rbp + 0x170]
mov r10d, dword [rbp - 0x70]
test eax, eax
je 0x140096977
cmp eax, 5
jne 0x140016f18
mov r11, qword [rbp - 0x78]
lea edx, [rax + 3]
mov qword [rbp - 0x80], r11
jmp 0x140016d01
mov rdx, qword [rbp - 0x78]
mov qword [rbp - 0x80], rdx
mov edx, dword [rbp - 0x24]
mov r11, qword [rbp - 0x80]
jmp 0x140016d01
or dword [r9 + 0x80], 0x800
jmp 0x140016d27
mov rax, qword [rbp + 0x58]
test rax, rax
je 0x1400969bf
lea rdi, [rax + 2]
mov qword [rbp + 0x58], r11
mov qword [rbp - 0x80], rdi
mov qword [rbp - 0x78], rdi
movzx edi, word [rdi]
test edi, edi
jne 0x1400165ec
mov r11, qword [rbp - 0x80]
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov dword [rax], 6
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
mov eax, dword [rbp - 0x20]
mov r8d, dword [rbp - 0x28]
add rbx, 2
cmp dword [rbp - 0x4c], 0
mov qword [rbp - 0x78], rbx
mov dword [rbp - 0xc], eax
mov dword [rbp - 0x24], r8d
je 0x140096af0
mov eax, dword [rbp - 0x50]
mov ecx, 0xffffffff
cmp eax, 0xfffffffe
cmove eax, ecx
mov ecx, dword [rbp - 0x1c]
mov dword [rbp + 4], ecx
mov dword [rbp - 0x50], eax
mov dword [rbp - 0x10], eax
test esi, esi
je 0x140096a8e
test r15b, 1
je 0x140096a92
lea r8, [0x140000000]
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
mov ecx, eax
and eax, 0x7f
sub eax, edx
sar ecx, 7
movsxd rcx, ecx
cdqe
movzx edx, byte [rcx + r8 + 0xbf430]
shl rdx, 7
add rdx, rax
movzx eax, word [r8 + rdx*2 + 0xb1590]
movzx ecx, byte [r8 + rax*8 + 0xbe093]
test ecx, ecx
je 0x140096a8e
mov r14, qword [rbp - 0x68]
mov r12, qword [rbp - 0x40]
mov dword [r14], 0x9000f
mov word [r14 + 4], cx
mov r11, qword [rbp - 0x78]
add r14, 6
mov qword [rbp - 0x68], r14
jmp 0x14001628c
test r15b, 1
mov r14, qword [rbp - 0x68]
mov eax, 0
setne al
add eax, 0x1f
add r14, 2
mov word [r14 - 2], ax
test esi, esi
je 0x140096ad7
cmp edi, 0xffff
jbe 0x140096ad7
mov rdx, r14
mov ecx, edi
call fcn.1400843bc
mov r11, qword [rbp - 0x78]
mov r12, qword [rbp - 0x40]
mov edx, eax
lea r14, [r14 + rdx*2]
mov qword [rbp - 0x68], r14
jmp 0x14001628c
mov r12, qword [rbp - 0x40]
mov word [r14], di
mov r11, qword [rbp - 0x78]
add r14, 2
mov qword [rbp - 0x68], r14
jmp 0x14001628c
test esi, esi
je 0x140096b16
cmp edi, 0xffff
jbe 0x140096b16
lea rdx, [rbp + 0x78]
mov ecx, edi
call fcn.1400843bc
movzx edi, word [rbp + 0x78]
mov r14, qword [rbp - 0x68]
mov esi, eax
jmp 0x140016175
mov r14, qword [rbp - 0x68]
mov word [rbp + 0x78], di
mov esi, 1
jmp 0x140016175
test ebx, ebx
je 0x140096b36
bt esi, 0x1d
jae 0x140016641
mov r14, qword [rbp - 0x68]
mov word [r15], r11w
add r15, 2
cmp dword [rbp - 0x4c], 0
mov eax, WSAGetLastError
mov word [r14], ax
mov eax, r11d
setne al
mov word [r14 + 4], ax
test r13d, r13d
jle 0x140096ba2
add r14, 6
or ax, 2
mov r8, r15
mov word [r14 - 2], ax
sub r8, r14
lea rcx, [r14 + 0x20]
and r8, 0xfffffffffffffffe
mov rdx, r14
call fcn.140025590
lea rdx, [rbp + 0x30]
mov r8d, reloc.OLEAUT32.dll_RegisterActiveObject
mov rcx, r14
call fcn.140025590
mov r10d, dword [rbp - 0x70]
lea r14, [r15 + 0x20]
mov qword [rbp - 0x68], r14
jmp 0x140096ba9
mov r14, r15
mov qword [rbp - 0x68], r15
mov r12, qword [rbp - 0x40]
mov r15d, dword [rbp - 0x58]
mov rax, r14
sub rax, r12
sar rax, 1
mov word [r12 + 2], ax
mov r11, qword [rbp - 0x78]
jmp 0x14001628c
lea rcx, [rbp + 0x30]
mov edx, reloc.OLEAUT32.dll_RegisterActiveObject
not byte [rcx]
lea rcx, [rcx + 1]
dec rdx
jne 0x140096bd2
jmp 0x140016666
test edi, edi
je case.0x1400160a8.47
mov rcx, qword [rbp - 0x80]
mov r9, qword [rbp + 0x138]
lea r8, [rbp]
lea rdx, [rbp - 0x48]
add rcx, 2
call fcn.140083ef4
cmp dword [r9], 0
mov r11, rax
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x78], rax
jne 0x14009939c
mov esi, dword [rbp]
mov edx, dword [rbp - 0x48]
xor r8d, r8d
mov dword [rbp - 0x54], esi
lea edi, [r8 + 1]
jmp 0x1400167ea
or eax, 0xffffffff
mov edi, 1
xor r8d, r8d
mov edx, edi
mov esi, eax
mov dword [rbp - 0x54], eax
mov dword [rbp], eax
jmp 0x1400167e7
mov r13d, r8d
mov r10d, edi
mov dword [rbp - 0x60], edi
mov qword [rbp - 0x80], rcx
mov qword [rbp - 0x78], rcx
mov r11, rcx
jmp 0x14001685b
mov edi, 4
lea rcx, [r12 + 4]
mov rdx, r12
mov r8d, edi
call fcn.140025590
mov rcx, qword [rbp + 0x170]
add r14, 8
cmp qword [rbp + 0x178], 0
mov dword [r12], 0x4007b
mov dword [r12 + 8], 0x40072
mov qword [rbp - 0x68], r14
mov dword [rbp + 0xc], 6
jne 0x140096d00
mov rax, qword [rcx + 0x20]
mov r8, qword [rcx + 0x48]
add rax, 2
cmp r8, rax
jb 0x140096d00
mov rax, qword [rbp + 0x170]
movzx edx, word [r8 - 2]
mov rcx, r12
sub rcx, qword [rax + 0x28]
add rcx, 2
sar rcx, 1
cmp rdx, rcx
jne 0x140096cfd
mov r10d, dword [rbp - 0x60]
add dx, 2
mov word [r8 - 2], dx
mov rax, qword [rbp - 0x78]
mov r9, qword [rbp - 0x18]
mov edx, dword [rbp - 0x48]
mov qword [rbp - 0x80], rax
mov r11, rax
jmp 0x140016867
mov rcx, rax
mov rax, qword [rbp - 0x78]
mov r9, qword [rbp - 0x18]
mov edx, dword [rbp - 0x48]
mov r10d, dword [rbp - 0x60]
mov qword [rbp - 0x80], rax
mov r11, rax
jmp 0x14001686e
mov rcx, qword [rbp - 0x78]
mov eax, 1
xor edx, edx
mov qword [rbp - 0x80], rcx
mov r13d, edx
mov r10d, eax
mov dword [rbp - 0x60], eax
jmp 0x1400168cd
mov eax, 0x8b
cmp word [rdi + 4], ax
je 0x140016f4f
jmp 0x140016d62
test edx, edx
jg 0x140016f4f
cmp esi, 1
mov eax, 1
cmova esi, eax
mov dword [rbp - 0x54], esi
mov dword [rbp], esi
jmp 0x140016d72
mov eax, 0x9b
mov word [rdi], ax
mov rax, qword [rbp - 0x78]
mov qword [rbp - 0x80], rax
jmp 0x140016974
mov rbx, qword [rbp - 0x68]
mov word [rbx], dx
mov edx, 3
call fcn.1400179f0
lea eax, [r15 + r15]
lea rcx, [rdi + 6]
movsxd r8, eax
mov rdx, rdi
call fcn.140025590
add rbx, 6
mov eax, 0x8c
add eax, r13d
lea r12, [rdi + 4]
add rdi, 6
mov word [rdi - 6], ax
mov dword [rdi - 4], 0x7d
mov qword [rbp - 0x40], rdi
mov rcx, rdi
mov qword [rbp - 0x68], rbx
jmp 0x140016de5
mov r8, qword [rbp + 0x178]
cmp edx, 1
jle 0x140096f7a
test r8, r8
je 0x140096e36
mov eax, dword [rbp + 0xc]
lea ecx, [rdx - 1]
mov edx, ecx
movd xmm1, ecx
movd xmm0, eax
imul edx, eax
cvtdq2pd xmm1, xmm1
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm0
comisd xmm1, xmmword [0x1400c9fb8]
ja 0x140098f8b
mov ecx, dword [r8]
mov ebx, 0x7fffffeb
mov eax, ebx
sub eax, ecx
cmp eax, edx
jl 0x140098f8b
lea eax, [rcx + rdx]
mov edx, dword [rbp - 0x48]
mov dword [r8], eax
jmp 0x140096f7f
cmp dword [rbp + 0x1c], r12d
je 0x140096e51
test ebx, ebx
jns 0x140096e51
mov eax, dword [rbp - 0x1c]
mov dword [rbp - 0x20], eax
mov eax, dword [rbp - 0x50]
mov dword [rbp - 0x28], eax
mov eax, 1
mov edi, eax
cmp edx, 1
jle 0x140096f7a
mov rcx, qword [rbp - 0x68]
mov r11, qword [rbp + 0x170]
lea eax, [r15 + r15]
movsxd rsi, eax
mov rdx, qword [rbp - 0x40]
mov rbx, qword [r11 + 0x48]
mov r8, rsi
call fcn.140025590
mov r11, qword [rbp + 0x170]
mov r8, qword [rbp - 8]
mov rdx, qword [r11 + 0x20]
movsxd rcx, dword [r11 + 0x60]
mov rax, rbx
sub rax, r8
add rcx, 0xffffffffffffff9c
sar rax, 1
imul rax, rax, 0xfffffffffffffffe
add rax, rdx
lea rcx, [rax + rcx*2]
cmp qword [r11 + 0x48], rcx
jbe 0x140096f16
sub r8, rdx
sub rbx, rdx
mov rcx, r11
sar r8, 1
sar rbx, 1
mov qword [rbp - 8], r8
call fcn.140083334
mov rcx, qword [rbp + 0x138]
mov dword [rcx], eax
test eax, eax
jne 0x140016f78
mov r11, qword [rbp + 0x170]
mov rax, qword [rbp - 8]
mov rdx, qword [r11 + 0x20]
movsxd rcx, dword [r11 + 0x60]
cdqe
lea r8, [rdx + rax*2]
movsxd rax, ebx
add rcx, 0xffffffffffffff9c
lea rbx, [rdx + rax*2]
mov rax, rbx
sub rax, r8
sar rax, 1
imul rax, rax, 0xfffffffffffffffe
add rax, rdx
lea rcx, [rax + rcx*2]
cmp qword [r11 + 0x48], rcx
ja 0x140096eaf
cmp r8, rbx
jae 0x140096f39
mov rax, qword [r11 + 0x48]
movzx ecx, r15w
add r8, 2
add cx, word [r8 - 2]
mov word [rax], cx
add qword [r11 + 0x48], 2
cmp r8, rbx
jb 0x140096f1b
mov rcx, qword [rbp - 0x68]
mov edx, dword [rbp - 0x48]
movsxd rax, r15d
lea rcx, [rcx + rax*2]
inc edi
mov qword [rbp - 8], rbx
mov qword [rbp - 0x68], rcx
cmp edi, edx
jl 0x140096e6e
mov rax, qword [rbp - 0x78]
mov r9, qword [rbp - 0x18]
mov esi, dword [rbp - 0x54]
mov r10d, dword [rbp - 0x60]
mov r8, qword [rbp + 0x178]
mov qword [rbp - 0x80], rax
mov ebx, 0x7fffffeb
jmp 0x140096f86
mov ebx, 0x7fffffeb
mov r11, qword [rbp + 0x170]
mov rcx, qword [rbp - 0x40]
test esi, esi
jle 0x140016e12
sub esi, edx
jmp 0x140016e0d
mov eax, dword [rbp + 0xc]
movd xmm0, esi
add eax, 5
mov ecx, eax
movd xmm1, eax
imul ecx, esi
cvtdq2pd xmm0, xmm0
sub ecx, 4
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm0
comisd xmm1, xmmword [0x1400c9fb8]
ja 0x14009905e
mov edx, dword [r8]
mov eax, ebx
sub eax, edx
cmp eax, ecx
jl 0x14009905e
lea eax, [rcx + rdx]
mov dword [r8], eax
jmp 0x140016e33
mov r14, qword [rbp - 0x68]
mov eax, 0x8c
add r13w, ax
lea eax, [r15 + r15]
movsxd rsi, eax
mov qword [rbp - 0x80], rsi
mov rbx, qword [r11 + 0x48]
mov word [r14], r13w
add r14, 2
test edi, edi
je 0x140097034
mov eax, 0x7d
mov word [r14], ax
test r12, r12
jne 0x14009701d
xor eax, eax
jmp 0x140097027
lea rax, [r14 + 2]
sub rax, r12
sar rax, 1
lea r12, [r14 + 2]
mov word [r14 + 2], ax
add r14, 4
mov rdx, rcx
mov r8, rsi
mov rcx, r14
call fcn.140025590
mov r11, qword [rbp + 0x170]
mov r8, qword [rbp - 8]
mov rdx, qword [r11 + 0x20]
movsxd rcx, dword [r11 + 0x60]
mov rax, rbx
sub rax, r8
add rcx, 0xffffffffffffff9c
sar rax, 1
imul rax, rax, 0xfffffffffffffffe
add rax, rdx
lea rcx, [rax + rcx*2]
cmp qword [r11 + 0x48], rcx
jbe 0x1400970da
sub r8, rdx
sub rbx, rdx
mov rcx, r11
sar r8, 1
sar rbx, 1
mov qword [rbp - 8], r8
call fcn.140083334
mov rcx, qword [rbp + 0x138]
mov dword [rcx], eax
test eax, eax
jne 0x140016f78
mov r11, qword [rbp + 0x170]
mov rax, qword [rbp - 8]
mov rdx, qword [r11 + 0x20]
movsxd rcx, dword [r11 + 0x60]
cdqe
lea r8, [rdx + rax*2]
movsxd rax, ebx
add rcx, 0xffffffffffffff9c
lea rbx, [rdx + rax*2]
mov rax, rbx
sub rax, r8
sar rax, 1
imul rax, rax, 0xfffffffffffffffe
add rax, rdx
lea rcx, [rax + rcx*2]
cmp qword [r11 + 0x48], rcx
ja 0x140097073
movsxd rdx, edi
cmp r8, rbx
jae 0x14009711b
mov esi, 1
mov edi, 3
mov eax, esi
test rdx, rdx
movzx ecx, r15w
cmovne eax, edi
add cx, word [r8]
add r8, 2
add cx, ax
mov rax, qword [r11 + 0x48]
mov word [rax], cx
add qword [r11 + 0x48], 2
cmp r8, rbx
jb 0x1400970ec
mov edi, dword [rbp - 0x30]
mov rsi, qword [rbp - 0x80]
mov rcx, qword [rbp - 0x40]
movsxd rax, r15d
dec edi
lea r14, [r14 + rax*2]
mov qword [rbp - 8], rbx
mov dword [rbp - 0x30], edi
mov qword [rbp - 0x68], r14
jns 0x140096ffb
mov rax, qword [rbp - 0x78]
mov r9, qword [rbp - 0x18]
mov r10d, dword [rbp - 0x60]
mov qword [rbp - 0x80], rax
jmp 0x140016e37
mov rcx, r14
mov rdx, r14
sub rcx, r12
sar rcx, 1
inc ecx
movsxd rax, ecx
add rax, rax
sub rdx, rax
movzx eax, word [rdx + 2]
test eax, eax
jne 0x140097172
mov r12, r8
jmp 0x140097179
neg rax
lea r12, [r12 + rax*2]
mov word [r14], r15w
mov word [r14 + 2], cx
add r14, 4
mov word [rdx + 2], cx
test r12, r12
jne 0x14009714e
mov qword [rbp - 0x68], r14
jmp 0x140016c80
mov r15, qword [rbp - 0x68]
movzx eax, word [r15 - 2]
lea rdi, [r15 - 4]
add rax, rax
sub rdi, rax
movzx ecx, word [rdi]
lea eax, [rcx - 0x7b]
cmp ax, 1
ja 0x1400971fe
test r10d, r10d
je 0x1400971fe
mov eax, 0x7d
mov word [rdi], ax
mov r12d, dword [rbp - 0x5c]
test r8, r8
jne 0x140097226
mov rbx, rdi
lea rdx, [r15 - 4]
mov r9, r11
mov r8d, r12d
mov rcx, rbx
call fcn.140082f4c
mov r11, qword [rbp + 0x170]
test eax, eax
jne 0x14009721b
movzx eax, word [rbx + 2]
cmp word [rbx + rax*2], 0x71
lea rbx, [rbx + rax*2]
jne 0x14009721f
jmp 0x1400971d0
sub cx, 0x7b
cmp cx, 1
ja 0x1400971c4
mov r14, qword [rbp - 0x68]
add r13w, 0x73
mov word [r15 - 4], r13w
jmp 0x140016c77
add word [rdi], 5
mov r10d, dword [rbp - 0x60]
mov edx, dword [rbp - 0x48]
test r10d, r10d
je 0x140097301
movzx eax, word [rdi]
mov ecx, 0x81
cmp ax, cx
je 0x140097260
mov ecx, 0x86
cmp ax, cx
je 0x140097260
mov rsi, qword [rbp - 8]
inc ax
mov word [rdi], ax
mov eax, 0x75
lea r12d, [rax - 0x73]
mov word [r15 - 4], ax
jmp 0x1400972ce
mov rsi, qword [rbp - 8]
mov r8d, r12d
xor eax, eax
mov rbx, r15
mov r12d, 2
mov r9, r11
sub rbx, rdi
mov rcx, rdi
mov edx, r12d
mov qword [rsp + 0x20], rsi
mov word [r15], ax
sar rbx, 1
call fcn.1400179f0
lea eax, [rbx + rbx]
lea rcx, [rdi + 4]
movsxd r8, eax
mov rdx, rdi
call fcn.140025590
mov edx, dword [rbp - 0x48]
mov r10d, dword [rbp - 0x60]
add ebx, r12d
mov eax, 0x7e
add r15, 8
mov word [rdi], ax
mov eax, 0x75
mov qword [rbp - 0x68], r15
mov word [r15 - 4], ax
mov word [r15 - 2], bx
mov word [rdi + 2], bx
test r14, r14
je 0x1400972dc
mov eax, VariantChangeTypeEx
mov word [r14], ax
mov rax, qword [rbp - 0x78]
mov r14, qword [rbp - 0x68]
mov qword [rbp - 0x80], rax
cmp edx, 2
jl 0x140016974
mov r9, qword [rbp - 0x18]
xor r8d, r8d
lea r15d, [r8 + 0x72]
jmp 0x14001696b
add r13w, 0x73
mov word [r15 - 4], r13w
mov rax, qword [rbp - 0x78]
mov qword [rbp - 0x80], rax
jmp 0x140016f4f
mov eax, reloc.WSOCK32.dll___WSAFDIsSet
cmp r8w, ax
je 0x140016974
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov dword [rax], reloc.WSOCK32.dll_inet_ntoa
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
mov r14, r12
mov qword [rbp - 0x68], r12
jmp 0x140016974
cmp edx, 1
jne 0x140097365
cmp esi, 0xffffffff
jne 0x140097365
add r13w, 0x64
jmp 0x140016c6b
add r13w, 0x68
cmp esi, 0xffffffff
mov r8d, 0
cmove esi, r8d
mov word [r14], r13w
mov word [r14 + 2], dx
mov word [r14 + 4], si
add r14, 6
mov dword [rbp], esi
mov qword [rbp - 0x68], r14
jmp 0x140016c7a
movzx ecx, r8w
sub ecx, 0x1e
je 0x1400973ba
dec ecx
je 0x1400973b3
dec ecx
je 0x1400973ac
xor eax, eax
mov ebx, eax
jmp 0x1400973bf
mov ebx, reloc.OLEAUT32.dll_SafeArrayRedim
jmp 0x1400973bf
mov ebx, 0x1a
jmp 0x1400973bf
mov ebx, reloc.WSOCK32.dll_listen
mov r11d, dword [rbp - 0x5c]
test r11d, r11d
je 0x14009742a
movzx eax, word [r14 - 2]
lea rdx, [r14 - 2]
mov ecx, 0xfc00
and ax, cx
mov r9d, 0xdc00
cmp ax, r9w
jne 0x140097427
movzx eax, word [rdx]
and ax, cx
cmp ax, r9w
jne 0x1400973f5
sub rdx, 2
mov rdi, r14
lea rcx, [rbp + 0xc0]
sub rdi, rdx
sar rdi, 1
lea r8d, [rdi + rdi]
call fcn.140025590
mov rcx, qword [rbp - 0x78]
mov edx, dword [rbp - 0x48]
mov r10d, dword [rbp - 0x60]
mov r11d, dword [rbp - 0x5c]
mov qword [rbp - 0x80], rcx
bts edi, 0x1c
jmp 0x14009745b
mov edx, dword [rbp - 0x48]
movzx edi, word [r14 - 2]
cmp r8w, 0x1e
ja 0x140097457
mov rax, qword [rbp + 0x170]
cmp edx, 1
jle 0x140097451
mov ecx, dword [rax + 0x84]
mov dword [rbp - 0x20], edi
or ecx, dword [rbp + 8]
mov dword [rbp - 0x28], ecx
mov rcx, qword [rbp - 0x80]
jmp 0x140097462
mov rcx, qword [rbp - 0x80]
mov rax, qword [rbp + 0x170]
test r10d, r10d
jne 0x1400168d4
test esi, esi
jns 0x1400168d4
lea r8, [rcx + 2]
mov r9d, r15d
mov edx, r11d
mov rcx, r12
mov qword [rsp + 0x20], rax
call fcn.140017624
test eax, eax
je 0x1400168c1
mov rsi, qword [rbp - 0x78]
xor eax, eax
mov r13d, eax
mov eax, 1
mov qword [rbp - 0x80], rsi
mov r10d, eax
mov dword [rbp - 0x60], eax
jmp 0x1400168cd
movzx esi, word [r12 + 2]
movzx r14d, word [r12 + 4]
jmp 0x1400168ef
cmp r15d, 1
jne 0x1400974d5
add r13w, 0x25
mov word [r12], r13w
jmp 0x140016928
add r13w, 0x27
add rbx, 2
mov word [r12], r13w
mov word [rbx - 2], r15w
jmp 0x140016928
cmp edx, 1
jne 0x140097538
cmp r15d, 0xffffffff
jne 0x14009750c
add r13w, 0x23
lea rbx, [r12 + 2]
mov word [r12], r13w
jmp 0x140016928
mov qword [rbp - 0x68], rax
cmp r15d, 1
je 0x140016f4f
lea rbx, [rax + 2]
add r13w, 0x27
dec r15w
mov word [rax], r13w
mov word [rbx], r15w
add rbx, 2
jmp 0x140016928
add bx, 0x29
mov word [r12], bx
lea rbx, [r12 + 2]
mov word [rbx], dx
add rbx, 2
test r15d, r15d
jns 0x1400975c3
test r11d, r11d
je 0x140097599
bt edi, 0x1c
jae 0x140097599
mov eax, edi
lea rdx, [rbp + 0xc0]
mov rcx, rbx
and eax, 7
lea r8d, [rax + rax]
call fcn.140025590
mov r10d, dword [rbp - 0x60]
mov r11d, dword [rbp - 0x5c]
mov eax, edi
add r13w, 0x21
and eax, 7
lea rbx, [rbx + rax*2]
add rbx, 2
mov word [rbx - 2], r13w
jmp 0x140016928
mov word [rbx], di
add rbx, 2
test esi, esi
js 0x1400975b0
mov word [rbx], si
mov word [rbx + 2], r14w
add rbx, 4
add r13w, 0x21
add rbx, 2
mov word [rbx - 2], r13w
jmp 0x140016928
cmp r15d, edx
je 0x140016928
test r11d, r11d
je 0x140097605
bt edi, 0x1c
jae 0x140097605
mov eax, edi
lea rdx, [rbp + 0xc0]
mov rcx, rbx
and eax, 7
lea r8d, [rax + rax]
call fcn.140025590
mov edx, dword [rbp - 0x48]
mov r10d, dword [rbp - 0x60]
mov r11d, dword [rbp - 0x5c]
mov eax, edi
and eax, 7
lea rbx, [rbx + rax*2]
jmp 0x14009760c
mov word [rbx], di
add rbx, 2
test esi, esi
js 0x14009761c
mov word [rbx], si
mov word [rbx + 2], r14w
add rbx, 4
sub r15d, edx
mov dword [rbp], r15d
cmp r15d, 1
jne 0x14009763c
add r13w, 0x25
add rbx, 2
mov word [rbx - 2], r13w
jmp 0x140016928
add r13w, 0x27
add rbx, 4
mov word [rbx - 4], r13w
mov word [rbx - 2], r15w
jmp 0x140016928
mov eax, edi
lea rdx, [rbp + 0xc0]
mov rcx, rbx
and eax, 7
lea r8d, [rax + rax]
call fcn.140025590
mov r10d, dword [rbp - 0x60]
mov eax, edi
and eax, 7
lea rbx, [rbx + rax*2]
jmp 0x14001693e
mov word [rbx], si
add rbx, 2
mov word [rbx], r14w
mov rax, qword [rbp - 0x78]
mov r9, qword [rbp - 0x18]
mov r14, rbx
mov qword [rbp - 0x68], rbx
mov qword [rbp - 0x80], rax
add r14, 2
xor r8d, r8d
mov qword [rbp - 0x68], r14
jmp 0x140016967
movzx eax, word [r9]
cmp ax, 0x5d
jne 0x140097719
movzx eax, word [r9 + 4]
mov ecx, r12d
sub ax, 0xf
cmp ax, 1
cmova ecx, r8d
lea eax, [rcx + 3]
movsxd rcx, eax
lea r9, [r9 + rcx*2]
mov qword [rbp - 0x18], r9
mov edi, dword [rbp - 0x5c]
lea rdx, [0x140000000]
mov rbx, r14
sub rbx, r9
sar rbx, 1
test ebx, ebx
jle 0x140016974
movzx eax, word [r9]
add eax, 0xffffffdf
cmp eax, 0x3a
ja 0x140097922
cdqe
movzx eax, byte [rdx + rax + 0x99476]
mov ecx, dword [rdx + rax*4 + 0x99422]
add rcx, rdx
jmp rcx
cmp ax, 0x29
je 0x140097725
cmp ax, 0x43
jne 0x1400976d8
mov edi, dword [rbp - 0x5c]
lea rdx, [0x140000000]
movzx eax, ax
movzx eax, byte [rax + rdx + 0xb14f0]
lea r9, [r9 + rax*2]
mov qword [rbp - 0x18], r9
test edi, edi
je 0x1400976e2
movzx eax, word [r9 - 2]
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xd800
cmp ax, cx
jne 0x1400976e2
add r9, 2
mov qword [rbp - 0x18], r9
jmp 0x1400976e2
mov r9, qword [rbp + 0x170]
mov word [r14], r8w
mov rcx, qword [rbp - 0x18]
mov r8d, edi
mov edx, r12d
mov qword [rsp + 0x20], rsi
call fcn.1400179f0
mov rdx, qword [rbp - 0x18]
lea eax, [rbx + rbx]
lea rcx, [rdx + 4]
movsxd r8, eax
call fcn.140025590
mov rax, qword [rbp - 0x18]
add ebx, 2
mov ecx, 0x7b
add r14, 8
mov word [rax], cx
mov word [r14 - 4], r15w
mov word [r14 - 2], bx
mov rax, qword [rbp - 0x18]
mov qword [rbp - 0x68], r14
mov word [rax + 2], bx
mov rax, qword [rbp - 0x78]
mov qword [rbp - 0x80], rax
jmp 0x140016974
cmp dword [rbp - 0x5c], 0
je 0x140016c43
lea rdx, [rbp + 0x78]
mov ecx, edi
call fcn.1400843bc
movzx edi, word [rbp + 0x78]
mov esi, eax
jmp 0x140016171
mov r11, qword [rbp - 0x78]
cmp word [r11 + 2], 0x5c
jne 0x1400979c7
cmp word [r11 + 4], 0x45
jne 0x1400979c7
add r11, 4
jmp 0x140016288
mov eax, 1
mov r10d, eax
mov dword [rbp - 0x70], eax
jmp 0x14001628c
mov r11, qword [rbp + 0x170]
mov edx, 0x3e
mov ebx, reloc.OLEAUT32.dll_SafeArrayRedim
mov rax, qword [r11 + 0x48]
mov r8d, 0xfffd
mov qword [rbp - 8], rax
mov rax, qword [rbp - 0x78]
add rax, 2
mov qword [rbp - 0x78], rax
mov qword [rbp - 0x80], rax
cmp word [rax], 0x3c
lea r10, [rax + 2]
movzx eax, word [rax + 2]
cmove ebx, edx
xor edx, edx
sub ax, 0x2b
mov dword [rbp - 0x38], edx
mov r9d, edx
mov dword [rbp - 0x54], edx
test r8w, ax
je 0x140097ad6
movzx eax, word [r10]
mov edi, 1
mov r8, r10
mov r9d, edi
test ax, ax
je 0x140097a80
cmp ax, bx
je 0x140097aa0
mov ecx, 0xff
cmp ax, cx
ja 0x140097a99
movzx ecx, ax
mov rax, qword [r11 + 0x18]
movzx edx, byte [rcx + rax]
mov eax, 0
test dl, 4
cmove r9d, eax
test dl, 0x10
je 0x140097a7b
movzx eax, word [r8 + 2]
add r8, 2
test ax, ax
jne 0x140097a42
xor edx, edx
or ecx, 0xffffffff
cmp word [r8], bx
je 0x140097aa5
mov rax, qword [rbp + 0x138]
mov ecx, reloc.WSOCK32.dll_gethostname
mov dword [rax], ecx
jmp 0x14001640f
xor edx, edx
mov r9d, edx
jmp 0x140097a7d
xor edx, edx
or ecx, 0xffffffff
test r9d, r9d
je 0x140097ac2
mov r9d, dword [rbp - 0x54]
mov r8, r10
mov qword [rbp - 0x80], r10
mov qword [rbp - 0x78], r10
mov r10d, dword [rbp - 0x4c]
jmp 0x140098b5f
mov r10d, dword [rbp - 0x4c]
mov r12d, edi
mov edi, 0xff
mov r8d, r12d
jmp 0x140098937
mov rax, qword [rbp - 0x80]
lea rcx, [rax + 4]
movzx eax, word [rax + 4]
cmp ax, 0x30
jb 0x140097afc
cmp ax, 0x39
ja 0x140097afc
movzx eax, word [rcx + 2]
add rcx, 2
cmp ax, 0x30
jae 0x140097ae8
cmp word [rcx], bx
jne 0x140097a86
mov r8, r10
mov qword [rbp - 0x80], r10
mov qword [rbp - 0x78], r10
mov r10d, dword [rbp - 0x4c]
jmp 0x140098b59
mov rax, qword [rbp - 0x78]
mov qword [rbp - 0x80], rax
lea rcx, [rax + 2]
movzx eax, word [rax + 2]
cmp ax, 0x3c
je 0x140097b43
cmp ax, 0x27
je 0x140097b43
cmp ax, 0x7b
je 0x140097b43
mov eax, 0x45
mov dword [rbx], eax
jmp 0x14001640f
mov r10d, dword [rbp - 0x4c]
xor edx, edx
mov rax, rcx
mov qword [rbp - 0x78], rcx
movzx eax, word [rcx]
mov qword [rbp - 0x80], rcx
mov r12d, edx
lea r8d, [rdx + 1]
mov edi, 0xff
cmp ax, 0x3c
jne 0x140097b71
lea ebx, [rdx + 0x3e]
jmp 0x140098934
cmp ax, 0x27
mov ebx, 0x7d
mov eax, reloc.OLEAUT32.dll_SafeArrayRedim
cmove ebx, eax
jmp 0x140098934
mov r9, qword [rbp + 0x170]
neg edi
xor edx, edx
lea r8d, [rdx + 1]
jmp 0x140098ac1
mov rax, qword [rbp + 0x170]
cmp dword [rax + 0x6c], 0
jne 0x140016789
mov ecx, 1
mov dword [rax + 0x6c], ecx
jmp 0x140016789
mov rax, qword [rbp - 0x78]
lea r11, [0x140000000]
mov r11, qword [r11 + rdi*8 + 0xd95b8]
add rax, 2
sub r11, 2
mov qword [rbp + 0x58], rax
jmp 0x140016288
xor eax, eax
mov r12d, eax
jmp 0x1400167a4
cmp edi, 0xe
jne 0x1400167b2
mov edi, reloc.WSOCK32.dll_listen
jmp 0x1400167b2
xor esi, esi
lea r9, [rbp - 0x54]
lea r8, [rbp - 0x30]
lea rdx, [rbp + 0x94]
lea rcx, [rbp - 0x78]
mov qword [rsp + 0x20], rbx
mov dword [rbp - 0x30], esi
mov dword [rbp - 0x54], esi
call fcn.140083d44
test eax, eax
je 0x140016f78
cmp edi, 0x10
mov eax, esi
mov ecx, esi
sete al
mov r12, r14
mov qword [rbp - 0x40], r14
cmp eax, dword [rbp + 0x94]
movzx eax, word [rbp - 0x30]
setne cl
add ecx, 0xf
add r14, 6
mov word [r14 - 6], cx
mov word [r14 - 4], ax
movzx eax, word [rbp - 0x54]
mov word [r14 - 2], ax
jmp 0x1400167ba
movzx eax, word [r10 + 2]
lea rcx, [r10 + 2]
and ax, dx
mov edx, 0xdc00
cmp ax, dx
jne 0x140016171
mov qword [rbp - 0x78], rcx
movzx eax, word [rcx]
mov esi, 2
mov word [rbp + 0x7a], ax
jmp 0x140016171
movzx eax, word [rbp + 0x7a]
and edx, 0x3ff
mov ecx, edx
and eax, 0x3ff
shl ecx, 0xa
mov edx, eax
or edx, ecx
add edx, 0x10000
jmp 0x1400161a1
mov r11, qword [rbp - 0x78]
or eax, 0xffffffff
mov dword [rbp - 0x10], eax
mov dword [rbp - 0x50], eax
jmp 0x14001628c
mov r9, qword [rbp + 0x170]
or dword [r9 + 0x80], 0x800
jmp 0x140016240
cmp dword [rbp + 8], 0
je 0x1400166ad
mov dword [rbp - 0x28], ecx
mov dword [rbp - 0x50], ecx
jmp 0x140016284
movzx eax, word [r14 - 2]
mov dword [rbp - 0x20], eax
mov eax, dword [r9 + 0x84]
mov dword [rbp - 0x28], eax
jmp 0x140016284
cmp dword [rbp + 8], 0
jne 0x140016284
jmp 0x14001626f
movzx eax, word [rdi + 2]
lea r12, [rdi + 2]
mov edi, 0xff
cmp ax, 0x3a
je 0x140097d47
cmp ax, di
ja 0x140097fc3
movzx ecx, ax
mov rax, qword [r11 + 0x18]
test byte [rcx + rax], 2
je 0x140097fc3
xor ecx, ecx
mov qword [rbp - 0x78], r12
movzx eax, word [r12]
mov esi, ecx
lea r15, [0x1400c8878]
mov r13d, ecx
mov qword [rbp - 0x40], rcx
mov r14, r12
mov qword [rbp - 0x80], r12
cmp ax, di
ja 0x140097d92
mov rcx, qword [r11 + 0x18]
movzx eax, ax
test byte [rax + rcx], 2
je 0x140097d8c
add r14, 2
mov qword [rbp - 0x78], r14
movzx eax, word [r14]
cmp ax, di
jbe 0x140097d72
mov qword [rbp - 0x80], r14
xor ecx, ecx
mov r11, qword [rbp - 0x80]
sub r14, r12
sar r14, 1
cmp word [r11], 0x3a
jne 0x140097e07
mov rsi, r11
add rsi, 2
mov qword [rbp - 0x78], rsi
mov qword [rbp - 0x80], rsi
mov r13, rsi
movzx eax, word [rsi]
test ax, ax
je 0x140097dd7
cmp ax, 0x29
je 0x140097dd3
add rsi, 2
mov qword [rbp - 0x78], rsi
movzx eax, word [rsi]
test ax, ax
jne 0x140097dbd
mov qword [rbp - 0x80], rsi
mov r11, qword [rbp - 0x80]
sub rsi, r13
sar rsi, 1
cmp esi, 0xffff
jbe 0x140097e07
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov dword [rax], VarR8FromUI1
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
cmp word [r11], 0x29
jne 0x1400990fd
mov dword [rbp - 0x30], ecx
mov rdi, rcx
lea rbx, [0x1400c87b0]
mov r11d, dword [rbx]
cmp r14d, r11d
jne 0x140097edb
mov r8d, r14d
mov rdx, r15
mov rcx, r12
call fcn.140023fe8
test eax, eax
jne 0x140097edb
lea rax, [rdi + rdi*2]
lea rdx, [0x1400c87b0]
mov ecx, dword [rdx + rax*4 + 4]
cmp ecx, 0x98
jne 0x140097f0c
test esi, esi
jne 0x1400990b9
mov rdx, qword [rbp + 0x170]
mov r14, qword [rbp - 0x68]
mov r8d, 1
mov rcx, qword [rdx + 0x40]
mov dword [rdx + 0x88], r8d
test rcx, rcx
je 0x140097ea8
mov r8d, 0x9a
mov word [r14], r8w
movzx eax, word [rcx + 8]
add r14, 4
mov word [r14 - 2], ax
mov rcx, qword [rcx]
test rcx, rcx
jne 0x140097e8b
lea r8d, [rcx + 1]
xor eax, eax
cmp dword [rdx + 0x78], eax
setg al
add r14, 2
add eax, 0x98
cmp dword [rbp - 0x50], 0xfffffffe
mov qword [rbp - 0x68], r14
mov word [r14 - 2], ax
movzx ebx, ax
jne 0x140097f79
mov dword [rbp - 0x50], 0xffffffff
jmp 0x140097f79
inc dword [rbp - 0x30]
lea eax, [r11 + 1]
add rbx, 0xc
movsxd rcx, eax
lea rax, [0x1400c881c]
inc rdi
add r15, rcx
cmp rbx, rax
jl 0x140097e1f
mov r11, qword [rbp - 0x80]
mov r14, qword [rbp - 0x68]
jmp 0x140097fac
test esi, esi
jne 0x140097f23
test ecx, ecx
js 0x1400990db
mov r14, qword [rbp - 0x68]
movzx eax, cx
mov ebx, eax
jmp 0x140097f60
cmp dword [rdx + rax*4 + 8], 0
jl 0x1400990b9
movzx eax, word [rdx + rax*4 + 8]
mov r14, qword [rbp - 0x68]
mov rdx, r13
mov word [r14], ax
mov ebx, eax
lea eax, [rsi + rsi]
mov word [r14 + 2], si
add r14, 4
movsxd r8, eax
mov rcx, r14
call fcn.140025590
movsxd rax, esi
lea r14, [r14 + rax*2]
xor eax, eax
mov rdx, qword [rbp + 0x170]
mov word [r14], ax
add r14, 2
mov qword [rbp - 0x68], r14
mov r8d, 1
cmp ebx, 0x90
jl 0x140097f9b
cmp ebx, 0x93
jle 0x140097fa1
cmp ebx, 0x95
jg 0x140097f9b
or dword [rdx + 0x80], 0x1000
mov r11, qword [rbp - 0x78]
jmp 0x140097fac
mov r11, qword [rbp - 0x78]
mov dword [rdx + 0x8c], r8d
cmp dword [rbp - 0x30], 9
jge 0x1400990fd
mov r15d, dword [rbp - 0x58]
mov r12, qword [rbp - 0x40]
jmp 0x140016288
mov r12, qword [rbp - 0x40]
jmp 0x140016317
sub eax, 0x21
lea r13, [0x140000000]
cmp eax, 0x5b
ja case.0x140097ff5.47
cdqe
movzx eax, byte [r13 + rax + 0x994ee]
mov ecx, dword [r13 + rax*4 + 0x994b2]
add rcx, r13
jmp rcx
mov rax, qword [rbp - 0x80]
add rax, 2
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x78], rax
movzx eax, word [rax]
test ax, ax
je 0x14009802d
cmp ax, 0x29
je 0x14009804f
mov rax, qword [rbp - 0x80]
add rax, 2
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x78], rax
movzx eax, word [rax]
test ax, ax
jne 0x14009800f
mov r11, qword [rbp - 0x80]
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov dword [rax], reloc.WSOCK32.dll_select
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
mov r11, qword [rbp - 0x80]
cmp word [r11], r9w
je 0x140098031
jmp 0x140016288
mov r10d, 1
mov r9d, r10d
jmp 0x14009806f
mov r10d, 1
mov rcx, qword [rbp - 0x80]
mov r11d, dword [rbp - 0x38]
mov eax, 0x7d
add rcx, 2
mov dword [rbp - 0x60], eax
mov qword [rbp - 0x78], rcx
jmp 0x1400169bf
mov r8, qword [rbp - 0x80]
mov eax, 0x81
cmp word [r8 + 2], 0x3f
mov dword [rbp - 0x60], eax
mov qword [rbp + 0x68], r8
jne 0x140098112
cmp word [r8 + 4], 0x43
jne 0x1400980ed
mov eax, 3
mov ecx, eax
movzx eax, word [r8 + 6]
cmp ax, 0x30
jb 0x1400980d4
cmp ax, 0x39
ja 0x1400980d4
inc ecx
movsxd rax, ecx
movzx eax, word [r8 + rax*2]
cmp ax, 0x30
jae 0x1400980be
movsxd rax, ecx
cmp word [r8 + rax*2], 0x29
jne 0x1400980ed
lea eax, [rcx + 1]
movsxd rcx, eax
lea r8, [r8 + rcx*2]
mov qword [rbp + 0x68], r8
cmp word [r8 + 2], 0x3f
jne 0x140098112
movzx eax, word [r8 + 4]
cmp ax, 0x21
je 0x140098e8d
sub ax, 0x3c
cmp ax, 1
jbe 0x140098e8d
mov eax, 0x87
or r8d, 0xffffffff
mov word [r14 + 4], ax
mov rcx, qword [rbp - 0x78]
mov eax, 2
lea rdx, [rcx + 2]
mov r11d, eax
mov dword [rbp - 0x38], eax
movzx eax, word [rdx]
mov r9d, r8d
mov qword [rbp - 0x80], rcx
cmp ax, 0x52
jne 0x140098172
add rcx, 4
cmp word [rcx], 0x26
jne 0x14009816e
mov qword [rbp - 0x78], rcx
mov eax, 0x89
mov r12d, r8d
mov word [r14 + 4], ax
mov rcx, qword [rbp - 0x78]
mov dword [rbp - 0x30], r8d
mov qword [rbp - 0x80], rcx
xor edi, edi
jmp 0x1400981c7
mov rcx, qword [rbp - 0x80]
xor edi, edi
cmp ax, 0x3c
jne 0x14009818b
mov eax, 0x3e
mov qword [rbp - 0x78], rdx
mov r12d, eax
mov dword [rbp - 0x30], eax
jmp 0x1400981c0
cmp ax, 0x27
jne 0x1400981a2
mov eax, reloc.OLEAUT32.dll_SafeArrayRedim
mov qword [rbp - 0x78], rdx
mov r12d, eax
mov dword [rbp - 0x30], eax
jmp 0x1400981c0
sub ax, 0x2b
mov r8d, 0xfffd
mov r12d, edi
mov dword [rbp - 0x30], edi
test r8w, ax
jne 0x1400981c7
mov qword [rbp - 0x78], rdx
movzx r9d, word [rdx]
mov rcx, rdx
mov qword [rbp - 0x80], rdx
add rcx, r11
mov edx, 0xff
movzx eax, word [rcx]
cmp ax, dx
ja 0x1400991a7
mov r8, qword [rbp + 0x170]
movzx eax, ax
mov r8, qword [r8 + 0x18]
test byte [rax + r8], 0x10
je 0x1400991a7
mov qword [rbp - 0x78], rcx
movzx edx, word [rcx]
mov eax, 0xff
mov r15, rcx
mov qword [rbp - 0x80], rcx
mov r13, rcx
cmp dx, ax
ja 0x14009825c
or r10d, 0xffffffff
mov esi, eax
movzx eax, dx
test byte [rax + r8], 0x10
je 0x14009824d
test edi, edi
js 0x14009823d
lea eax, [rdx - 0x30]
cmp ax, 9
ja 0x14009823a
lea edi, [rdi + rdi*4]
movzx eax, dx
lea edi, [rdi - 0x18]
lea edi, [rax + rdi*2]
jmp 0x14009823d
mov edi, r10d
add r15, r11
mov qword [rbp - 0x78], r15
movzx edx, word [r15]
cmp dx, si
jbe 0x140098215
mov r10d, dword [rbp - 0x4c]
mov rsi, qword [rbp + 0x178]
mov qword [rbp - 0x80], r15
sub r15, rcx
sar r15, 1
test r12d, r12d
jle 0x140098287
mov rax, qword [rbp - 0x80]
mov rcx, qword [rbp - 0x80]
movzx eax, word [rax]
add rcx, r11
mov qword [rbp - 0x80], rcx
mov qword [rbp - 0x78], rcx
cmp ax, r12w
jne 0x140099181
mov rax, qword [rbp - 0x80]
mov rcx, qword [rbp - 0x80]
movzx eax, word [rax]
add rcx, r11
mov qword [rbp - 0x80], rcx
mov qword [rbp - 0x78], rcx
cmp ax, 0x29
jne 0x140099181
test rsi, rsi
jne 0x1400982f0
test r9d, r9d
jle 0x140098303
test edi, edi
jle 0x14009913d
mov rax, qword [rbp + 0x170]
cmp r9d, 0x2d
jne 0x1400982d7
mov eax, dword [rax + 0x64]
sub eax, edi
lea edi, [rax + 1]
mov rax, qword [rbp + 0x170]
jmp 0x1400982da
add edi, dword [rax + 0x64]
test edi, edi
jle 0x14009911b
cmp edi, dword [rax + 0x68]
jg 0x14009911b
mov word [r14 + 6], di
mov r9d, dword [rbp - 0x54]
mov r15d, dword [rbp - 0x58]
mov r10d, 1
jmp 0x1400169bc
mov rax, qword [rbp + 0x170]
xor r9d, r9d
mov r14d, dword [rax + 0x58]
mov r11, qword [rax + 0x50]
mov esi, r9d
test r14d, r14d
jle 0x140098355
mov r12, rax
lea rdx, [r11 + 2]
mov r8d, r15d
mov rcx, r13
call fcn.1400842b0
test eax, eax
je 0x140098343
movsxd rax, dword [r12 + 0x5c]
inc esi
lea r11, [r11 + rax*2]
cmp esi, r14d
jl 0x140098320
mov r12d, dword [rbp - 0x30]
mov r10d, dword [rbp - 0x4c]
mov rax, qword [rbp + 0x170]
xor r9d, r9d
cmp esi, r14d
jge 0x1400983a3
movzx eax, word [r11]
mov r14, qword [rbp - 0x68]
mov r11d, dword [rbp - 0x38]
mov r9d, dword [rbp - 0x54]
inc word [r14 + 4]
mov r15d, dword [rbp - 0x58]
mov word [r14 + 6], ax
mov r10d, 1
jmp 0x1400169bc
mov r14, qword [rbp - 0x68]
mov r11d, dword [rbp - 0x38]
mov r9d, dword [rbp - 0x54]
mov r15d, dword [rbp - 0x58]
mov word [r14 + 6], di
mov r10d, 1
jmp 0x1400169bc
mov ecx, dword [rbp - 0x5c]
test r10d, r10d
mov r8d, r15d
mov dword [rsp + 0x20], ecx
mov rcx, rax
setne r9b
mov rdx, r13
call fcn.1400836dc
test eax, eax
jg 0x14009835e
test r12d, r12d
jne 0x14009915f
cmp word [r13], 0x52
jne 0x14009843e
xor eax, eax
mov r10d, 1
mov edx, r10d
mov ecx, eax
cmp r15d, edx
jle 0x140098415
movsxd rax, edx
movzx r8d, word [r13 + rax*2]
lea eax, [r8 - 0x30]
cmp ax, 9
ja 0x14009915f
lea ecx, [rcx + rcx*4]
movzx eax, r8w
inc edx
lea ecx, [rcx - 0x18]
lea ecx, [rax + rcx*2]
cmp edx, r15d
jl 0x1400983e6
test ecx, ecx
jne 0x14009841a
mov ecx, 0xffff
mov r14, qword [rbp - 0x68]
mov r11d, dword [rbp - 0x38]
mov r9d, dword [rbp - 0x54]
mov r15d, dword [rbp - 0x58]
mov eax, 0x89
mov word [r14 + 6], cx
mov word [r14 + 4], ax
jmp 0x1400169bc
cmp r15d, 6
jne 0x14009847e
lea rdx, str.DEFINE
mov r8d, r15d
mov rcx, r13
call fcn.140023fe8
test eax, eax
jne 0x14009847e
mov r14, qword [rbp - 0x68]
mov r9d, dword [rbp - 0x54]
mov r15d, dword [rbp - 0x58]
mov eax, 0x8b
mov r10d, 1
mov word [r14 + 4], ax
mov r11d, r10d
jmp 0x1400169bc
test edi, edi
jle 0x140098492
mov rax, qword [rbp + 0x170]
cmp edi, dword [rax + 0x68]
jle 0x140098383
mov rdx, qword [rbp + 0x130]
mov r11, qword [rbp - 0x78]
mov eax, SafeArrayRedim
test edi, edi
mov ecx, reloc.WSOCK32.dll_ntohs
mov qword [rdx], r11
cmove ecx, eax
mov rax, qword [rbp + 0x138]
mov dword [rax], ecx
xor eax, eax
jmp 0x14001611b
inc dword [r11 + 0x78]
mov rcx, qword [rbp - 0x80]
mov eax, 0x77
add rcx, 2
mov dword [rbp - 0x60], eax
mov r11d, r9d
mov qword [rbp - 0x78], rcx
lea r10d, [rax - 0x76]
jmp 0x1400169bf
mov rcx, qword [rbp - 0x80]
mov eax, 0x7b
mov r11d, r9d
add rcx, 2
mov dword [rbp - 0x60], eax
lea r10d, [rax - 0x7a]
mov qword [rbp - 0x78], rcx
jmp 0x1400169bf
inc dword [r11 + 0x78]
mov r8, qword [rbp - 0x80]
mov eax, 0x79
add r8, 4
mov dword [rbp - 0x60], eax
mov r11d, r9d
mov qword [rbp - 0x78], r8
lea r10d, [rax - 0x78]
jmp 0x1400169bf
mov rax, qword [rbp - 0x80]
add rax, 2
mov qword [rbp - 0x78], rax
cmp word [rax], 0x29
jne 0x140098555
mov eax, reloc.WSOCK32.dll___WSAFDIsSet
add r14, 2
mov word [r14 - 2], ax
xor eax, eax
mov r12d, eax
mov qword [rbp - 0x40], rax
jmp 0x1400167ba
inc dword [r11 + 0x78]
mov eax, 0x78
mov r11d, r9d
lea r10d, [rax - 0x77]
mov dword [rbp - 0x60], eax
jmp 0x1400169bf
mov rax, qword [rbp - 0x80]
movzx eax, word [rax + 2]
cmp eax, 0x21
je 0x1400985ba
cmp eax, 0x3d
je 0x140098503
cmp ax, di
ja 0x140098594
mov ecx, eax
mov rax, qword [r11 + 0x18]
test byte [rcx + rax], 0x10
jne case.0x140097ff5.36
mov rax, qword [rbp + 0x138]
mov r11, qword [rbp - 0x80]
mov rdx, qword [rbp + 0x130]
add r11, 2
mov dword [rax], reloc.OLEAUT32.dll_SafeArrayGetElement
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
inc dword [r11 + 0x78]
mov r8, qword [rbp - 0x80]
mov eax, 0x7a
add r8, 4
mov dword [rbp - 0x60], eax
mov r11d, r9d
mov qword [rbp - 0x78], r8
lea r10d, [rax - 0x79]
jmp 0x1400169bf
mov eax, WSAStartup
xor ecx, ecx
mov qword [rbp + 0x20], r14
mov word [r14], ax
mov rdx, qword [rbp - 0x78]
mov dword [rbp + 0x50], 1
add rdx, 2
mov eax, ecx
mov qword [rbp - 0x80], rdx
mov r11, qword [rbp - 0x80]
mov qword [rbp - 0x78], rdx
movzx edx, word [rdx]
cmp dx, 0x30
jb 0x140098639
cmp dx, 0x39
ja 0x140098637
lea ecx, [rax + rax*4]
add r11, 2
movzx eax, dx
mov qword [rbp - 0x78], r11
movzx edx, word [r11]
lea eax, [rax + rcx*2]
add eax, 0xffffffd0
cmp dx, 0x30
jae 0x140098613
xor ecx, ecx
cmp word [r11], 0x29
jne 0x1400991eb
cmp eax, edi
jg 0x1400991cd
mov r8, qword [rbp + 0x170]
mov word [r14 + 2], ax
mov eax, dword [rbp - 0x78]
sub eax, dword [r8 + 0x30]
mov word [r14 + 6], cx
mov r12, rcx
sar rax, 1
mov qword [rbp - 0x40], rcx
inc ax
add r14, 8
mov word [r14 - 4], ax
jmp 0x1400167ba
mov rax, qword [rbp - 0x80]
add rax, 2
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x78], rax
movzx eax, word [rax]
cmp ax, 0x3d
je 0x1400986ca
cmp ax, 0x3e
je case.0x140097ff5.35
cmp ax, 0x3c
je 0x1400986e5
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov r11, qword [rbp - 0x80]
mov dword [rax], reloc.OLEAUT32.dll_SafeArrayCreateEx
mov qword [rdx], r11
xor eax, eax
jmp 0x14001611b
xor edx, edx
mov r12d, edx
lea r8d, [rdx + 1]
jmp 0x14009892b
cmp r8d, 0x3c
je 0x1400986e5
mov edx, reloc.OLEAUT32.dll_SafeArrayRedim
jmp 0x1400986ea
mov edx, 0x3e
mov rax, qword [rbp - 0x80]
add rax, 2
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x78], rax
mov r9, rax
mov qword [rbp - 0x40], rax
movzx eax, word [rax]
cmp ax, di
ja 0x14009872f
mov rcx, qword [r11 + 0x18]
movzx eax, ax
test byte [rax + rcx], 0x10
je 0x140098727
add r9, 2
mov qword [rbp - 0x78], r9
movzx eax, word [r9]
cmp ax, di
jbe 0x14009870d
mov qword [rbp - 0x80], r9
mov r9, qword [rbp - 0x40]
mov r12, qword [rbp - 0x80]
sub r12, r9
sar r12, 1
test rsi, rsi
je 0x140098799
mov r11, qword [rbp - 0x80]
cmp word [r11], dx
jne 0x140099228
mov rcx, qword [rbp + 0x170]
cmp dword [rcx + 0x58], 0x2710
jge 0x14009920a
lea eax, [r12 + 2]
cmp eax, dword [rcx + 0x5c]
jle 0x140098900
mov dword [rcx + 0x5c], eax
cmp r12d, 0x20
jle 0x140098900
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov dword [rax], gethostbyname
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
mov rdi, qword [r11 + 0x50]
xor eax, eax
movsxd r13, r12d
mov r14d, eax
mov esi, eax
cmp dword [r11 + 0x58], eax
jle 0x14009887a
lea eax, [r12 + r12]
movsxd r15, eax
lea rdx, [rdi + 2]
mov r8, r15
mov rcx, r9
call fcn.140025b70
test eax, eax
jne 0x14009881a
cmp word [rdi + r13*2 + 2], ax
jne 0x14009883c
mov r11, qword [rbp + 0x170]
movzx eax, word [rdi]
mov ecx, dword [r11 + 0x64]
inc ecx
cmp eax, ecx
je 0x140098812
test dword [rbp - 0x58], 0x80000
jne 0x140098812
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov r11, qword [rbp - 0x78]
mov dword [rax], 0x2b
mov qword [rdx], r11
xor eax, eax
jmp 0x14001611b
mov r14d, 1
jmp 0x140098823
js 0x14009883c
mov r11, qword [rbp + 0x170]
movsxd rax, dword [r11 + 0x5c]
inc esi
lea rdi, [rdi + rax*2]
cmp esi, dword [r11 + 0x58]
jge 0x140098867
mov r9, qword [rbp - 0x40]
jmp 0x1400987b8
mov rax, qword [rbp + 0x170]
mov rdx, rdi
movsxd rcx, dword [rax + 0x5c]
mov eax, dword [rax + 0x58]
sub eax, esi
imul eax, ecx
lea rcx, [rdi + rcx*2]
add eax, eax
movsxd r8, eax
call fcn.140025590
mov r11, qword [rbp + 0x170]
mov r15d, dword [rbp - 0x58]
test r14d, r14d
jne 0x1400988cf
mov rdx, qword [rbp - 0x78]
xor eax, eax
mov qword [rbp - 0x80], rdx
mov r9d, dword [r11 + 0x58]
mov r8, qword [r11 + 0x50]
mov edx, eax
test r9d, r9d
jle 0x1400988cf
cmp r8, rdi
je 0x1400988be
mov ecx, dword [r11 + 0x64]
movzx eax, word [r8]
inc ecx
cmp eax, ecx
jne 0x1400988c0
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov r11, qword [rbp - 0x80]
mov dword [rax], 0x41
mov qword [rdx], r11
xor eax, eax
jmp 0x14001611b
dec edx
movsxd rax, dword [r11 + 0x5c]
inc edx
lea r8, [r8 + rax*2]
cmp edx, r9d
jl 0x140098889
movzx eax, word [r11 + 0x64]
mov rdx, qword [rbp - 0x40]
lea rcx, [rdi + 2]
inc ax
mov word [rdi], ax
lea eax, [r12 + r12]
movsxd r8, eax
call fcn.140025590
mov r14, qword [rbp - 0x68]
xor eax, eax
mov word [rdi + r13*2 + 2], ax
mov rax, qword [rbp - 0x78]
jmp 0x140098904
mov rax, qword [rbp - 0x80]
mov r11, qword [rbp + 0x170]
mov r9d, dword [rbp - 0x54]
inc dword [r11 + 0x58]
add rax, 2
mov qword [rbp - 0x78], rax
jmp 0x1400169a5
mov r8d, 1
xor edx, edx
mov r12d, r8d
mov r13d, dword [rbp - 0x50]
mov ebx, reloc.OLEAUT32.dll_SafeArrayCreateEx
or ecx, 0xffffffff
mov rax, qword [rbp - 0x80]
mov r9, qword [rbp + 0x170]
add rax, 2
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x78], rax
mov r15, rax
movzx eax, word [rax]
cmp ax, di
ja 0x140098985
mov rcx, qword [r9 + 0x18]
mov r10, r15
movzx eax, ax
test byte [rax + rcx], 0x10
je 0x14009897a
add r10, 2
mov qword [rbp - 0x78], r10
movzx eax, word [r10]
cmp ax, di
jbe 0x140098960
mov qword [rbp - 0x80], r10
mov r10d, dword [rbp - 0x4c]
or ecx, 0xffffffff
mov r11, qword [rbp - 0x80]
sub r11, r15
sar r11, 1
test rsi, rsi
je 0x140098a08
test r11d, r11d
je 0x14009928a
mov rcx, qword [rbp - 0x80]
cmp word [rcx], bx
jne 0x140099268
cmp r11d, 0x20
jg 0x140099246
mov rbx, qword [r9 + 0x38]
mov eax, dword [rbp - 0x5c]
mov qword [r9 + 0x38], rcx
mov rcx, qword [rbp + 0x170]
mov r9d, edx
test r10d, r10d
mov r8d, r11d
mov rdx, r15
setne r9b
mov dword [rsp + 0x20], eax
call fcn.1400836dc
mov r9, qword [rbp + 0x170]
mov r10d, dword [rbp - 0x4c]
xor edx, edx
or ecx, 0xffffffff
mov qword [r9 + 0x38], rbx
mov edi, eax
lea r8d, [rdx + 1]
test eax, eax
jns 0x140098ab4
mov edi, edx
jmp 0x140098ab4
mov esi, dword [r9 + 0x58]
mov rbx, qword [r9 + 0x50]
mov edi, edx
movsxd r14, r11d
test esi, esi
jle 0x140098a5f
lea rdx, [rbx + 2]
mov r8d, r11d
mov rcx, r15
call fcn.1400842b0
test eax, eax
jne 0x140098a3d
cmp word [rbx + r14*2 + 2], ax
jne 0x140098a3d
mov r9, qword [rbp + 0x170]
jmp 0x140098a52
mov r9, qword [rbp + 0x170]
inc edi
movsxd rax, dword [r9 + 0x5c]
lea rbx, [rbx + rax*2]
cmp edi, esi
jl 0x140098a19
mov r10d, dword [rbp - 0x4c]
xor edx, edx
or ecx, 0xffffffff
lea r8d, [rdx + 1]
cmp edi, esi
jge 0x140098a68
movzx edi, word [rbx]
jmp 0x140098aa9
mov eax, dword [rbp - 0x5c]
mov rcx, qword [rbp + 0x170]
mov r9d, edx
test r10d, r10d
mov r8d, r11d
mov rdx, r15
setne r9b
mov dword [rsp + 0x20], eax
call fcn.1400836dc
mov edi, eax
test eax, eax
jle 0x14009915f
mov r10d, dword [rbp - 0x4c]
mov r9, qword [rbp + 0x170]
xor edx, edx
lea r8d, [rdx + 1]
or ecx, 0xffffffff
mov rsi, qword [rbp + 0x178]
mov r14, qword [rbp - 0x68]
mov r15d, dword [rbp - 0x58]
test r12d, r12d
jne 0x140098c7b
cmp r13d, 0xfffffffe
mov eax, edx
mov r12, r14
cmove r13d, ecx
test r15b, 1
mov qword [rbp - 0x40], r14
setne al
add r14, 4
mov dword [rbp - 0x50], r13d
add eax, 0x6d
mov qword [rbp - 0x68], r14
mov word [r14 - 4], ax
mov word [r14 - 2], di
mov eax, r8d
cmp edi, 0x20
jge 0x140098afe
mov ecx, edi
shl eax, cl
or dword [r9 + 0x74], eax
cmp edi, dword [r9 + 0x70]
jle 0x140098b0c
mov dword [r9 + 0x70], edi
mov rcx, qword [r9 + 0x40]
test rcx, rcx
je 0x140016284
movzx eax, word [rcx + 8]
cmp eax, edi
je 0x140098b2e
mov rcx, qword [rcx]
test rcx, rcx
jne 0x140098b19
jmp 0x140016284
mov word [rcx + 0xa], r8w
jmp 0x140016284
mov r8, qword [rbp - 0x80]
add r8, 2
mov qword [rbp - 0x80], r8
mov qword [rbp - 0x78], r8
jmp 0x140098b4e
mov r8, qword [rbp - 0x80]
mov r13d, dword [rbp - 0x50]
mov ebx, reloc.OLEAUT32.dll_SafeArrayCreateEx
xor edx, edx
or ecx, 0xffffffff
lea edi, [rcx + 2]
movzx r8d, word [r8]
cmp r8d, 0x2b
jne 0x140098ba8
mov rax, qword [rbp - 0x80]
add rax, 2
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x78], rax
movzx eax, word [rax]
sub ax, 0x30
cmp ax, 9
jbe 0x140098bd3
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov r11, qword [rbp - 0x80]
mov dword [rax], 0x3f
mov qword [rdx], r11
xor eax, eax
jmp 0x14001611b
cmp r8d, 0x2d
jne 0x140098bd3
mov rcx, qword [rbp - 0x80]
movzx eax, word [rcx + 2]
add rcx, 2
sub ax, 0x30
cmp ax, 9
ja 0x140016350
mov qword [rbp - 0x80], rcx
mov qword [rbp - 0x78], rcx
or ecx, 0xffffffff
mov r11, qword [rbp - 0x80]
mov edi, edx
mov rdx, qword [rbp - 0x80]
movzx edx, word [rdx]
cmp dx, 0x30
jb 0x140098c0d
cmp dx, 0x39
ja 0x140098c0a
add r11, 2
lea edi, [rdi + rdi*4]
movzx eax, dx
mov qword [rbp - 0x78], r11
movzx edx, word [r11]
lea edi, [rdi - 0x18]
lea edi, [rax + rdi*2]
cmp dx, 0x30
jae 0x140098be6
or ecx, 0xffffffff
cmp word [r11], bx
jne 0x1400992ed
cmp r8d, 0x2d
jne 0x140098c57
test edi, edi
je 0x1400992ad
mov r9, qword [rbp + 0x170]
mov eax, dword [r9 + 0x64]
sub eax, edi
lea edi, [rax + 1]
test edi, edi
jg 0x140098c79
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov dword [rax], reloc.WSOCK32.dll_ntohs
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
cmp r8d, 0x2b
jne 0x140098c72
test edi, edi
je 0x1400992ad
mov r9, qword [rbp + 0x170]
add edi, dword [r9 + 0x64]
jmp 0x140098c79
mov r9, qword [rbp + 0x170]
xor edx, edx
mov rbx, qword [r9 + 0x28]
mov r12, r14
mov qword [rbp - 0x40], r14
test rsi, rsi
jne 0x140098d8d
mov esi, dword [rbp - 0x5c]
mov word [r14], dx
test edi, edi
je 0x140098cbb
mov rcx, qword [r9 + 0x28]
mov r8d, edi
mov edx, esi
call fcn.14008291c
mov r10d, dword [rbp - 0x4c]
mov r9, qword [rbp + 0x170]
xor edx, edx
mov rbx, rax
or ecx, 0xffffffff
test rbx, rbx
jne 0x140098d4f
mov rcx, qword [rbp + 0x170]
mov r9d, edx
test r10d, r10d
setne r9b
mov r8d, edi
xor edx, edx
mov dword [rsp + 0x20], esi
call fcn.1400836dc
test eax, eax
js 0x14009915f
mov r9, qword [rbp + 0x170]
movsxd rcx, edi
mov rax, qword [r9 + 0x28]
lea rbx, [rax + rcx*2]
movsxd rcx, dword [r9 + 0x60]
mov rax, qword [r9 + 0x20]
add rcx, 0xffffffffffffff9c
lea rcx, [rax + rcx*2]
cmp qword [r9 + 0x48], rcx
jb 0x140098d33
mov rcx, r9
call fcn.140083334
mov rcx, qword [rbp + 0x138]
mov dword [rcx], eax
test eax, eax
jne 0x140016f78
mov r9, qword [rbp + 0x170]
mov rax, qword [r9 + 0x48]
mov ecx, r14d
sub ecx, dword [r9 + 0x28]
add rcx, 2
sar rcx, 1
mov word [rax], cx
add qword [r9 + 0x48], 2
jmp 0x140098d88
cmp word [rbx + 2], 0
jne 0x140098d8d
cmp dword [rbp + 0x168], 0
jg 0x140098d8d
mov r8, qword [rbp + 0x160]
mov qword [rsp + 0x20], r9
mov rdx, r14
mov r9d, esi
mov rcx, rbx
call fcn.140082ee4
test eax, eax
jne 0x1400992cb
mov r9, qword [rbp + 0x170]
xor edx, edx
or ecx, 0xffffffff
mov eax, reloc.WSOCK32.dll_WSAGetLastError
add r14, 4
mov dword [rbp + 0x1c], edx
mov word [r14 - 4], ax
mov eax, ebx
mov qword [rbp - 0x68], r14
sub eax, dword [r9 + 0x28]
sar rax, 1
mov word [r14 - 2], ax
cmp r13d, 0xfffffffe
jne 0x140016284
mov dword [rbp - 0x50], ecx
jmp 0x140016284
mov edi, 1
jmp 0x140016357
sub eax, 0x2d
cmp eax, 0x4b
ja case.0x140098dee.52
cdqe
movzx eax, byte [r13 + rax + 0x9956a]
mov ecx, dword [r13 + rax*4 + 0x9954a]
add rcx, r13
jmp rcx
lea rdx, [rbp - 0x54]
jmp 0x140016398
mov r11, qword [rbp + 0x170]
or dword [rdx], 0x80000
or dword [r11 + 0x80], 0x400
jmp 0x14001639f
or dword [rdx], 2
jmp 0x140016398
or dword [rdx], 4
jmp 0x140016398
or dword [rdx], 8
jmp 0x140016398
or dword [rdx], 0x200
jmp 0x140016398
or dword [rdx], 0x40
jmp 0x140016398
test rsi, rsi
je 0x140098e4f
cmp dword [rsi], 4
jne 0x1400163da
mov dword [r11 + 0x7c], ebx
jmp 0x1400163fc
mov rcx, qword [rbp - 0x80]
mov r11d, dword [rbp - 0x38]
mov eax, 0x7d
add rcx, 2
mov dword [rbp - 0x60], eax
lea r10d, [rax - 0x7c]
mov qword [rbp - 0x78], rcx
jmp 0x1400169bf
mov eax, 0x7d
mov r11d, r9d
lea r10d, [rax - 0x7c]
mov dword [rbp - 0x60], eax
jmp 0x1400169bf
mov r11d, r9d
mov r10d, 1
jmp 0x1400169bc
mov rax, qword [rbp + 0x170]
xor r9d, r9d
mov r8d, 0x8b
cmp dword [rax + 0x64], edi
ja 0x140016abd
mov eax, 0x7c
mov word [r14], ax
jmp 0x140016abd
mov rax, qword [rbp + 0x170]
dec dword [rax + 0x78]
jmp 0x140016aa7
test r13, r13
jne 0x140016ab7
mov rcx, r14
mov edx, r9d
movzx eax, word [rcx + 2]
inc edx
cmp word [rcx + rax*2], 0x72
lea rcx, [rcx + rax*2]
jne 0x140098ee0
mov r8d, 0x8b
cmp word [r14 + 4], r8w
jne 0x140098f0f
cmp edx, 1
jg 0x14009932d
mov edx, r8d
jmp 0x140016abd
cmp edx, 2
jg 0x14009934f
cmp edx, 1
mov edx, dword [rbp - 0x60]
jne 0x140016abd
or r10d, 0xffffffff
mov eax, r10d
mov ecx, r10d
mov dword [rbp + 0x10], eax
mov dword [rbp + 0x14], ecx
jmp 0x140016ac7
test ecx, ecx
js 0x140098f56
mov edx, dword [rbp + 0x70]
mov dword [rbp - 0x50], ecx
mov dword [rbp + 0x1c], 1
mov dword [rbp - 0x1c], edx
mov dword [rbp - 0x10], r10d
jmp 0x140016be2
mov dword [rbp - 0x50], r10d
mov dword [rbp - 0x10], r10d
jmp 0x140016be2
cmp edx, 0x77
jne 0x140016288
mov r10d, dword [rbp - 0x70]
mov edi, 0x7fffffeb
test eax, eax
js 0x140016291
mov ecx, dword [rbp + 0x2c]
mov dword [rbp - 0x28], eax
mov dword [rbp - 0x20], ecx
jmp 0x140016291
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov dword [rax], reloc.WSOCK32.dll_sendto
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
mov r11, qword [rbp - 0x80]
mov rdx, qword [rbp + 0x130]
mov ecx, reloc.WSOCK32.dll_listen
cmp word [r11 + 2], 0x3a
mov eax, reloc.OLEAUT32.dll_CreateStdDispatch
mov qword [rdx], r11
cmove eax, ecx
mov rcx, qword [rbp + 0x138]
mov dword [rcx], eax
xor eax, eax
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov r11, qword [rbp - 0x80]
mov dword [rax], RegisterActiveObject
mov qword [rdx], r11
xor eax, eax
jmp 0x14001611b
mov rcx, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov r11, qword [rbp - 0x80]
mov eax, reloc.OLEAUT32.dll_CreateStdDispatch
mov qword [rdx], r11
mov dword [rcx], eax
xor eax, eax
jmp 0x14001611b
mov dword [rdi], 7
jmp 0x140016f78
mov rdx, qword [rbp + 0x130]
mov r11, qword [rbp - 0x78]
mov eax, 0x47
mov dword [rdi], eax
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
mov rdx, qword [rbp + 0x130]
mov dword [r14], 8
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov r11, qword [rbp - 0x80]
mov dword [rax], reloc.WSOCK32.dll_sendto
mov qword [rdx], r11
xor eax, eax
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov dword [rax], 9
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov r11, qword [rbp - 0x80]
mov dword [rax], reloc.WSOCK32.dll_sendto
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov r11, qword [rbp - 0x80]
mov dword [rax], 0x3b
mov qword [rdx], r11
xor eax, eax
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov r11, qword [rbp - 0x80]
mov dword [rax], 0x42
mov qword [rdx], r11
xor eax, eax
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov dword [rax], 0x3c
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov r11, qword [rbp - 0x80]
mov dword [rax], reloc.WSOCK32.dll_ntohs
mov qword [rdx], r11
xor eax, eax
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov r11, qword [rbp - 0x80]
mov dword [rax], 0x3a
mov qword [rdx], r11
xor eax, eax
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov r11, qword [rbp - 0x78]
mov dword [rax], reloc.WSOCK32.dll_ntohs
mov qword [rdx], r11
xor eax, eax
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov r11, qword [rbp - 0x80]
mov rdx, qword [rbp + 0x130]
sub r11, 2
mov dword [rax], CreateStdDispatch
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov r11, qword [rbp - 0x80]
mov rdx, qword [rbp + 0x130]
add r11, 2
mov dword [rax], RegisterActiveObject
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov dword [rax], reloc.OLEAUT32.dll_SafeArrayDestroyData
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov ecx, reloc.OLEAUT32.dll_SafeArrayRedim
mov dword [rax], ecx
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov dword [rax], gethostbyname
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov dword [rax], 0x2a
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov r11, qword [rbp - 0x80]
mov dword [rax], gethostbyname
mov qword [rdx], r11
xor eax, eax
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov r11, qword [rbp - 0x80]
mov dword [rax], 0x2a
mov qword [rdx], r11
xor eax, eax
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov r11, qword [rbp - 0x80]
mov ecx, 0x3e
mov qword [rdx], r11
mov dword [rax], ecx
xor eax, eax
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov dword [rax], 0x3a
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov r11, qword [rbp - 0x78]
mov dword [rax], SafeArrayCreateEx
mov qword [rdx], r11
xor eax, eax
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov dword [rax], RegisterActiveObject
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
sub r11, 2
mov dword [rax], reloc.OLEAUT32.dll_VariantTimeToDosDateTime
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov r11, qword [rbp - 0x78]
mov dword [rax], gethostname
mov qword [rdx], r11
xor eax, eax
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov r11, qword [rbp - 0x78]
mov dword [rax], RegisterActiveObject
mov qword [rdx], r11
xor eax, eax
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x130]
mov dword [rax], recv
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b
mov rax, qword [rbp + 0x138]
mov dword [rax], reloc.WSOCK32.dll_gethostbyname
mov rdx, qword [rbp + 0x130]
xor eax, eax
mov qword [rdx], r11
jmp 0x14001611b