Function at 0x1401bd3a0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r15
lea rbp, [rsp - 0x50]
sub rsp, 0x150
mov rax, qword [0x1403ceac0]
xor rax, rsp
mov qword [rbp + 0x38], rax
mov rbx, qword [rcx + 0x10]
mov rsi, r9
mov r13, qword [rcx]
mov r12, r8
mov qword [rbp - 0x18], r8
mov rdi, rdx
mov qword [rbp - 0x80], rcx
mov r15, rcx
mov qword [rsp + 0x60], r13
test rbx, rbx
jne 0x1401bd40f
cmp qword [rcx + 0xa0], rbx
jne 0x1401bd3fe
test byte [r13 + 0x5c], 8
jne 0x1401bd3fe
mov byte [rcx + 0x23], 1
call fcn.1401d1d70
mov rbx, rax
test rax, rax
je 0x1401c1240
or dword [rbx + 0xc8], 0x20
lea rax, [r15 + 0x38]
lea r9, [rbp - 0x48]
mov qword [rbp - 0x38], rax
mov r8, r12
mov dword [rax], 2
mov rdx, rdi
mov rcx, r15
call fcn.1401cd260
mov dword [rsp + 0x68], eax
test eax, eax
js 0x1401c1240
mov qword [rsp + 0x148], r14
movsxd rdi, eax
mov r14, rdi
mov qword [rbp - 0x30], rdi
shl r14, 5
add r14, qword [r13 + 0x20]
cmp eax, 1
jne 0x1401bd471
mov rcx, r15
call fcn.1401b9f40
test eax, eax
jne 0x1401c1238
mov rdx, qword [rbp - 0x48]
mov rcx, r13
call fcn.1401b9750
mov qword [rbp - 0x50], rax
test rax, rax
je 0x1401c1238
cmp dword [rbp + 0xb0], 0
mov rcx, r13
je 0x1401bd4a7
mov r8, rsi
lea rdx, [0x1403231a0]
call fcn.1401b8f50
jmp 0x1401bd4af
mov rdx, rsi
call fcn.1401b9750
xor esi, esi
mov qword [rbp - 0x70], rax
cmp dword [r12 + 8], esi
jbe 0x1401bd4c1
mov r13, qword [r14]
jmp 0x1401bd4c4
mov r13, rsi
mov r8, qword [rbp - 0x50]
mov r9, rax
mov edx, reloc.WS2_32.dll_send
mov qword [rbp - 0x60], r13
mov rcx, r15
mov qword [rsp + 0x20], r13
call fcn.1401981b0
test eax, eax
jne 0x1401c1217
mov rax, qword [rbp - 0x50]
mov ecx, 1
mov qword [rbp + 8], rax
mov r15d, ecx
mov rax, qword [rbp - 0x70]
mov qword [rbp + 0x10], rax
mov rax, qword [rsp + 0x60]
mov qword [rbp], rsi
mov qword [rbp + 0x18], rsi
mov qword [rsp + 0x78], rcx
mov rcx, qword [rax + 0x18]
mov dword [rax + 0x270], esi
test rcx, rcx
je 0x1401bd52d
call qword [0x1403cb550]
mov rax, qword [rsp + 0x60]
test r13, r13
je 0x1401bd546
mov rdx, r13
mov rcx, rax
call fcn.1401abe20
test eax, eax
jns 0x1401bd548
jmp 0x1401bd5d0
mov eax, esi
mov ecx, eax
mov rax, qword [rsp + 0x60]
shl rcx, 5
mov rax, qword [rax + 0x20]
mov rdi, qword [rcx + rax + 8]
test rdi, rdi
je 0x1401bd5cc
cmp byte [rdi + 0x11], sil
je 0x1401bd578
inc dword [rdi + 0x14]
cmp byte [rdi + 0x12], sil
jne 0x1401bd578
mov rcx, rdi
call fcn.1401692e0
mov rax, qword [rdi + 8]
mov rcx, qword [rax]
mov rax, qword [rsp + 0x60]
mov rcx, qword [rcx + 0x48]
mov r13d, dword [rax + 0x270]
mov rax, qword [rcx]
test rax, rax
jne 0x1401bd59d
lea r15d, [rax + 0xc]
jmp 0x1401bd5ac
lea r8, [rbp]
mov edx, select
call qword [rax + 0x50]
mov r15d, eax
mov rax, qword [rsp + 0x60]
mov dword [rax + 0x270], r13d
cmp byte [rdi + 0x11], sil
je 0x1401bd5cc
sub dword [rdi + 0x14], 1
jne 0x1401bd5cc
mov rcx, rdi
call fcn.1401edd70
mov rdi, qword [rbp - 0x30]
mov r13, qword [rsp + 0x60]
mov rcx, qword [r13 + 0x18]
test rcx, rcx
je 0x1401bd5e4
call qword [0x1403cb560]
test r15d, r15d
jne 0x1401bd7d6
mov r15d, 1
mov rcx, rbx
mov edx, r15d
call fcn.1401df1d0
mov rax, qword [rbx]
mov rdi, qword [rbp]
cmp byte [rax + 0x63], sil
jne 0x1401bd6f8
mov r14, qword [rbx + 0x98]
test rdi, rdi
jne 0x1401bd63e
mov eax, 0x2400
test word [r14 + 8], ax
je 0x1401bd634
mov rcx, r14
call fcn.1401f17a0
jmp 0x1401bd6f8
mov word [r14 + 8], r15w
jmp 0x1401bd6f8
mov rcx, qword [r14 + 0x28]
test rcx, rcx
je 0x1401bd64f
mov eax, dword [rcx + 0x80]
jmp 0x1401bd654
mov eax, 0x3b9aca00
mov r13, 0xffffffffffffffff
nop dword [rax + rax]
inc r13
cmp byte [rdi + r13], sil
jne 0x1401bd660
cdqe
lea r15, [r13 + 1]
cmp r13, rax
jle 0x1401bd697
test rcx, rcx
je 0x1401bd6f2
mov rax, qword [rcx + 0x140]
mov r15d, 1
test rax, rax
je 0x1401bd6f8
inc dword [rax + 0x30]
mov dword [rax + 0x18], reloc.WS2_32.dll_select
jmp 0x1401bd6f8
mov edx, 0x20
cmp r15, rdx
cmovg edx, r15d
cmp dword [r14 + 0x20], edx
jge 0x1401bd6ba
xor r8d, r8d
mov rcx, r14
call fcn.1401dce50
test eax, eax
je 0x1401bd6c8
jmp 0x1401bd6f2
mov rax, qword [r14 + 0x18]
and word [r14 + 8], 0x2d
mov qword [r14 + 0x10], rax
mov rcx, qword [r14 + 0x10]
mov r8, r15
mov rdx, rdi
call fcn.1402b53e0
mov edi, 0x7fffffff
mov eax, 0x202
and r13d, edi
mov word [r14 + 8], ax
mov dword [r14 + 0xc], r13d
mov byte [r14 + 0xa], 1
mov r15d, 1
mov r8, qword [rbp]
test r8, r8
je 0x1401bd762
mov edx, r15d
mov rcx, rbx
call fcn.1401dc470
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x1401bd734
mov r9d, r15d
mov dword [rsp + 0x20], esi
mov r8d, r15d
mov edx, 0x51
mov rcx, rbx
call fcn.14017e5d0
jmp 0x1401bd762
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x51
mov dword [rax + rcx*8 + 4], r15d
mov qword [rax + rcx*8 + 8], 1
mov qword [rax + rcx*8 + 0x10], rsi
mov rbx, qword [rbp]
test rbx, rbx
je 0x1401c1217
cmp dword [reloc.WS2_32.dll_accept], esi
je 0x1401bd7c7
mov rcx, qword [0x1403e0e40]
test rcx, rcx
je 0x1401bd789
call qword [0x1403cb550]
mov rcx, rbx
call qword [0x1403cb508]
dec qword [0x1403e0dd8]
movsxd rcx, eax
sub qword [0x1403e0d90], rcx
mov rcx, rbx
call qword [0x1403cb4f8]
mov rcx, qword [0x1403e0e40]
test rcx, rcx
je 0x1401c1217
call qword [0x1403cb560]
jmp 0x1401c1217
mov rcx, qword [rbp]
call qword [0x1403cb4f8]
jmp 0x1401c1217
cmp r15d, 0xc
je 0x1401bd87e
mov r8, qword [rbp]
test r8, r8
je 0x1401bd86e
mov rcx, qword [rbp - 0x80]
lea rdx, [0x14031f590]
call fcn.1401a59d0
mov rbx, qword [rbp]
test rbx, rbx
je 0x1401bd86e
cmp dword [reloc.WS2_32.dll_accept], esi
je 0x1401bd865
mov rcx, qword [0x1403e0e40]
test rcx, rcx
je 0x1401bd820
call qword [0x1403cb550]
mov rcx, rbx
call qword [0x1403cb508]
dec qword [0x1403e0dd8]
movsxd rcx, eax
sub qword [0x1403e0d90], rcx
mov rcx, rbx
call qword [0x1403cb4f8]
mov rcx, qword [0x1403e0e40]
test rcx, rcx
je 0x1401bd86e
call qword [0x1403cb560]
mov rax, qword [rbp - 0x80]
inc dword [rax + 0x30]
mov dword [rax + 0x18], r15d
jmp 0x1401c1217
mov rcx, rbx
call qword [0x1403cb4f8]
mov rax, qword [rbp - 0x80]
inc dword [rax + 0x30]
mov dword [rax + 0x18], r15d
jmp 0x1401c1217
mov rcx, qword [rbp - 0x50]
call fcn.14018ae80
mov r13, rax
test rax, rax
je 0x1401c1217
test byte [rax + 9], 1
mov r15, qword [rbp - 0x80]
je 0x1401bd8ad
mov rcx, r15
call fcn.1401c1b10
test eax, eax
jne 0x1401c1217
movzx eax, byte [r13 + 9]
test al, 2
jne 0x1401bd8ce
test al, 4
je 0x1401bd8c3
mov r11, qword [rbp - 0x70]
test r11, r11
jne 0x1401bd8d2
mov rdx, r13
mov rcx, rbx
call fcn.140194ac0
mov r11, qword [rbp - 0x70]
movzx eax, byte [r13 + 8]
dec eax
cmp eax, 0x29
ja case.0x1401bd8f6.5
cdqe
lea r10, [0x140000000]
mov eax, dword [r10 + rax*4 + 0x1c1260]
add rax, r10
jmp rax
mov r13d, dword [rsp + 0x68]
mov rcx, rbx
mov edx, r13d
call fcn.1401dfd10
test r11, r11
jne 0x1401bda79
mov rax, qword [rbp - 0x38]
add dword [rax], 2
mov eax, dword [rbx + 0x90]
add eax, 9
cmp eax, dword [rbx + 0x94]
jle 0x1401bd93a
lea edx, [r11 + 9]
call fcn.14017e640
test eax, eax
jne 0x1401bda5e
movsxd rax, dword [rbx + 0x90]
mov r8d, 8
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
mov qword [rax + rcx*8 + 8], rsi
mov qword [rax + rcx*8 + 0x10], rsi
mov qword [rax + rcx*8], 2
lea rdx, [rax + rcx*8]
mov ecx, 1
mov qword [rdx + 0x18], 0x5f
mov dword [rdx + 0x20], ecx
mov dword [rdx + 0x24], 3
mov qword [rdx + 0x28], rsi
mov byte [rdx + 0x30], 0x30
mov dword [rdx + 0x34], ecx
mov dword [rdx + 0x38], r8d
mov eax, dword [rbx + 0x90]
add eax, r8d
mov dword [rdx + 0x38], eax
mov eax, 2
mov dword [rdx + 0x3c], esi
mov byte [rdx + 0x31], sil
mov qword [rdx + 0x40], rsi
mov word [rdx + 0x32], si
mov qword [rdx + 0x48], 0x45
mov qword [rdx + 0x50], rax
mov qword [rdx + 0x58], rsi
mov dword [rdx + 0x60], WSAGetLastError
mov dword [rdx + 0x64], ecx
mov dword [rdx + 0x68], eax
mov dword [rdx + 0x6c], ecx
mov qword [rdx + 0x70], rsi
mov byte [rdx + 0x78], 0x30
mov dword [rdx + 0x7c], ecx
mov dword [rdx + 0x80], r8d
mov eax, dword [rbx + 0x90]
add eax, r8d
mov dword [rdx + 0x80], eax
mov dword [rdx + 0x84], esi
mov byte [rdx + 0x79], sil
mov qword [rdx + 0x88], rsi
mov word [rdx + 0x7a], si
mov qword [rdx + 0x90], 0x45
mov qword [rdx + 0x98], rcx
mov qword [rdx + 0xa0], rsi
mov qword [rdx + 0xa8], UnRegisterTypeLib
mov qword [rdx + 0xb0], rsi
mov qword [rdx + 0xb8], rsi
mov dword [rdx + 0xc0], 0x51
mov dword [rdx + 0xc4], ecx
mov qword [rdx + 0xc8], rcx
mov qword [rdx + 0xd0], rsi
mov rsi, rdx
add dword [rbx + 0x90], 9
mov rdx, qword [rbp - 0x50]
mov dword [rsi + 4], r13d
mov dword [rsi + 0x1c], r13d
mov dword [rsi + 0x94], 0xfffff830
jmp 0x1401c122e
lea rdx, [rsp + 0x6c]
mov dword [rsp + 0x6c], esi
mov rcx, r11
call fcn.1401b32b0
mov edi, dword [rsp + 0x6c]
test edi, edi
jns 0x1401bdaa3
cmp edi, 0x80000000
jne 0x1401bdaa1
mov edi, 0x7fffffff
jmp 0x1401bdaa3
neg edi
mov r8d, r13d
xor edx, edx
mov rcx, r15
call fcn.140199050
mov r9d, 3
mov dword [rsp + 0x20], edi
mov r8d, r13d
mov rcx, rbx
lea edx, [r9 + 0x5d]
call fcn.1401d1310
mov rax, qword [r14 + 0x18]
mov dword [rax + 0x74], edi
mov rax, qword [r14 + 0x18]
mov rcx, qword [r14 + 8]
mov edx, dword [rax + 0x74]
call fcn.14019d330
jmp 0x1401c1217
mov rdi, qword [r14 + 8]
test r11, r11
jne 0x1401bdb0e
test rdi, rdi
je 0x1401bdafa
mov rax, qword [rdi + 8]
mov esi, dword [rax + 0x34]
movsxd rdx, esi
mov rcx, rbx
call fcn.140191610
mov rdx, qword [rbp - 0x50]
jmp 0x1401c122e
lea rdx, [rsp + 0x6c]
mov dword [rsp + 0x6c], esi
mov rcx, r11
call fcn.1401b32b0
mov rax, qword [rsp + 0x60]
xor r9d, r9d
mov edx, dword [rsp + 0x6c]
xor r8d, r8d
mov rcx, rdi
mov dword [rax + 0x70], edx
call fcn.14019d3c0
cmp eax, 7
jne 0x1401c1217
mov rcx, qword [rsp + 0x60]
call fcn.1401b9b40
jmp 0x1401c1217
mov r15, qword [r14 + 8]
mov r13, 0xffffffffffffffff
mov qword [rbp - 0x48], r15
test r11, r11
je 0x1401bdbbd
lea r9, str.fast
mov rdx, r11
sub r9, r11
movzx eax, byte [rdx]
movzx r8d, byte [rdx + r9]
cmp eax, r8d
jne 0x1401bdb89
test eax, eax
jne 0x1401bdb9f
lea r13d, [rax + 2]
jmp 0x1401bdbbd
movzx ecx, byte [rax + r10 + 0x3186e0]
movzx eax, byte [r8 + r10 + 0x3186e0]
cmp ecx, eax
jne 0x1401bdba4
inc rdx
jmp 0x1401bdb72
xor r8d, r8d
mov rcx, r11
lea edx, [r8 + 1]
call fcn.14017e490
mov ecx, esi
test al, al
setne cl
mov r13d, ecx
cmp dword [r12 + 8], esi
jne 0x1401bdc52
test r13d, r13d
js 0x1401bdc52
mov rax, qword [rsp + 0x60]
cmp dword [rax + 0x28], esi
jle 0x1401bdc52
mov r14, rsi
mov r12d, 0xfff3
mov r15, rax
nop word [rax + rax]
mov rax, qword [r15 + 0x20]
mov rdi, qword [rax + r14 + 8]
test rdi, rdi
je 0x1401bdc42
cmp byte [rdi + 0x11], 0
je 0x1401bdc15
inc dword [rdi + 0x14]
cmp byte [rdi + 0x12], 0
jne 0x1401bdc15
mov rcx, rdi
call fcn.1401692e0
mov rax, qword [rdi + 8]
and word [rax + 0x28], r12w
movzx eax, r13w
mov rcx, qword [rdi + 8]
shl ax, 2
or word [rcx + 0x28], ax
cmp byte [rdi + 0x11], 0
je 0x1401bdc42
sub dword [rdi + 0x14], 1
jne 0x1401bdc42
mov rcx, rdi
call fcn.1401edd70
inc esi
add r14, 0x20
cmp esi, dword [r15 + 0x28]
jl 0x1401bdbf0
mov r15, qword [rbp - 0x48]
mov edx, r13d
mov rcx, r15
call fcn.14019d210
movsxd rdx, eax
jmp 0x1401c120f
mov rax, qword [r15 + 0xa0]
mov r13d, dword [rsp + 0x68]
test rax, rax
mov qword [rsp + 0x78], rsi
cmovne r15, rax
mov eax, dword [r15 + 0x74]
bt eax, r13d
jb 0x1401bdca4
bts eax, r13d
mov dword [r15 + 0x74], eax
cmp r13d, 1
jne 0x1401bdca4
mov rcx, r15
call fcn.1401b9f40
lea r10, [0x140000000]
mov rax, qword [rbp - 0x38]
inc dword [rax]
mov edi, dword [rax]
mov rax, qword [rbp - 0x50]
movzx eax, byte [rax]
cmp byte [rax + r10 + 0x3186e0], 0x70
jne 0x1401bdcd3
mov r9d, edi
mov r8d, r13d
mov edx, 0xac
mov rcx, rbx
call fcn.1401d12a0
jmp 0x1401bdd1f
mov rax, qword [rbp - 0x70]
test rax, rax
je 0x1401bdd05
lea rdx, [rsp + 0x78]
mov rcx, rax
call fcn.1401a3270
test eax, eax
jne 0x1401bdd05
mov rax, qword [rsp + 0x78]
test rax, rax
js 0x1401bdd05
mov ecx, 0xfffffffe
cmp rax, rcx
jle 0x1401bdd08
mov eax, ecx
jmp 0x1401bdd08
mov rax, rsi
mov r9d, edi
mov dword [rsp + 0x20], eax
mov r8d, r13d
mov edx, 0xad
mov rcx, rbx
call fcn.1401d1310
mov r9d, 1
mov r8d, edi
mov rcx, rbx
lea edx, [r9 + 0x50]
call fcn.1401d12a0
jmp 0x1401c1217
lea rdi, str.normal
lea r10, str.exclusive
test r11, r11
je 0x1401bddd1
mov r9, r10
lea r15, [0x140000000]
sub r9, r11
mov rdx, r11
movzx eax, byte [rdx]
movzx r8d, byte [rdx + r9]
cmp eax, r8d
jne 0x1401bdd77
test eax, eax
jne 0x1401bdd8d
lea r9d, [rax + 1]
jmp 0x1401bddd7
movzx ecx, byte [rax + r15 + 0x3186e0]
movzx eax, byte [r8 + r15 + 0x3186e0]
cmp ecx, eax
jne 0x1401bdd92
inc rdx
jmp 0x1401bdd60
mov r9, rdi
mov rdx, r11
sub r9, r11
nop dword [rax + rax]
movzx eax, byte [rdx]
movzx r8d, byte [rdx + r9]
cmp eax, r8d
jne 0x1401bddb6
test eax, eax
jne 0x1401bddcc
mov r9d, esi
jmp 0x1401bddd7
movzx ecx, byte [rax + r15 + 0x3186e0]
movzx eax, byte [r8 + r15 + 0x3186e0]
cmp ecx, eax
jne 0x1401bddd1
inc rdx
jmp 0x1401bdda0
mov r9d, 0xffffffff
cmp dword [r12 + 8], esi
jne 0x1401bde59
cmp r9d, 0xffffffff
jne 0x1401bddf2
mov rax, qword [rsp + 0x60]
movzx eax, byte [rax + 0x65]
jmp 0x1401bde8c
mov r8, qword [rsp + 0x60]
cmp dword [r8 + 0x28], 2
jle 0x1401bde55
mov edx, 0x40
lea r10d, [rdx - 0x3e]
nop word [rax + rax]
mov rax, qword [r8 + 0x20]
mov rcx, qword [rax + rdx + 8]
mov rax, qword [rcx + 8]
mov rcx, qword [rax]
test r9d, r9d
js 0x1401bde41
cmp byte [rcx + 0x10], sil
jne 0x1401bde41
mov rax, qword [rcx + 0x120]
test rax, rax
je 0x1401bde3d
cmp byte [rax + 0x3f], 2
je 0x1401bde41
mov byte [rcx + 8], r9b
inc r10d
add rdx, 0x20
cmp r10d, dword [r8 + 0x28]
jl 0x1401bde10
lea r10, str.exclusive
mov byte [r8 + 0x65], r9b
mov rax, qword [r14 + 8]
movzx edx, r9b
mov rcx, qword [rax + 8]
mov rax, qword [rcx]
test r9d, r9d
js 0x1401bde88
cmp byte [rax + 0x10], sil
jne 0x1401bde88
mov rcx, qword [rax + 0x120]
test rcx, rcx
je 0x1401bde85
cmp byte [rcx + 0x3f], 2
je 0x1401bde88
mov byte [rax + 8], dl
movzx eax, byte [rax + 8]
cmp al, 1
mov rcx, rbx
cmovne r10, rdi
mov rdx, r10
call fcn.140191770
jmp 0x1401c1217
test r11, r11
jne 0x1401bdeb0
lea r14d, [r11 - 1]
jmp 0x1401bdf80
mov rdi, 0xffffffffffffffff
mov r10, rdi
nop word [rax + rax]
inc r10
cmp byte [r11 + r10], sil
jne 0x1401bdec0
and r10d, 0x3fffffff
lea r11, str.l12_
mov r14d, esi
lea r13, [0x14031aa28]
lea r15, [0x140000000]
nop dword [rax + rax]
cmp r11, r13
je 0x1401bdf7d
mov r8, qword [r11]
test r8, r8
je 0x1401bdf7d
mov r9, qword [rbp - 0x70]
mov edx, r10d
test r10d, r10d
je 0x1401bdf3b
nop dword [rax]
movzx ecx, byte [r9]
dec edx
test cl, cl
je 0x1401bdf3d
movzx eax, byte [r8]
movzx eax, byte [rax + r15 + 0x3186e0]
cmp byte [rcx + r15 + 0x3186e0], al
jne 0x1401bdf3d
inc r9
inc r8
test edx, edx
jg 0x1401bdf10
dec edx
test edx, edx
js 0x1401bdf68
movzx eax, byte [r8]
movzx ecx, byte [rax + r15 + 0x3186e0]
movzx eax, byte [r9]
movzx eax, byte [rax + r15 + 0x3186e0]
cmp eax, ecx
je 0x1401bdf68
inc r14d
add r11, 8
jmp 0x1401bdef0
cmp r14d, 2
jne 0x1401bdf95
mov rax, qword [rsp + 0x60]
mov eax, dword [rax + 0x30]
bt rax, 0x1c
jae 0x1401bdf9a
mov r14d, edi
cmp dword [r12 + 8], esi
jne 0x1401bdf9a
mov r13d, esi
mov dword [r12 + 8], 1
jmp 0x1401bdf9f
cmp r14d, edi
je 0x1401bdf80
mov r13d, dword [rsp + 0x68]
mov rax, qword [rsp + 0x60]
mov edi, dword [rax + 0x28]
sub edi, 1
js 0x1401be099
movsxd rcx, r13d
mov r13, qword [rbp - 0x18]
movsxd r12, edi
mov r15, r12
mov qword [rsp + 0x78], rcx
shl r15, 5
nop word [rax + rax]
mov rax, qword [rax + 0x20]
cmp qword [rax + r15 + 8], rsi
je 0x1401be084
cmp r12, rcx
je 0x1401bdfee
cmp dword [r13 + 8], esi
jne 0x1401be084
mov eax, dword [rbx + 0xcc]
bts eax, edi
mov dword [rbx + 0xcc], eax
cmp edi, 1
je 0x1401be023
mov rax, qword [rbx]
mov rcx, qword [rax + 0x20]
mov rax, qword [rcx + r15 + 8]
cmp byte [rax + 0x11], sil
je 0x1401be023
mov eax, dword [rbx + 0xd0]
bts eax, edi
mov dword [rbx + 0xd0], eax
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x1401be04e
mov r9d, 1
mov dword [rsp + 0x20], r14d
mov r8d, edi
mov rcx, rbx
lea edx, [r9 + 6]
call fcn.14017e5d0
jmp 0x1401be07f
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 7
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], 1
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], rsi
mov rcx, qword [rsp + 0x78]
mov rax, qword [rsp + 0x60]
dec r12
sub r15, 0x20
sub edi, 1
jns 0x1401bdfd0
mov eax, 1
mov rcx, rbx
mov r9d, eax
mov r8d, eax
lea edx, [rax + 0x50]
call fcn.1401d12a0
jmp 0x1401c1217
mov rax, qword [r14 + 8]
mov qword [rsp + 0x78], 0xfffffffffffffffe
mov rcx, qword [rax + 8]
mov rdi, qword [rcx]
test r11, r11
je 0x1401be104
lea rdx, [rsp + 0x78]
mov rcx, r11
call fcn.1401a3270
mov rax, qword [rsp + 0x78]
mov rcx, 0xffffffffffffffff
cmp rax, rcx
cmovl rax, rcx
mov rcx, qword [rdi + 0x120]
mov qword [rdi + 0xc8], rax
test rcx, rcx
je 0x1401be104
mov qword [rcx + 0x20], rax
mov rdx, qword [rdi + 0xc8]
jmp 0x1401c120f
mov r14, qword [r14 + 8]
test r11, r11
jne 0x1401be135
mov rcx, r14
call fcn.14019b150
movsxd rdx, eax
mov rcx, rbx
call fcn.140191610
mov rdx, qword [rbp - 0x50]
jmp 0x1401c122e
lea r9, [0x1403230c8]
mov rdx, r11
sub r9, r11
movzx eax, byte [rdx]
movzx r8d, byte [rdx + r9]
cmp eax, r8d
jne 0x1401be15a
test eax, eax
jne 0x1401be170
mov edi, esi
jmp 0x1401be224
movzx ecx, byte [rax + r10 + 0x3186e0]
movzx eax, byte [r8 + r10 + 0x3186e0]
cmp ecx, eax
jne 0x1401be175
inc rdx
jmp 0x1401be142
lea r9, str.full
mov rdx, r11
sub r9, r11
movzx eax, byte [rdx]
movzx r8d, byte [rdx + r9]
cmp eax, r8d
jne 0x1401be19b
test eax, eax
jne 0x1401be1b1
lea edi, [rax + 1]
jmp 0x1401be224
movzx ecx, byte [rax + r10 + 0x3186e0]
movzx eax, byte [r8 + r10 + 0x3186e0]
cmp ecx, eax
jne 0x1401be1b6
inc rdx
jmp 0x1401be182
lea r9, str.incremental
mov rdx, r11
sub r9, r11
nop dword [rax]
nop word [rax + rax]
movzx r8d, byte [rdx]
movzx eax, byte [r9 + rdx]
cmp r8d, eax
jne 0x1401be1e9
test r8d, r8d
jne 0x1401be1ff
lea edi, [r8 + 2]
jmp 0x1401be224
movzx ecx, byte [rax + r10 + 0x3186e0]
movzx eax, byte [r8 + r10 + 0x3186e0]
cmp eax, ecx
jne 0x1401be204
inc rdx
jmp 0x1401be1d0
lea rdx, [rsp + 0x6c]
mov dword [rsp + 0x6c], esi
mov rcx, r11
call fcn.1401b32b0
cmp dword [rsp + 0x6c], 2
mov ecx, esi
cmovbe ecx, dword [rsp + 0x6c]
movzx edi, cl
mov rax, qword [rsp + 0x60]
mov edx, edi
mov rcx, r14
mov byte [rax + 0x66], dil
call fcn.14019d2a0
test eax, eax
jne 0x1401c1217
lea eax, [rdi - 1]
cmp eax, 1
ja 0x1401c1217
mov r14d, dword [rbx + 0x90]
lea eax, [r14 + 5]
cmp eax, dword [rbx + 0x94]
jle 0x1401be273
mov edx, 5
mov rcx, rbx
call fcn.14017e640
test eax, eax
jne 0x1401be301
movsxd rax, dword [rbx + 0x90]
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
mov qword [rax + rcx*8 + 0x10], rsi
mov qword [rax + rcx*8], 2
mov qword [rax + rcx*8 + 8], 1
lea rdx, [rax + rcx*8]
mov qword [rdx + 0x18], 0x5f
mov dword [rdx + 0x20], 1
mov dword [rdx + 0x24], 4
mov qword [rdx + 0x28], rsi
mov dword [rdx + 0x30], reloc.WS2_32.dll_select
mov qword [rdx + 0x34], 1
mov dword [rdx + 0x3c], esi
mov qword [rdx + 0x40], rsi
mov qword [rdx + 0x48], 0x44
mov qword [rdx + 0x50], 2
mov qword [rdx + 0x58], rsi
mov qword [rdx + 0x60], 0x60
mov qword [rdx + 0x68], 7
mov qword [rdx + 0x70], rsi
mov rsi, rdx
add dword [rbx + 0x90], 5
mov r13d, dword [rsp + 0x68]
lea eax, [r14 + 4]
mov dword [rsi + 0x38], eax
mov edx, r13d
lea eax, [rdi - 1]
mov dword [rsi + 4], r13d
mov rcx, rbx
mov dword [rsi + 0x6c], eax
mov dword [rsi + 0x1c], r13d
mov dword [rsi + 0x64], r13d
call fcn.1401dfd10
jmp 0x1401c1217
test r11, r11
je 0x1401be34d
lea rdx, [rsp + 0x70]
mov rcx, r11
call fcn.1401b32b0
test eax, eax
je 0x1401be34d
mov edi, dword [rsp + 0x70]
test edi, edi
jg 0x1401be352
mov edi, 0x7fffffff
mov r8d, dword [rsp + 0x68]
xor edx, edx
mov rcx, r15
call fcn.140199050
mov esi, 1
mov r8d, edi
mov r9d, esi
mov rcx, rbx
lea edx, [rsi + 0x44]
call fcn.1401d12a0
mov r8d, dword [rsp + 0x68]
lea edx, [rsi + 0x3b]
mov rcx, rbx
call fcn.1401d1230
mov r8d, esi
lea edx, [rsi + 0x50]
mov rcx, rbx
mov edi, eax
call fcn.1401d1230
lea r9d, [rsi - 2]
mov r8d, esi
lea edx, [rsi + 0x52]
mov rcx, rbx
call fcn.1401d12a0
mov r9d, edi
lea edx, [rsi + 0x2f]
mov r8d, esi
mov rcx, rbx
call fcn.1401d12a0
mov edx, edi
mov rcx, rbx
call fcn.1401dbf90
jmp 0x1401c1217
test r11, r11
jne 0x1401be3e7
mov rax, qword [r14 + 0x18]
mov rcx, rbx
movsxd rdx, dword [rax + 0x74]
call fcn.140191610
mov rdx, qword [rbp - 0x50]
jmp 0x1401c122e
lea rdx, [rsp + 0x6c]
mov dword [rsp + 0x6c], esi
mov rcx, r11
call fcn.1401b32b0
mov rcx, qword [r14 + 0x18]
mov eax, dword [rsp + 0x6c]
mov dword [rcx + 0x74], eax
jmp 0x1401bdad0
test r11, r11
jne 0x1401be43c
mov rdi, qword [rsp + 0x60]
test byte [rdi + 0x30], 0x20
je 0x1401be425
mov rcx, qword [r14 + 8]
xor edx, edx
call fcn.14019d5c0
mov esi, eax
movsxd rdx, esi
mov rcx, rbx
call fcn.140191610
mov rdx, qword [rbp - 0x50]
mov rcx, rdi
jmp 0x1401c1233
mov r15d, 1
lea rdx, [rsp + 0x6c]
mov rcx, r11
mov dword [rsp + 0x6c], r15d
call fcn.1401b32b0
movsxd rdi, dword [rsp + 0x6c]
test eax, eax
je 0x1401be4c4
mov rbx, qword [r14 + 8]
cmp byte [rbx + 0x11], 0
mov rsi, qword [rbx + 8]
je 0x1401be47c
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x1401be47c
mov rcx, rbx
call fcn.1401692e0
mov rax, qword [rsi]
mov rdx, rdi
mov r8, qword [rax + 0x118]
test edi, edi
je 0x1401be4b0
jns 0x1401be4ac
mov eax, dword [r8 + 0x28]
add eax, dword [r8 + 0x24]
movsxd rcx, eax
mov rax, rdx
neg rax
shl rax, 0xa
cqo
idiv rcx
mov rdx, rax
mov dword [r8 + 0x20], edx
cmp byte [rbx + 0x11], 0
je 0x1401be4c4
sub dword [rbx + 0x14], r15d
jne 0x1401be4c4
mov rcx, rbx
call fcn.1401edd70
mov rcx, qword [rbp - 0x70]
test edi, edi
mov edx, r15d
setne r8b
call fcn.14017e490
mov r8, qword [rsp + 0x60]
mov rdx, qword [r8 + 0x30]
mov rcx, rdx
and rdx, 0xffffffffffffffdf
or rcx, 0x20
test al, al
cmovne rdx, rcx
mov rcx, r8
mov qword [r8 + 0x30], rdx
call fcn.140194290
jmp 0x1401c1217
test r11, r11
je 0x1401be5db
lea rdx, [rbp - 0x68]
mov rcx, r11
call fcn.1401a3270
mov rax, qword [rbp - 0x68]
mov rcx, qword [rsp + 0x60]
test rax, rax
cmovs rax, qword [0x1403cb5f8]
mov qword [rbp - 0x68], rax
cmp dword [r12 + 8], esi
jne 0x1401be539
mov qword [rcx + 0x40], rax
mov eax, dword [rcx + 0x28]
sub eax, 1
movsxd r14, eax
js 0x1401be5db
mov r13, qword [rbp - 0x30]
mov r15, r14
shl r15, 5
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rcx + 0x20]
mov rdi, qword [rax + r15 + 8]
test rdi, rdi
je 0x1401be5d1
cmp r14, r13
je 0x1401be57a
cmp dword [r12 + 8], esi
jne 0x1401be5d1
mov rax, qword [rbp - 0x68]
mov rcx, qword [rdi + 8]
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x18], rcx
cmp byte [rdi + 0x11], sil
je 0x1401be5a9
inc dword [rdi + 0x14]
cmp byte [rdi + 0x12], sil
jne 0x1401be5a9
mov rcx, rdi
call fcn.1401692e0
mov rax, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x18]
mov rcx, qword [rcx]
mov qword [rcx + 0xa0], rax
call fcn.1401866a0
cmp byte [rdi + 0x11], sil
je 0x1401be5cc
sub dword [rdi + 0x14], 1
jne 0x1401be5cc
mov rcx, rdi
call fcn.1401edd70
mov rcx, qword [rsp + 0x60]
sub r15, 0x20
sub r14, 1
jns 0x1401be560
mov r8, qword [rsp + 0x60]
mov qword [rbp - 0x68], 0xffffffffffffffff
mov rcx, qword [r8 + 0x18]
test rcx, rcx
je 0x1401be5fc
call qword [0x1403cb550]
mov r8, qword [rsp + 0x60]
mov rax, qword [rbp - 0x60]
test rax, rax
je 0x1401be61a
mov rdx, rax
mov rcx, r8
call fcn.1401abe20
mov esi, eax
test eax, eax
js 0x1401be6a1
mov rax, qword [rsp + 0x60]
mov ecx, esi
shl rcx, 5
mov rax, qword [rax + 0x20]
mov rdi, qword [rcx + rax + 8]
test rdi, rdi
je 0x1401be6a1
cmp byte [rdi + 0x11], 0
je 0x1401be64a
inc dword [rdi + 0x14]
cmp byte [rdi + 0x12], 0
jne 0x1401be64a
mov rcx, rdi
call fcn.1401692e0
mov rax, qword [rdi + 8]
mov rcx, qword [rax]
mov rax, qword [rsp + 0x60]
mov rcx, qword [rcx + 0x48]
mov esi, dword [rax + 0x270]
mov rax, qword [rcx]
test rax, rax
jne 0x1401be672
mov dword [rsp + 0x78], select
jmp 0x1401be682
lea r8, [rbp - 0x68]
mov edx, reloc.WS2_32.dll_select
call qword [rax + 0x50]
mov dword [rsp + 0x78], eax
mov rax, qword [rsp + 0x60]
mov dword [rax + 0x270], esi
cmp byte [rdi + 0x11], 0
je 0x1401be6a1
sub dword [rdi + 0x14], 1
jne 0x1401be6a1
mov rcx, rdi
call fcn.1401edd70
mov rdi, qword [rsp + 0x60]
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x1401be6b5
call qword [0x1403cb560]
mov rcx, qword [rsp + 0x78]
test ecx, ecx
jne 0x1401be6c7
mov rdx, qword [rbp - 0x68]
jmp 0x1401c120f
cmp ecx, 0xc
je 0x1401c1217
mov rax, qword [rbp - 0x80]
inc dword [rax + 0x30]
mov dword [rax + 0x18], ecx
jmp 0x1401c1217
test r11, r11
jne 0x1401be701
mov rdi, qword [rsp + 0x60]
mov rcx, rbx
movzx edx, byte [rdi + 0x62]
call fcn.140191610
mov rdx, qword [rbp - 0x50]
mov rcx, rdi
jmp 0x1401c1233
movsx ecx, byte [r11]
lea eax, [rcx - 0x30]
cmp al, 2
ja 0x1401be714
lea edi, [rcx - 0x30]
jmp 0x1401be7a6
mov r8, r11
lea r9, str.file
nop
movzx eax, byte [r9]
movzx edx, cl
cmp edx, eax
jne 0x1401be736
test cl, cl
jne 0x1401be74c
mov edi, 1
jmp 0x1401be7a6
movzx ecx, byte [rax + r10 + 0x3186e0]
movzx eax, byte [rdx + r10 + 0x3186e0]
cmp eax, ecx
jne 0x1401be759
movzx ecx, byte [r8 + 1]
inc r8
inc r9
jmp 0x1401be720
lea r9, [0x14031edc8]
mov rdx, r11
sub r9, r11
nop word [rax + rax]
movzx r8d, byte [rdx]
movzx eax, byte [r9 + rdx]
cmp r8d, eax
jne 0x1401be789
test r8d, r8d
jne 0x1401be79f
lea edi, [r8 + 2]
jmp 0x1401be7a6
movzx ecx, byte [rax + r10 + 0x3186e0]
movzx eax, byte [r8 + r10 + 0x3186e0]
cmp eax, ecx
jne 0x1401be7a4
inc rdx
jmp 0x1401be770
mov edi, esi
mov rbx, qword [r15]
movzx eax, byte [rbx + 0x62]
cmp eax, edi
je 0x1401c1217
mov rcx, r15
call fcn.14017f9a0
test eax, eax
jne 0x1401c1217
mov byte [rbx + 0x62], dil
jmp 0x1401c1217
test r11, r11
jne 0x1401be7eb
mov rdx, qword [0x1403e0c70]
mov rcx, rbx
call fcn.140191770
mov rdx, qword [rbp - 0x50]
jmp 0x1401c122e
cmp byte [r11], sil
je 0x1401be83a
mov rbx, qword [rsp + 0x60]
lea r9, [rsp + 0x70]
mov r8d, 1
mov rdx, r11
mov rax, qword [rbx]
mov rcx, rax
call qword [rax + reloc.WS2_32.dll_getservbyport]
test eax, eax
jne 0x1401be816
cmp dword [rsp + 0x70], esi
jne 0x1401be83a
lea rdx, str.not_a_writable_directory
mov rcx, r15
call fcn.1401a59d0
mov rdx, qword [rbp - 0x50]
mov rcx, rbx
call fcn.1401a2e60
mov rdx, qword [rbp - 0x70]
jmp 0x1401c122e
mov rax, qword [rsp + 0x60]
cmp byte [rax + 0x62], 1
ja 0x1401be84d
mov rcx, r15
call fcn.14017f9a0
mov rcx, qword [0x1403e0c70]
call fcn.140153a90
mov rax, qword [rbp - 0x70]
cmp byte [rax], sil
je 0x1401be87a
mov rdx, rax
lea rcx, [0x14031f590]
call fcn.140153710
mov qword [0x1403e0c70], rax
jmp 0x1401be8dd
mov qword [0x1403e0c70], rsi
jmp 0x1401c1217
test r11, r11
jne 0x1401be8a3
mov rdx, qword [0x1403e0c78]
mov rcx, rbx
call fcn.140191770
mov rdx, qword [rbp - 0x50]
jmp 0x1401c122e
cmp byte [r11], sil
je 0x1401be8f4
mov rax, qword [rsp + 0x60]
lea r9, [rsp + 0x70]
mov r8d, 1
mov rdx, r11
mov rax, qword [rax]
mov rcx, rax
call qword [rax + reloc.WS2_32.dll_getservbyport]
test eax, eax
jne 0x1401be8ce
cmp dword [rsp + 0x70], esi
jne 0x1401be8f4
lea rdx, str.not_a_writable_directory
mov rcx, r15
call fcn.1401a59d0
mov rdx, qword [rbp - 0x50]
mov rcx, qword [rsp + 0x60]
call fcn.1401a2e60
mov rdx, qword [rbp - 0x70]
jmp 0x1401c122e
mov rcx, qword [0x1403e0c78]
call fcn.140153a90
mov rax, qword [rbp - 0x70]
cmp byte [rax], sil
je 0x1401be921
mov rdx, rax
lea rcx, [0x14031f590]
call fcn.140153710
mov qword [0x1403e0c78], rax
jmp 0x1401be8dd
mov qword [0x1403e0c78], rsi
jmp 0x1401c1217
test r11, r11
jne 0x1401be94b
movzx edx, byte [r14 + 0x10]
mov rcx, rbx
dec rdx
call fcn.140191610
mov rdx, qword [rbp - 0x50]
jmp 0x1401c122e
mov rdx, qword [rsp + 0x60]
cmp byte [rdx + 0x61], sil
jne 0x1401be962
lea rdx, str.Safety_level_may_not_be_changed_inside_a_transaction
jmp 0x1401be8d5
cmp dword [rsp + 0x68], 1
je 0x1401c1217
mov r8b, 1
xor edx, edx
mov rcx, r11
call fcn.14017e490
mov rcx, qword [rsp + 0x60]
inc eax
mov r10d, 1
and eax, 7
mov byte [r14 + 0x11], r10b
cmove eax, r10d
mov byte [r14 + 0x10], al
call fcn.140194290
jmp 0x1401c1217
test r11, r11
jne 0x1401be9d8
mov rdx, r13
mov rcx, rbx
call fcn.140194ac0
mov rax, qword [r13 + 0x10]
mov rcx, rbx
mov rdi, qword [rsp + 0x60]
test qword [rdi + 0x30], rax
setne sil
mov rdx, rsi
call fcn.140191610
mov rdx, qword [rbp - 0x50]
mov rcx, rdi
jmp 0x1401c1233
mov rcx, qword [rsp + 0x60]
mov rdi, qword [r13 + 0x10]
btr rdi, 0xe
cmp byte [rcx + 0x61], sil
mov rcx, r11
cmovne rdi, qword [r13 + 0x10]
xor r8d, r8d
lea edx, [r8 + 1]
call fcn.14017e490
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rdx + 0x30]
test al, al
je 0x1401bea14
or rdi, rcx
mov qword [rdx + 0x30], rdi
jmp 0x1401bea31
mov rax, rdi
not rax
and rax, rcx
mov qword [rdx + 0x30], rax
cmp rdi, 0x80000
jne 0x1401bea31
mov qword [rdx + 0x2d8], rsi
mov edx, reloc.OLEAUT32.dll_RegisterTypeLib
mov rcx, rbx
call fcn.1401d11c0
mov rcx, qword [rsp + 0x60]
call fcn.140194290
jmp 0x1401c1217
test r11, r11
je 0x1401c1217
mov rdx, qword [rbp - 0x60]
mov rcx, r15
call fcn.14019fae0
mov r9, qword [rbp - 0x60]
mov edx, 2
mov r8, qword [rbp - 0x70]
mov rcx, r15
call fcn.1401b89e0
mov qword [rsp + 0x78], rax
mov r15, rax
test rax, rax
je 0x1401c1217
mov r14, qword [rax + 0x10]
mov r12d, esi
mov dword [rsp + 0x6c], esi
test r14, r14
je 0x1401beab5
nop dword [rax + rax]
mov ecx, dword [r14 + 0x64]
and cl, 3
cmp cl, 2
je 0x1401beab5
mov r14, qword [r14 + 0x28]
test r14, r14
jne 0x1401beaa0
mov rcx, qword [rbp - 0x38]
mov rdx, r15
mov dword [rcx], 7
mov rcx, qword [rbp - 0x80]
call fcn.1401dfd50
mov rax, qword [rsp + 0x78]
mov edi, esi
mov r15, qword [r15 + 8]
movzx ecx, word [rax + 0x46]
cmp si, cx
jge 0x1401c1217
lea rax, str.issisii
mov rdx, 0xffffffffffffffff
mov qword [rbp - 0x48], rax
nop word [rax + rax]
movzx r8d, word [r15 + 0x1c]
mov r11d, esi
test r8b, 0x62
je 0x1401beb3f
cmp qword [r13 + 0x10], rsi
jne 0x1401beb21
inc r12d
mov dword [rsp + 0x6c], r12d
jmp 0x1401bec30
test r8b, 0x20
je 0x1401beb2f
mov r11d, 2
jmp 0x1401beb3f
movzx r11d, r8b
and r11d, 0x40
or r11d, 0x20
shr r11d, 5
test r8b, 1
jne 0x1401beb4a
mov r10d, esi
jmp 0x1401beb8d
test r14, r14
jne 0x1401beb55
lea r10d, [r14 + 1]
jmp 0x1401beb8d
mov eax, 1
mov r10d, eax
mov edx, eax
cmp ax, cx
jg 0x1401beb86
movsx r9, cx
mov rcx, qword [r14 + 8]
nop dword [rax]
movsx eax, word [rcx]
cmp eax, edi
je 0x1401beb86
inc r10d
inc rdx
add rcx, 2
cmp rdx, r9
jle 0x1401beb70
mov rdx, 0xffffffffffffffff
mov rax, qword [r15 + 8]
test rax, rax
je 0x1401beba2
cmp r11d, 2
jae 0x1401beba2
mov r12, qword [rax + 8]
jmp 0x1401beba5
mov r12, rsi
mov rcx, qword [r15]
test r8b, 4
jne 0x1401bebb7
lea rdx, [0x140348ec3]
jmp 0x1401bebd0
mov rax, rdx
nop word [rax + rax]
inc rax
cmp byte [rcx + rax], sil
jne 0x1401bebc0
lea rdx, [rcx + 1]
add rdx, rax
cmp byte [r15 + 0x18], sil
lea r8, str.issisi
mov dword [rsp + 0x48], r11d
mov eax, esi
mov dword [rsp + 0x40], r10d
setne al
mov qword [rsp + 0x38], r12
mov r9d, edi
sub r9d, dword [rsp + 0x6c]
cmp qword [r13 + 0x10], rsi
mov dword [rsp + 0x30], eax
cmovne r8, qword [rbp - 0x48]
mov qword [rsp + 0x28], rdx
mov edx, 1
mov qword [rsp + 0x20], rcx
mov rcx, rbx
call fcn.1401ddd50
mov rax, qword [rsp + 0x78]
mov rdx, 0xffffffffffffffff
mov r12d, dword [rsp + 0x6c]
movzx ecx, word [rax + 0x46]
inc edi
movsx eax, cx
add r15, 0x20
cmp edi, eax
jl 0x1401beb00
jmp 0x1401c1217
test r11, r11
je 0x1401c1217
mov r14, qword [rbp - 0x60]
mov rdx, r11
mov rcx, qword [rsp + 0x60]
mov r8, r14
call fcn.1401acc80
mov rdi, rax
test rax, rax
jne 0x1401becbb
mov r8, qword [rbp - 0x70]
lea edx, [rax + 2]
mov r9, r14
mov rcx, r15
call fcn.1401b89e0
test rax, rax
je 0x1401c1217
test byte [rax + 0x40], 0x80
je 0x1401c1217
mov rdi, qword [rax + 0x10]
test rdi, rdi
je 0x1401c1217
nop dword [rax]
mov eax, dword [rdi + 0x64]
and al, 3
cmp al, 2
je 0x1401becb2
mov rdi, qword [rdi + 0x28]
test rdi, rdi
jne 0x1401beca0
test rdi, rdi
je 0x1401c1217
mov rcx, qword [rdi + 0x30]
mov r9, 0xffffffffffff8000
test rcx, rcx
je 0x1401becec
mov rax, qword [rsp + 0x60]
mov r9d, esi
mov rax, qword [rax + 0x20]
add rax, 0x18
cmp qword [rax], rcx
je 0x1401becec
inc r9d
lea rax, [rax + 0x20]
cmp qword [rax], rcx
jne 0x1401bece0
mov rax, qword [r13 + 0x10]
test rax, rax
je 0x1401becfc
movzx r14d, word [rdi + 0x60]
jmp 0x1401bed01
movzx r14d, word [rdi + 0x5e]
test rax, rax
mov edx, 6
mov ecx, 3
cmove edx, ecx
mov dword [r15 + 0x38], edx
mov rax, qword [r15 + 0xa0]
mov r8, qword [rdi + 0x18]
test rax, rax
mov qword [rsp + 0x78], r8
cmovne r15, rax
mov eax, dword [r15 + 0x74]
bt eax, r9d
jb 0x1401bed51
bts eax, r9d
mov dword [r15 + 0x74], eax
cmp r9d, 1
jne 0x1401bed51
mov rcx, r15
call fcn.1401b9f40
mov r8, qword [rsp + 0x78]
movzx r12d, r14w
mov r15d, esi
test r12, r12
je 0x1401c1217
mov r14, rsi
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rdi + 8]
movsx rdx, word [rax + r14*2]
test dx, dx
jns 0x1401bed83
mov rcx, rsi
jmp 0x1401bed92
mov rax, qword [r8 + 8]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax]
mov qword [rsp + 0x28], rcx
lea r8, str.iisX
mov dword [rsp + 0x20], edx
mov r9d, r15d
mov edx, 1
mov rcx, rbx
call fcn.1401ddd50
cmp qword [r13 + 0x10], rsi
je 0x1401bedf2
movzx eax, word [rdi + 0x5e]
lea r8, str.isiX
mov rcx, qword [rdi + 0x40]
cmp r15d, eax
mov rax, qword [rdi + 0x38]
mov edx, esi
setb dl
mov dword [rsp + 0x28], edx
mov edx, 4
movzx r9d, byte [rax + r14]
mov rax, qword [rcx + r14*8]
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.1401ddd50
mov rax, qword [rbp - 0x38]
movsxd rcx, dword [rbx + 0x90]
mov edx, dword [rax]
cmp dword [rbx + 0x94], ecx
jg 0x1401bee21
mov r9d, edx
mov dword [rsp + 0x20], esi
mov edx, 0x51
mov rcx, rbx
lea r8d, [rdx - 0x50]
call fcn.14017e5d0
jmp 0x1401bee54
lea eax, [rcx + 1]
mov r10d, 1
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x51
mov dword [rax + rcx*8 + 4], r10d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], rsi
mov r8, qword [rsp + 0x78]
inc r15d
inc r14
cmp r14, r12
jl 0x1401bed70
jmp 0x1401c1217
test r11, r11
je 0x1401c1217
mov r8, qword [rbp - 0x60]
mov rdx, r11
mov rcx, qword [rsp + 0x60]
call fcn.1401acda0
mov rdi, rax
test rax, rax
je 0x1401c1217
mov rdx, qword [rax + 0x70]
mov r8, 0xffffffffffff8000
test rdx, rdx
je 0x1401beecc
mov rax, qword [rsp + 0x60]
mov r8d, esi
mov rcx, qword [rax + 0x20]
add rcx, 0x18
cmp qword [rcx], rdx
je 0x1401beecc
nop dword [rax + rax]
inc r8d
lea rcx, [rcx + 0x20]
cmp qword [rcx], rdx
jne 0x1401beec0
mov rax, qword [rbp - 0x38]
mov dword [rax], 5
mov rax, qword [r15 + 0xa0]
test rax, rax
cmovne r15, rax
mov eax, dword [r15 + 0x74]
bt eax, r8d
jb 0x1401bef04
bts eax, r8d
mov dword [r15 + 0x74], eax
cmp r8d, 1
jne 0x1401bef04
mov rcx, r15
call fcn.1401b9f40
mov rdi, qword [rdi + 0x10]
mov r14d, esi
test rdi, rdi
je 0x1401c1217
lea r15, [0x140323228]
lea r12, [0x14032322c]
lea r13, [0x14031e844]
nop dword [rax]
mov eax, dword [rdi + 0x64]
lea r8, str.isisi
mov edx, esi
mov qword [rbp + 0x20], r15
cmp qword [rdi + 0x48], rdx
mov ecx, esi
mov qword [rbp + 0x28], r12
mov r9d, r14d
setne dl
mov qword [rbp + 0x30], r13
mov dword [rsp + 0x38], edx
and eax, 3
cmp byte [rdi + 0x62], sil
mov edx, 1
setne cl
mov rax, qword [rbp + rax*8 + 0x20]
mov qword [rsp + 0x30], rax
mov rax, qword [rdi]
mov dword [rsp + 0x28], ecx
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.1401ddd50
mov rdi, qword [rdi + 0x28]
inc r14d
test rdi, rdi
jne 0x1401bef30
jmp 0x1401c1217
mov rax, qword [rbp - 0x38]
mov rdx, qword [rsp + 0x60]
mov dword [rax], 3
cmp dword [rdx + 0x28], esi
jle 0x1401c1217
mov rdi, rsi
lea r14, [0x140318974]
nop dword [rax + rax]
mov rdx, qword [rdx + 0x20]
mov rax, qword [rdx + rdi + 8]
test rax, rax
je 0x1401bf00a
mov rax, qword [rax + 8]
mov rcx, qword [rax]
mov rax, r14
cmp byte [rcx + 0x13], 0
jne 0x1401befe5
mov rax, qword [rcx + 0xd0]
mov qword [rsp + 0x28], rax
lea r8, [0x140323238]
mov rax, qword [rdx + rdi]
mov r9d, esi
mov edx, 1
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.1401ddd50
mov rdx, qword [rsp + 0x60]
inc esi
add rdi, 0x20
cmp esi, dword [rdx + 0x28]
jl 0x1401befc0
jmp 0x1401c1217
mov rax, qword [rbp - 0x38]
mov rdx, qword [rsp + 0x60]
mov dword [rax], 2
mov rdi, qword [rdx + 0x250]
test rdi, rdi
je 0x1401c1217
nop
mov rax, qword [rdi + 0x10]
lea r8, [0x14032323c]
mov r9d, esi
mov edx, 1
mov rcx, qword [rax]
mov qword [rsp + 0x20], rcx
mov rcx, rbx
call fcn.1401ddd50
mov rdi, qword [rdi]
inc esi
test rdi, rdi
jne 0x1401bf040
jmp 0x1401c1217
mov rax, qword [rsp + 0x60]
lea r14, [0x1403e0cd0]
mov edx, 6
mov qword [rsp + 0x78], r14
lea r15, [0x1403e0d88]
mov esi, dword [rax + 0x2c]
mov rax, qword [rbp - 0x38]
shr esi, 5
and esi, 1
mov dword [rax], edx
nop
mov rdi, qword [r14]
test rdi, rdi
je 0x1401bf0cf
mov r14d, 1
nop
mov r9d, esi
mov r8d, r14d
mov rdx, rdi
mov rcx, rbx
call fcn.14018ad90
mov rdi, qword [rdi + 0x40]
test rdi, rdi
jne 0x1401bf0b0
mov r14, qword [rsp + 0x78]
add r14, 8
mov qword [rsp + 0x78], r14
cmp r14, r15
jl 0x1401bf0a0
mov rdx, qword [rsp + 0x60]
mov rdi, qword [rdx + 0x238]
test rdi, rdi
je 0x1401c1217
mov rdx, qword [rdi + 0x10]
mov r9d, esi
xor r8d, r8d
mov rcx, rbx
call fcn.14018ad90
mov rdi, qword [rdi]
test rdi, rdi
jne 0x1401bf0f2
jmp 0x1401c1217
mov rax, qword [rbp - 0x38]
mov rdx, qword [rsp + 0x60]
mov dword [rax], 1
mov rdi, qword [rdx + 0x208]
test rdi, rdi
je 0x1401c1217
mov r9, qword [rdi + 0x10]
lea r8, [0x14035229c]
mov edx, 1
mov rcx, rbx
mov r9, qword [r9 + 8]
call fcn.1401ddd50
mov rdi, qword [rdi]
test rdi, rdi
jne 0x1401bf130
jmp 0x1401c1217
lea rdi, str.analysis_limit
lea rsi, str.onoffalseyestruextrafull
nop word [rax + rax]
mov r9, qword [rdi]
lea r8, [0x14035229c]
mov edx, 1
mov rcx, rbx
call fcn.1401ddd50
add rdi, 0x18
cmp rdi, rsi
jl 0x1401bf170
jmp 0x1401c1217
test r11, r11
je 0x1401c1217
mov r8, qword [rbp - 0x60]
mov rdx, r11
mov rcx, qword [rsp + 0x60]
call fcn.1401acda0
mov r13, rax
test rax, rax
je 0x1401c1217
mov rdi, qword [rax + 0x20]
test rdi, rdi
je 0x1401c1217
mov rcx, qword [rax + 0x70]
mov rdx, 0xffffffffffff8000
test rcx, rcx
je 0x1401bf1fb
mov rax, qword [rsp + 0x60]
mov edx, esi
mov rax, qword [rax + 0x20]
add rax, 0x18
cmp qword [rax], rcx
je 0x1401bf1fb
nop dword [rax]
inc edx
lea rax, [rax + 0x20]
cmp qword [rax], rcx
jne 0x1401bf1f0
mov rcx, qword [rbp - 0x38]
mov eax, 8
mov r12d, esi
mov dword [rcx], eax
mov rax, qword [r15 + 0xa0]
test rax, rax
cmovne r15, rax
mov eax, dword [r15 + 0x74]
bt eax, edx
jb 0x1401bf234
bts eax, edx
mov dword [r15 + 0x74], eax
cmp edx, 1
jne 0x1401bf234
mov rcx, r15
call fcn.1401b9f40
lea r9, str.NONE
nop dword [rax + rax]
cmp dword [rdi + 0x28], 0
mov r14d, esi
jle 0x1401bf345
lea r15, [rdi + 0x40]
mov esi, 1
movzx ecx, byte [rdi + 0x2d]
sub ecx, 7
je 0x1401bf28f
sub ecx, esi
je 0x1401bf286
sub ecx, esi
je 0x1401bf27d
cmp ecx, esi
je 0x1401bf274
lea r8, str.NO_ACTION
jmp 0x1401bf296
lea r8, str.CASCADE
jmp 0x1401bf296
lea r8, str.SET_DEFAULT
jmp 0x1401bf296
lea r8, str.SET_NULL
jmp 0x1401bf296
lea r8, str.RESTRICT
movzx ecx, byte [rdi + 0x2e]
sub ecx, 7
je 0x1401bf2cf
sub ecx, esi
je 0x1401bf2c6
sub ecx, esi
je 0x1401bf2bd
cmp ecx, esi
je 0x1401bf2b4
lea rax, str.NO_ACTION
jmp 0x1401bf2d6
lea rax, str.CASCADE
jmp 0x1401bf2d6
lea rax, str.SET_DEFAULT
jmp 0x1401bf2d6
lea rax, str.SET_NULL
jmp 0x1401bf2d6
lea rax, str.RESTRICT
mov rcx, qword [r13 + 8]
movsxd rdx, dword [r15]
mov qword [rsp + 0x50], r9
mov r9d, r12d
mov qword [rsp + 0x48], r8
lea r8, str.iissssss
mov qword [rsp + 0x40], rax
mov rax, qword [r15 + 8]
mov qword [rsp + 0x38], rax
shl rdx, 5
mov rax, qword [rdx + rcx]
mov edx, esi
mov qword [rsp + 0x30], rax
mov rcx, rbx
mov rax, qword [rdi + 0x10]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r14d
call fcn.1401ddd50
inc r14d
lea r9, str.NONE
add r15, 0x10
cmp r14d, dword [rdi + 0x28]
jl 0x1401bf256
xor esi, esi
lea r9, str.NONE
mov rdi, qword [rdi + 8]
inc r12d
test rdi, rdi
jne 0x1401bf240
jmp 0x1401c1217
mov rdx, qword [rbp - 0x38]
shl rdi, 5
mov eax, dword [rdx]
lea r14d, [rax + 5]
lea ecx, [rax + 1]
mov dword [rbp - 0x28], r14d
inc r14d
mov dword [rsp + 0x68], ecx
mov dword [rdx], r14d
mov rdx, qword [rsp + 0x60]
mov dword [rbp - 0x54], r14d
mov rax, qword [rdx + 0x20]
mov rcx, qword [rdi + rax + 0x18]
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x1401c1217
mov rdi, qword [rbp - 0x60]
mov rax, 0xffffffffffff8000
test r11, r11
je 0x1401bf3cc
mov r9, rdi
mov r8, r11
xor edx, edx
mov rcx, r15
call fcn.1401b89e0
mov rdx, qword [rsp + 0x60]
mov r13, rax
mov rax, 0xffffffffffff8000
mov rcx, rsi
jmp 0x1401bf3d3
mov r13, qword [rcx + 0x10]
mov rcx, qword [rcx]
mov qword [rbp - 0x10], rcx
mov qword [rsp + 0x78], r13
test r13, r13
je 0x1401bfbc5
cmp qword [r13 + 0x20], rsi
je 0x1401bfbc5
mov rcx, qword [r13 + 0x70]
mov edi, eax
mov r12, rax
test rcx, rcx
je 0x1401bf41e
mov rax, qword [rdx + 0x20]
mov edi, esi
add rax, 0x18
mov r12, rsi
cmp qword [rax], rcx
je 0x1401bf41e
nop
inc edi
lea rax, [rax + 0x20]
inc r12
cmp qword [rax], rcx
jne 0x1401bf410
mov rax, qword [rdx + 0x20]
mov rcx, r15
shl r12, 5
mov qword [rbp - 0x68], r12
mov rax, qword [r12 + rax]
mov qword [rbp - 0x60], rax
mov rax, qword [r15 + 0xa0]
test rax, rax
cmovne rcx, rax
mov eax, dword [rcx + 0x74]
bt eax, edi
jb 0x1401bf45d
bts eax, edi
mov dword [rcx + 0x74], eax
cmp edi, 1
jne 0x1401bf462
call fcn.1401b9f40
jmp 0x1401bf48e
cmp edi, 1
je 0x1401bf48e
mov rax, qword [r15]
mov rcx, qword [rax + 0x20]
mov rax, qword [rcx + r12 + 8]
cmp byte [rax + 0x11], sil
je 0x1401bf48e
mov rax, qword [r13]
xor r9d, r9d
mov r8d, dword [r13 + 0x38]
mov edx, edi
mov rcx, r15
mov qword [rsp + 0x20], rax
call fcn.140181120
mov rax, qword [rbp - 0x38]
movsx ecx, word [r13 + 0x46]
add ecx, r14d
cmp ecx, dword [rax]
jle 0x1401bf4a0
mov dword [rax], ecx
mov r9, r13
mov dword [rsp + 0x20], 0x62
mov r8d, edi
xor edx, edx
mov rcx, r15
call fcn.1401b9b90
mov r8, qword [r13]
mov rcx, rbx
mov edx, dword [rsp + 0x68]
call fcn.1401dc470
mov r13, qword [r13 + 0x20]
mov r15d, 1
test r13, r13
je 0x1401bf64c
nop dword [rax + rax]
mov r8, qword [rbp - 0x60]
mov rdx, qword [r13 + 0x10]
mov rcx, qword [rsp + 0x60]
call fcn.1401acda0
mov r14, rax
test rax, rax
je 0x1401bf63c
mov rax, qword [rbp - 0x80]
mov qword [rbp - 0x30], rsi
cmp edi, 1
je 0x1401bf53a
mov rcx, qword [rax]
mov rdx, qword [rcx + 0x20]
mov rcx, qword [rdx + r12 + 8]
cmp byte [rcx + 0x11], sil
je 0x1401bf53a
mov rcx, qword [r14]
xor r9d, r9d
mov r8d, dword [r14 + 0x38]
mov edx, edi
mov qword [rsp + 0x20], rcx
mov rcx, rax
call fcn.140181120
mov rax, qword [rbp - 0x80]
lea r9, [rbp - 0x30]
mov qword [rsp + 0x20], rsi
mov r8, r13
mov rdx, r14
mov rcx, rax
call fcn.1401aee60
test eax, eax
jne 0x1401c1217
mov r12, qword [rbp - 0x30]
test r12, r12
jne 0x1401bf581
mov rcx, qword [rbp - 0x80]
mov r9, r14
mov r8d, edi
mov dword [rsp + 0x20], 0x62
mov edx, r15d
call fcn.1401b9b90
jmp 0x1401bf638
movsxd rcx, dword [rbx + 0x90]
mov edx, dword [r12 + 0x58]
cmp dword [rbx + 0x94], ecx
jg 0x1401bf5ae
mov r9d, edx
mov dword [rsp + 0x20], edi
mov edx, 0x62
mov r8d, r15d
mov rcx, rbx
call fcn.14017e5d0
jmp 0x1401bf5db
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x62
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], edi
mov qword [rax + rcx*8 + 0x10], rsi
mov rax, qword [rbp - 0x80]
mov rdx, r12
mov rcx, rax
mov r14, qword [rax + 0x10]
call fcn.1401b7920
mov r8, rax
test rax, rax
je 0x1401bf638
mov rax, qword [r14]
cmp byte [rax + 0x63], sil
je 0x1401bf61c
cmp qword [rax + 0x2e0], rsi
jne 0x1401bf638
add dword [r8], 0xffffffff
jne 0x1401bf638
mov rcx, qword [r8 + 0x10]
mov rdx, r8
call fcn.1401a2e60
jmp 0x1401bf638
movsxd rax, dword [r14 + 0x90]
lea rcx, [rax + rax*2]
mov rax, qword [r14 + 0x88]
mov byte [rax + rcx*8 - 0x17], 0xf7
mov qword [rax + rcx*8 - 8], r8
mov r12, qword [rbp - 0x68]
mov r13, qword [r13 + 8]
inc r15d
test r13, r13
jne 0x1401bf4e0
mov rdi, qword [rbp - 0x80]
cmp dword [rdi + 0x34], r15d
jge 0x1401bf65a
mov dword [rdi + 0x34], r15d
movsxd rdx, dword [rbx + 0x90]
mov dword [rsp + 0x6c], edx
cmp dword [rbx + 0x94], edx
jg 0x1401bf689
xor r9d, r9d
mov dword [rsp + 0x20], esi
xor r8d, r8d
mov rcx, rbx
lea edx, [r9 + 0x25]
call fcn.14017e5d0
mov dword [rsp + 0x6c], eax
jmp 0x1401bf6af
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rbx + 0x90], eax
mov rax, qword [rbx + 0x88]
mov qword [rax + rcx*8], 0x25
mov qword [rax + rcx*8 + 8], rsi
mov qword [rax + rcx*8 + 0x10], rsi
mov rax, qword [rsp + 0x78]
mov dword [rbp - 0x58], 1
mov r12, qword [rax + 0x20]
mov qword [rbp - 0x68], r12
test r12, r12
je 0x1401bfb2e
mov r13, qword [rsp + 0x60]
mov r8, qword [rbp - 0x60]
mov rcx, r13
mov rdx, qword [r12 + 0x10]
call fcn.1401acda0
mov qword [rbp - 0x48], rax
mov r13, rax
mov qword [rbp - 0x30], rsi
mov r14, rsi
mov qword [rbp - 0x20], rsi
test rax, rax
je 0x1401bf718
lea rax, [rbp - 0x20]
mov r8, r12
lea r9, [rbp - 0x30]
mov qword [rsp + 0x20], rax
mov rdx, r13
mov rcx, rdi
call fcn.1401aee60
mov r14, qword [rbp - 0x20]
dec dword [rdi + 0x44]
mov r15d, dword [rdi + 0x44]
mov edi, dword [r12 + 0x28]
test edi, edi
jle 0x1401bf7e4
mov edi, dword [rbp - 0x54]
mov r13, r14
add r12, 0x40
nop word [rax + rax]
mov rdx, qword [rsp + 0x78]
test r14, r14
mov rax, r12
mov dword [rsp + 0x20], edi
cmovne rax, r13
mov rcx, rbx
xor r8d, r8d
mov r9d, dword [rax]
call fcn.1401a71b0
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x1401bf789
mov r9d, r15d
mov dword [rsp + 0x20], esi
mov r8d, edi
mov edx, getprotobynumber
mov rcx, rbx
call fcn.14017e5d0
jmp 0x1401bf7b6
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], getprotobynumber
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], rsi
mov rax, qword [rbp - 0x68]
inc edi
mov r8d, dword [rbp - 0x54]
add r12, 0x10
add r13, 4
mov ecx, dword [rax + 0x28]
mov eax, edi
sub eax, r8d
cmp eax, ecx
jl 0x1401bf740
mov r12, qword [rbp - 0x68]
mov edi, ecx
mov r13, qword [rbp - 0x48]
jmp 0x1401bf7e8
mov r8d, dword [rbp - 0x54]
mov rdx, qword [rbp - 0x30]
test rdx, rdx
je 0x1401bf847
mov r13, qword [rsp + 0x60]
mov rcx, r13
call fcn.1401b4910
mov r9d, dword [r12 + 0x28]
mov edx, 0x5d
mov r8d, dword [rbp - 0x54]
mov rcx, rbx
mov dword [rsp + 0x30], edi
mov edi, dword [rbp - 0x28]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], edi
call fcn.1401d1380
mov dword [rsp + 0x28], esi
mov r9d, r15d
mov dword [rsp + 0x20], edi
mov edx, 0x1e
mov edi, dword [rbp - 0x58]
mov rcx, rbx
mov r8d, edi
call fcn.1401d14b0
jmp 0x1401bf902
mov edi, dword [rbp - 0x58]
test r13, r13
je 0x1401bf8fd
movsxd rcx, dword [rbx + 0x90]
lea edx, [rcx + 2]
cmp dword [rbx + 0x94], ecx
jg 0x1401bf87f
mov dword [rsp + 0x20], r8d
mov r9d, edx
mov r8d, edi
mov edx, 0x1f
mov rcx, rbx
call fcn.14017e5d0
jmp 0x1401bf8ac
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x1f
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], rsi
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x1401bf8d3
xor r8d, r8d
mov dword [rsp + 0x20], esi
mov r9d, r15d
mov rcx, rbx
lea edx, [r8 + 0xb]
call fcn.14017e5d0
jmp 0x1401bf8fd
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov qword [rax + rcx*8], select
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], rsi
mov r13, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x78]
movsxd rcx, dword [rbx + 0x90]
mov eax, dword [rbx + 0x94]
test byte [rdx + 0x40], 0x80
jne 0x1401bf95a
cmp eax, ecx
jg 0x1401bf93c
mov r9d, dword [rsp + 0x68]
xor r8d, r8d
inc r9d
mov dword [rsp + 0x20], esi
mov edx, 0x83
mov rcx, rbx
call fcn.14017e5d0
jmp 0x1401bf9aa
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov qword [rax + rcx*8], 0x83
jmp 0x1401bf997
cmp eax, ecx
jg 0x1401bf97b
mov r9d, dword [rsp + 0x68]
xor r8d, r8d
inc r9d
mov dword [rsp + 0x20], esi
mov rcx, rbx
lea edx, [r8 + 0x48]
call fcn.14017e5d0
jmp 0x1401bf9aa
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov qword [rax + rcx*8], 0x48
mov edx, dword [rsp + 0x68]
mov qword [rax + rcx*8 + 0x10], rsi
inc edx
mov dword [rax + rcx*8 + 0xc], esi
mov dword [rax + rcx*8 + 8], edx
mov edx, dword [rsp + 0x68]
lea eax, [rdi - 1]
mov r9, qword [r12 + 0x10]
lea r8, [0x140323254]
add edx, 2
mov dword [rsp + 0x20], eax
mov rcx, rbx
call fcn.1401ddd50
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x1401bf9f8
mov r8d, dword [rsp + 0x68]
mov r9d, 4
mov rcx, rbx
mov dword [rsp + 0x20], esi
lea edx, [r9 + 0x4d]
call fcn.14017e5d0
jmp 0x1401bfa29
mov edx, dword [rsp + 0x68]
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0x51
mov dword [rax + rcx*8 + 4], edx
mov qword [rax + rcx*8 + 8], 4
mov qword [rax + rcx*8 + 0x10], rsi
mov rcx, qword [rbx + 0x18]
not r15d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1401bfa45
mov r8d, r15d
mov rdx, rbx
call fcn.14018f350
jmp 0x1401bfa56
mov rcx, qword [rcx + 0x50]
mov eax, dword [rbx + 0x90]
movsxd r8, r15d
mov dword [rcx + r8*4], eax
test r14, r14
je 0x1401bfb13
cmp qword [r13 + 0x2e0], rsi
je 0x1401bfa78
mov rdx, r14
mov rcx, r13
call fcn.140182360
jmp 0x1401bfb13
cmp r14, qword [r13 + 0x1d0]
jae 0x1401bfab9
cmp r14, qword [r13 + 0x1c0]
jb 0x1401bfa9d
mov rax, qword [r13 + 0x1b8]
mov qword [r14], rax
mov qword [r13 + 0x1b8], r14
jmp 0x1401bfb13
cmp r14, qword [r13 + 0x1c8]
jb 0x1401bfab9
mov rax, qword [r13 + 0x1a8]
mov qword [r14], rax
mov qword [r13 + 0x1a8], r14
jmp 0x1401bfb13
cmp dword [reloc.WS2_32.dll_accept], esi
je 0x1401bfb0a
mov rcx, qword [0x1403e0e40]
test rcx, rcx
je 0x1401bfad3
call qword [0x1403cb550]
mov rcx, r14
call qword [0x1403cb508]
dec qword [0x1403e0dd8]
movsxd rcx, eax
sub qword [0x1403e0d90], rcx
mov rcx, r14
call qword [0x1403cb4f8]
mov rcx, qword [0x1403e0e40]
test rcx, rcx
je 0x1401bfb13
call qword [0x1403cb560]
jmp 0x1401bfb13
mov rcx, r14
call qword [0x1403cb4f8]
mov r12, qword [r12 + 8]
inc edi
mov dword [rbp - 0x58], edi
mov rdi, qword [rbp - 0x80]
mov qword [rbp - 0x68], r12
test r12, r12
jne 0x1401bf6d1
mov edi, dword [rsp + 0x6c]
movsxd rcx, dword [rbx + 0x90]
lea edx, [rdi + 1]
cmp dword [rbx + 0x94], ecx
jg 0x1401bfb5c
xor r8d, r8d
mov dword [rsp + 0x20], esi
mov r9d, edx
mov rcx, rbx
lea edx, [r8 + 5]
call fcn.14017e5d0
jmp 0x1401bfb85
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov qword [rax + rcx*8], 5
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], rsi
mov edx, dword [rbx + 0x90]
test edi, edi
jns 0x1401bfb92
lea edi, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x63], sil
je 0x1401bfba4
lea rax, [0x1403e1130]
jmp 0x1401bfbb6
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea rax, [rax + rcx*8]
mov r14d, dword [rbp - 0x54]
mov rdi, qword [rbp - 0x60]
mov rcx, qword [rbp - 0x10]
mov dword [rax + 8], edx
test rcx, rcx
je 0x1401c1217
mov r15, qword [rbp - 0x80]
mov rdx, qword [rsp + 0x60]
mov r11, qword [rbp - 0x70]
jmp 0x1401bf39c
test r11, r11
je 0x1401c1217
xor r8d, r8d
mov rcx, r11
lea edx, [r8 + 1]
call fcn.14017e490
mov rcx, qword [rsp + 0x60]
test al, al
setne sil
mov edx, esi
call fcn.1401c2410
jmp 0x1401c1217
cmp qword [r12], rsi
mov r13d, 0x64
mov r15d, dword [rsp + 0x68]
mov edx, 6
mov rax, qword [rbp - 0x50]
mov qword [rsp + 0x78], rsi
mov dword [rsp + 0x6c], r13d
mov dword [rbp - 0x40], r13d
movzx eax, byte [rax]
movzx eax, byte [rax + r10 + 0x3186e0]
mov byte [rbp - 0x78], al
mov rax, 0xffffffffffffffff
cmove r15d, eax
mov rax, qword [rbp - 0x38]
mov dword [rsp + 0x68], r15d
mov dword [rax], edx
test r11, r11
je 0x1401bfcce
lea rdx, [rbp - 0x40]
mov rcx, r11
call fcn.1401b32b0
test eax, eax
je 0x1401bfc8e
mov r13d, dword [rbp - 0x40]
mov r12, qword [rbp - 0x80]
mov dword [rsp + 0x6c], r13d
test r13d, r13d
jg 0x1401bfcd2
mov r13d, 0x64
mov dword [rsp + 0x6c], r13d
jmp 0x1401bfcd2
test r15d, r15d
js 0x1401bfca9
mov rax, qword [rsp + 0x60]
movsxd rcx, r15d
shl rcx, 5
mov rax, qword [rax + 0x20]
mov r9, qword [rcx + rax]
jmp 0x1401bfcac
mov r9, rsi
mov r12, qword [rbp - 0x80]
xor edx, edx
mov r8, qword [rbp - 0x70]
mov rcx, r12
call fcn.1401b89e0
mov r13d, dword [rbp - 0x40]
mov qword [rsp + 0x78], rax
mov dword [rsp + 0x6c], r13d
jmp 0x1401bfcd2
mov r12, qword [rbp - 0x80]
mov r14d, 1
lea r8d, [r13 - 1]
mov r9d, r14d
mov rcx, rbx
lea edx, [r14 + 0x44]
call fcn.1401d12a0
mov r9, qword [rsp + 0x60]
lea rdi, [0x1403e1130]
mov r10d, esi
mov dword [rbp - 0x40], esi
cmp dword [r9 + 0x28], esi
jle 0x1401c0a86
lea edi, [r14 + 0x7f]
nop dword [rax + rax]
mov r14d, esi
test r15d, r15d
js 0x1401bfd21
cmp r10d, r15d
jne 0x1401c0a5f
mov rax, qword [r12 + 0xa0]
mov rcx, r12
test rax, rax
cmovne rcx, rax
mov eax, dword [rcx + 0x74]
bt eax, r10d
jb 0x1401bfd57
bts eax, r10d
mov dword [rcx + 0x74], eax
cmp r10d, 1
jne 0x1401bfd57
call fcn.1401b9f40
mov r9, qword [rsp + 0x60]
mov r10d, dword [rbp - 0x40]
mov rax, qword [r9 + 0x20]
mov edx, esi
movsxd r15, r10d
shl r15, 5
mov r13, qword [rax + r15 + 0x18]
mov r8, qword [r13 + 0x10]
test r8, r8
je 0x1401c0a5a
mov r11, qword [rsp + 0x78]
nop dword [rax + rax]
mov rax, qword [r8 + 0x10]
test r11, r11
je 0x1401bfd8e
cmp r11, rax
jne 0x1401bfdb5
test byte [rax + 0x40], 0x80
jne 0x1401bfd96
inc edx
mov rax, qword [rax + 0x10]
mov ecx, esi
test rax, rax
je 0x1401bfdae
mov rax, qword [rax + 0x28]
inc edx
inc ecx
test rax, rax
jne 0x1401bfda1
cmp ecx, r14d
cmovg r14d, ecx
mov r8, qword [r8]
test r8, r8
jne 0x1401bfd80
test edx, edx
je 0x1401c0a5a
lea eax, [rdx + 1]
test r11, r11
cmove eax, edx
inc eax
movsxd rdx, eax
movzx eax, word [r9 + 0x184]
shl rdx, 2
cmp rdx, rax
jbe 0x1401bfe09
cmp dword [r9 + 0x180], r8d
jne 0x1401bfdf9
inc dword [r9 + 0x194]
jmp 0x1401bfe91
cmp byte [r9 + 0x63], 0
jne 0x1401c0a74
jmp 0x1401bfe91
cmp rdx, rdi
ja 0x1401bfe4c
mov rdi, qword [r9 + 0x1b8]
test rdi, rdi
je 0x1401bfe2d
mov rax, qword [rdi]
mov qword [r9 + 0x1b8], rax
inc dword [r9 + 0x190]
jmp 0x1401bfea1
mov rdi, qword [r9 + 0x1b0]
test rdi, rdi
je 0x1401bfe4c
mov rax, qword [rdi]
mov qword [r9 + 0x1b0], rax
inc dword [r9 + 0x190]
jmp 0x1401bfea1
mov rdi, qword [r9 + 0x1a8]
test rdi, rdi
je 0x1401bfe6b
mov rax, qword [rdi]
mov qword [r9 + 0x1a8], rax
inc dword [r9 + 0x190]
jmp 0x1401bfea1
mov rdi, qword [r9 + 0x1a0]
test rdi, rdi
je 0x1401bfe8a
mov rax, qword [rdi]
inc dword [r9 + 0x190]
mov qword [r9 + 0x1a0], rax
jmp 0x1401bfea1
inc dword [r9 + 0x198]
mov rcx, r9
call fcn.140171520
mov r11, qword [rsp + 0x78]
mov rdi, rax
test rdi, rdi
je 0x1401c0a74
mov r8d, esi
mov rdx, rsi
mov r10d, 1
test r11, r11
je 0x1401bfec4
mov r8d, r10d
mov dword [rdi + 4], esi
mov edx, r10d
mov r9, qword [r13 + 0x10]
test r9, r9
je 0x1401bff1d
nop dword [rax]
mov rcx, qword [r9 + 0x10]
test r11, r11
je 0x1401bfede
cmp r11, rcx
jne 0x1401bff15
test byte [rcx + 0x40], 0x80
jne 0x1401bfef0
mov eax, dword [rcx + 0x38]
inc r8d
inc rdx
mov dword [rdi + rdx*4], eax
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x1401bff15
nop dword [rax]
mov eax, dword [rcx + 0x58]
inc rdx
inc r8d
mov dword [rdi + rdx*4], eax
mov rcx, qword [rcx + 0x28]
test rcx, rcx
jne 0x1401bff00
mov r9, qword [r9]
test r9, r9
jne 0x1401bfed0
mov rdx, qword [rbp - 0x38]
lea eax, [r14 + 8]
mov dword [rdi], r8d
mov r14d, 2
mov byte [r12 + 0x1f], 0
mov dword [r12 + 0x28], esi
mov ecx, dword [rdx]
cmp ecx, eax
cmovle ecx, eax
mov dword [rdx], ecx
movsxd rdx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], edx
jg 0x1401bff6d
mov r9d, r8d
mov dword [rsp + 0x20], r10d
mov r8d, r14d
mov edx, reloc.OLEAUT32.dll_DllRegisterServer
mov rcx, rbx
call fcn.14017e5d0
mov edx, eax
jmp 0x1401bff9c
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rbx + 0x90], eax
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], reloc.OLEAUT32.dll_DllRegisterServer
mov dword [rax + rcx*8 + 4], r14d
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], rsi
mov rcx, qword [rbx]
cmp byte [rcx + 0x63], 0
je 0x1401bffaf
mov rdx, rdi
call fcn.1401a2e60
jmp 0x1401bffef
test edx, edx
jns 0x1401bffbb
mov edx, dword [rbx + 0x90]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x1401bffe7
mov r9d, 0xfffffff1
mov r8, rdi
mov rcx, rbx
call fcn.1401efee0
jmp 0x1401bffef
mov qword [rdx + 0x10], rdi
mov byte [rdx + 1], 0xf1
movsxd rdi, dword [rbx + 0x90]
test edi, edi
jle 0x1401c0014
mov rax, qword [rbx + 0x88]
lea rcx, [rdi + rdi*2]
movzx edx, byte [rbp - 0x40]
mov word [rax + rcx*8 - 0x16], dx
mov edi, dword [rbx + 0x90]
cmp dword [rbx + 0x94], edi
jg 0x1401c0036
xor r9d, r9d
mov dword [rsp + 0x20], esi
mov r8d, r14d
mov rcx, rbx
lea edx, [r9 + 0x32]
call fcn.14017e5d0
mov edi, eax
jmp 0x1401c0066
lea eax, [rdi + 1]
mov dword [rbx + 0x90], eax
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], getprotobynumber
mov qword [rax + rcx*8 + 4], 2
mov dword [rax + rcx*8 + 0xc], esi
mov qword [rax + rcx*8 + 0x10], rsi
mov rax, qword [rsp + 0x60]
lea rdx, str._in_database__s__n
mov rcx, rax
mov r8, qword [rax + 0x20]
mov r8, qword [r8 + r15]
mov r15, rax
call fcn.1401b8f50
mov r14d, 3
mov dword [rsp + 0x30], 0xfffffff9
mov qword [rsp + 0x28], rax
mov r9d, r14d
xor r8d, r8d
mov dword [rsp + 0x20], esi
mov rcx, rbx
lea edx, [r14 + 0x71]
call fcn.1401d1380
movsxd rcx, dword [rbx + 0x90]
cmp dword [rbx + 0x94], ecx
jg 0x1401c00d7
mov r9d, r14d
mov dword [rsp + 0x20], r14d
lea edx, [r14 + 0x6c]
mov rcx, rbx
lea r8d, [r14 - 1]
call fcn.14017e5d0
jmp 0x1401c0109
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], reloc.WS2_32.dll_WSAGetLastError
mov dword [rax + rcx*8 + 4], 2
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], rsi
mov rcx, rbx
call fcn.14017f850
mov edx, dword [rbx + 0x90]
test edi, edi
jns 0x1401c011e
lea edi, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x63], 0
je 0x1401c0130
lea rax, [0x1403e1130]
jmp 0x1401c0142
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov r13, qword [r13 + 0x10]
mov qword [rbp - 0x48], r13
test r13, r13
je 0x1401c0a4e
nop word [rax + rax]
mov r13, qword [r13 + 0x10]
mov qword [rbp - 0x18], rsi
mov dword [rbp - 0x54], 0xffffffff
cmp dword [r13 + 0x38], 1
jb 0x1401c0a2e
mov r11, qword [rsp + 0x78]
test r11, r11
je 0x1401c018d
cmp r11, r13
jne 0x1401c0a2e
test byte [r13 + 0x40], 0x80
jne 0x1401c019a
mov qword [rbp - 0x68], rsi
jmp 0x1401c01c7
mov r14, qword [r13 + 0x10]
mov qword [rbp - 0x68], r14
test r14, r14
je 0x1401c01c7
nop word [rax + rax]
mov eax, dword [r14 + 0x64]
and al, 3
cmp al, 2
je 0x1401c01c3
mov r14, qword [r14 + 0x28]
test r14, r14
jne 0x1401c01b0
mov qword [rbp - 0x68], r14
lea rax, [rsp + 0x70]
xor r9d, r9d
mov qword [rsp + 0x38], rax
mov rdx, r13
lea rax, [rbp - 0x58]
mov rcx, r12
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rsi
lea r8d, [r9 + 0x62]
mov dword [rsp + 0x20], 1
call fcn.1401b9c80
mov r9d, 7
xor r8d, r8d
mov rcx, rbx
lea edx, [r9 + 0x3e]
call fcn.1401d12a0
mov rdi, qword [r13 + 0x10]
test rdi, rdi
je 0x1401c023e
mov r14d, 8
nop dword [rax]
xor r8d, r8d
mov r9d, r14d
mov rcx, rbx
lea edx, [r8 + 0x45]
call fcn.1401d12a0
mov rdi, qword [rdi + 0x28]
inc r14d
test rdi, rdi
jne 0x1401c0220
mov edi, dword [rbp - 0x58]
xor r9d, r9d
mov r8d, edi
mov rcx, rbx
lea edx, [r9 + 0x25]
call fcn.1401d12a0
mov edx, 0x53
mov rcx, rbx
lea r9d, [rdx - 0x52]
lea r8d, [rdx - 0x4c]
call fcn.1401d12a0
cmp byte [rbp - 0x78], 0x71
mov r14d, 3
mov dword [rbp - 0x60], eax
je 0x1401c02b3
movsx r9d, word [r13 + 0x48]
lea edx, [r14 + 0x58]
dec r9d
mov dword [rsp + 0x20], r14d
mov r8d, edi
mov rcx, rbx
call fcn.1401d1310
movsxd rcx, dword [rbx + 0x90]
test ecx, ecx
jle 0x1401c02b3
mov rax, qword [rbx + 0x88]
lea rcx, [rcx + rcx*2]
mov edx, 0x80
mov word [rax + rcx*8 - 0x16], dx
mov edi, esi
cmp si, word [r13 + 0x46]
jge 0x1401c0402
mov r12, qword [rsp + 0x60]
mov r15, rsi
jmp 0x1401c02d6
mov r14d, 3
movsx eax, word [r13 + 0x44]
cmp edi, eax
je 0x1401c03e6
mov rax, qword [r13 + 8]
cmp byte [rax + r15 + 0x18], 0
je 0x1401c03e6
mov r8d, dword [rbp - 0x58]
mov r9d, edi
mov rdx, r13
mov dword [rsp + 0x20], r14d
mov rcx, rbx
call fcn.1401a71b0
mov rax, qword [rbx]
movsxd rdx, dword [rbx + 0x90]
cmp byte [rax + 0x63], 0
je 0x1401c0323
lea rax, [0x1403e1130]
jmp 0x1401c0336
mov rax, qword [rbx + 0x88]
lea rcx, [rdx + rdx*2]
lea rax, [rax + rcx*8]
add rax, 0xffffffffffffffe8
cmp byte [rax], 0x5b
jne 0x1401c0354
test edx, edx
jle 0x1401c0354
mov rax, qword [rbx + 0x88]
lea rcx, [rdx + rdx*2]
mov edx, 0x80
mov word [rax + rcx*8 - 0x16], dx
mov r8d, r14d
mov edx, getprotobynumber
mov rcx, rbx
call fcn.1401d1230
mov r9, qword [r13 + 8]
lea rdx, str.NULL_value_in__s._s
mov r8, qword [r13]
mov rcx, r12
mov r14d, eax
mov r9, qword [r9 + r15]
call fcn.1401b8f50
mov r9d, 3
mov dword [rsp + 0x30], 0xfffffff9
mov qword [rsp + 0x28], rax
xor r8d, r8d
mov rcx, rbx
mov dword [rsp + 0x20], esi
lea edx, [r9 + 0x71]
call fcn.1401d1380
mov rcx, rbx
call fcn.14017f850
mov edx, dword [rbx + 0x90]
test r14d, r14d
jns 0x1401c03bf
lea r14d, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x63], 0
je 0x1401c03d1
lea rax, [0x1403e1130]
jmp 0x1401c03e3
movsxd rax, r14d
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
movsx eax, word [r13 + 0x46]
inc edi
add r15, 0x20
cmp edi, eax
jl 0x1401c02d0
mov r12, qword [rbp - 0x80]
mov r15, qword [rsp + 0x60]
mov rdx, qword [r13 + 0x30]
test rdx, rdx
je 0x1401c0575
mov eax, dword [r15 + 0x30]
bt rax, 9
jb 0x1401c0575
xor r8d, r8d
mov rcx, r15
call fcn.1401ab6e0
cmp byte [r15 + 0x63], 0
mov r14, rax
mov qword [rbp - 0x20], rax
jne 0x1401c0565
mov r15d, dword [r12 + 0x44]
mov rax, qword [rbp - 0x80]
dec r15d
mov ecx, dword [rbp - 0x58]
inc ecx
mov dword [rax + 0x40], ecx
lea r12d, [r15 - 1]
mov dword [rax + 0x44], r12d
mov ecx, dword [r14]
dec ecx
movsxd rdi, ecx
test ecx, ecx
jle 0x1401c04a7
mov rsi, qword [rbp - 0x80]
mov rax, rdi
shl rax, 5
add rax, 8
add r14, rax
nop word [rax + rax]
mov rdx, qword [r14]
xor r9d, r9d
mov r8d, r15d
mov rcx, rsi
call fcn.1401aa740
dec rdi
lea r14, [r14 - 0x20]
test rdi, rdi
jg 0x1401c0480
mov r14, qword [rbp - 0x20]
xor esi, esi
mov rax, qword [rbp - 0x80]
mov rdx, qword [r14 + 8]
mov r9d, reloc.WS2_32.dll_recv
mov r8d, r12d
mov rcx, rax
call fcn.1401aab40
mov rcx, qword [rbx + 0x18]
not r15d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1401c04d8
mov r8d, r15d
mov rdx, rbx
call fcn.14018f350
jmp 0x1401c04e8
mov rcx, qword [rcx + 0x50]
mov eax, dword [rbx + 0x90]
movsxd rdx, r15d
mov dword [rcx + rdx*4], eax
mov rax, qword [rbp - 0x80]
lea rdx, str.CHECK_constraint_failed_in__s
mov r15, qword [rsp + 0x60]
mov rcx, r15
mov dword [rax + 0x40], esi
mov r8, qword [r13]
call fcn.1401b8f50
mov r9d, 3
mov dword [rsp + 0x30], 0xfffffff9
mov qword [rsp + 0x28], rax
xor r8d, r8d
mov rcx, rbx
mov dword [rsp + 0x20], esi
lea edx, [r9 + 0x71]
call fcn.1401d1380
mov rcx, rbx
call fcn.14017f850
mov rcx, qword [rbx + 0x18]
not r12d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1401c0551
mov r8d, r12d
mov rdx, rbx
call fcn.14018f350
jmp 0x1401c0561
mov rcx, qword [rcx + 0x50]
mov eax, dword [rbx + 0x90]
movsxd rdx, r12d
mov dword [rcx + rdx*4], eax
mov r12, qword [rbp - 0x80]
test r14, r14
je 0x1401c0575
mov rdx, r14
mov rcx, r15
call fcn.140176890
movzx r14d, byte [rbp - 0x78]
cmp r14b, 0x71
je 0x1401c08c5
mov r15, qword [r13 + 0x10]
test r15, r15
je 0x1401c08c5
mov r14d, dword [rsp + 0x70]
mov eax, 8
sub eax, r14d
mov dword [rbp - 0x28], r14d
mov dword [rbp - 8], eax
mov rax, qword [rbp - 0x68]
nop dword [rax]
mov edi, dword [r12 + 0x44]
dec edi
mov dword [r12 + 0x44], edi
cmp rax, r15
je 0x1401c08ac
mov eax, dword [rbp - 0x54]
xor r9d, r9d
mov r8d, dword [rbp - 0x58]
mov rdx, r15
mov dword [rsp + 0x38], eax
mov rcx, r12
mov rax, qword [rbp - 0x18]
mov qword [rsp + 0x30], rax
lea rax, [rbp - 0x30]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], esi
call fcn.1401b2580
mov r8d, dword [rbp - 8]
mov edx, 0x53
add r8d, r14d
mov dword [rbp - 0x54], eax
mov rcx, rbx
mov qword [rbp - 0x18], r15
lea r9d, [rdx - 0x52]
call fcn.1401d12a0
movzx ecx, word [r15 + 0x60]
mov r9d, edi
mov eax, dword [rbp - 0x54]
mov r8d, r14d
mov dword [rsp + 0x28], ecx
mov edx, 0x1e
mov rcx, rbx
mov dword [rsp + 0x20], eax
call fcn.1401d14b0
lea r8, str.row
mov edx, 3
mov rcx, rbx
mov edi, eax
call fcn.1401dc470
mov eax, 3
mov rcx, rbx
mov r9d, eax
mov dword [rsp + 0x20], eax
lea edx, [rax + 0x6c]
lea r8d, [rax + 4]
call fcn.1401d1310
lea r8, str._missing_from_index
mov edx, 4
mov rcx, rbx
call fcn.1401dc470
mov eax, 3
mov rcx, rbx
mov r9d, eax
mov dword [rsp + 0x20], eax
lea edx, [rax + 0x6c]
lea r8d, [rax + 1]
call fcn.1401d1310
mov r8, qword [r15]
mov edx, 4
mov rcx, rbx
call fcn.1401dc470
mov dword [rbp - 0x10], eax
mov rcx, rbx
mov eax, 3
mov r9d, eax
mov dword [rsp + 0x20], eax
lea edx, [rax + 0x6c]
lea r8d, [rax + 1]
call fcn.1401d1310
mov rcx, rbx
call fcn.14017f850
mov edx, dword [rbx + 0x90]
mov dword [rbp - 0x20], eax
test edi, edi
jns 0x1401c06dc
lea edi, [rdx - 1]
mov rcx, qword [rbx]
cmp byte [rcx + 0x63], 0
je 0x1401c06ee
lea rcx, [0x1403e1130]
jmp 0x1401c0700
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea rcx, [rax + rcx*8]
mov dword [rcx + 8], edx
cmp byte [r15 + 0x62], 0
je 0x1401c0839
dec dword [r12 + 0x44]
mov edi, esi
mov r12d, dword [r12 + 0x44]
cmp si, word [r15 + 0x5e]
jae 0x1401c0776
mov r14, rsi
mov esi, dword [rbp - 0x54]
nop word [rax + rax]
mov rax, qword [r15 + 8]
movsx rcx, word [r14 + rax]
test cx, cx
js 0x1401c074d
mov rax, qword [r13 + 8]
shl rcx, 5
cmp byte [rcx + rax + 0x18], 0
jne 0x1401c0761
lea r8d, [rdi + rsi]
mov r9d, r12d
mov edx, getprotobynumber
mov rcx, rbx
call fcn.1401d12a0
movzx eax, word [r15 + 0x5e]
inc edi
add r14, 2
cmp edi, eax
jl 0x1401c0730
mov r14d, dword [rbp - 0x28]
xor esi, esi
mov r8d, r14d
mov edx, 5
mov rcx, rbx
call fcn.1401d1230
mov edx, r12d
mov rcx, rbx
mov edi, eax
call fcn.1401db7c0
mov edx, dword [rbx + 0x90]
test edi, edi
jns 0x1401c07a0
lea edi, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x63], 0
je 0x1401c07b2
lea rax, [0x1403e1130]
jmp 0x1401c07c4
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov r9d, r12d
movzx eax, word [r15 + 0x5e]
mov r8d, r14d
mov dword [rsp + 0x28], eax
mov edx, 0x27
mov eax, dword [rbp - 0x54]
mov rcx, rbx
mov dword [rsp + 0x20], eax
call fcn.1401d14b0
lea r8, str.non_unique_entry_in_index
mov edx, 3
mov rcx, rbx
call fcn.1401dc470
mov edx, dword [rbp - 0x10]
mov rcx, rbx
call fcn.1401db7c0
mov rcx, qword [rbx + 0x18]
not r12d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1401c0825
mov r8d, r12d
mov rdx, rbx
call fcn.14018f350
jmp 0x1401c0835
mov rcx, qword [rcx + 0x50]
mov eax, dword [rbx + 0x90]
movsxd rdx, r12d
mov dword [rcx + rdx*4], eax
mov r12, qword [rbp - 0x80]
mov ecx, dword [rbp - 0x20]
mov edx, dword [rbx + 0x90]
test ecx, ecx
jns 0x1401c0849
lea ecx, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x63], 0
je 0x1401c085b
lea rax, [0x1403e1130]
jmp 0x1401c086d
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea rax, [rax + rcx*8]
mov r8d, dword [rbp - 0x30]
mov dword [rax + 8], edx
test r8d, r8d
je 0x1401c08a8
mov r9, qword [r12 + 0x10]
not r8d
mov rcx, qword [r9 + 0x18]
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1401c0897
mov rdx, r9
call fcn.14018f350
jmp 0x1401c08a8
mov rcx, qword [rcx + 0x50]
mov eax, dword [r9 + 0x90]
movsxd rdx, r8d
mov dword [rcx + rdx*4], eax
mov rax, qword [rbp - 0x68]
mov r15, qword [r15 + 0x28]
inc r14d
mov dword [rbp - 0x28], r14d
test r15, r15
jne 0x1401c05b0
movzx r14d, byte [rbp - 0x78]
mov edi, dword [rbp - 0x60]
mov edx, 5
mov r8d, dword [rbp - 0x58]
mov r9d, edi
mov rcx, rbx
call fcn.1401d12a0
mov rax, qword [rbx]
lea ecx, [rdi - 1]
mov edx, dword [rbx + 0x90]
cmp byte [rax + 0x63], 0
je 0x1401c08f7
lea rax, [0x1403e1130]
jmp 0x1401c0911
test ecx, ecx
mov eax, edx
cmovns eax, edi
dec eax
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
cmp r14b, 0x71
je 0x1401c0a29
lea r8, str.wrong__of_entries_in_index
mov edx, 2
mov rcx, rbx
call fcn.1401dc470
mov rdi, qword [r13 + 0x10]
test rdi, rdi
je 0x1401c0a29
mov r12d, dword [rsp + 0x70]
mov r15d, 8
mov rax, qword [rbp - 0x68]
add r12d, 0xfffffff8
lea esi, [r15 - 5]
cmp rax, rdi
je 0x1401c0a17
lea r8d, [r12 + r15]
mov r9d, esi
mov edx, 0x5e
mov rcx, rbx
call fcn.1401d12a0
xor r9d, r9d
mov dword [rsp + 0x20], esi
mov r8d, r15d
mov rcx, rbx
lea edx, [r9 + 0x35]
call fcn.1401d1310
mov r14d, eax
movsxd rax, dword [rbx + 0x90]
test eax, eax
jle 0x1401c09ac
mov rcx, qword [rbx + 0x88]
lea rdx, [rax + rax*2]
mov eax, 0x90
mov word [rcx + rdx*8 - 0x16], ax
mov r8, qword [rdi]
mov edx, 4
mov rcx, rbx
call fcn.1401dc470
mov edx, reloc.WS2_32.dll_WSAGetLastError
mov dword [rsp + 0x20], esi
mov rcx, rbx
lea r9d, [rdx - 0x6d]
lea r8d, [rdx - 0x6b]
call fcn.1401d1310
mov rcx, rbx
call fcn.14017f850
mov edx, dword [rbx + 0x90]
test r14d, r14d
jns 0x1401c09ec
lea r14d, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x63], 0
je 0x1401c09fe
lea rax, [0x1403e1130]
jmp 0x1401c0a10
movsxd rax, r14d
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov rax, qword [rbp - 0x68]
mov rdi, qword [rdi + 0x28]
inc r15d
test rdi, rdi
jne 0x1401c0956
xor esi, esi
mov r15, qword [rsp + 0x60]
mov r13, qword [rbp - 0x48]
mov r12, qword [rbp - 0x80]
mov r13, qword [r13]
mov qword [rbp - 0x48], r13
test r13, r13
jne 0x1401c0160
mov r9, qword [rsp + 0x60]
jmp 0x1401c0a51
mov r9, r15
mov r10d, dword [rbp - 0x40]
mov edi, 0x80
mov r15d, dword [rsp + 0x68]
mov r12, qword [rbp - 0x80]
inc r10d
mov dword [rbp - 0x40], r10d
cmp r10d, dword [r9 + 0x28]
jl 0x1401bfd10
mov r13d, dword [rsp + 0x6c]
lea rdi, [0x1403e1130]
mov r14d, 1
xor r9d, r9d
lea r8, [0x140319c88]
mov rcx, rbx
lea edx, [r9 + 7]
call fcn.1401d1550
test rax, rax
je 0x1401c0ac9
lea rcx, [0x1403155bc]
mov byte [rax + 0x31], 0xff
mov qword [rax + 0x40], rcx
sub r14d, r13d
lea rcx, str.database_disk_image_is_malformed
mov dword [rax + 8], r14d
mov qword [rax + 0x88], rcx
mov byte [rax + 0x79], 0xff
mov rax, qword [rbx]
mov ecx, dword [rbx + 0x90]
sub ecx, 2
cmp byte [rax + 0x63], 0
jne 0x1401c0ae2
mov rdi, qword [rbx + 0x88]
mov dword [rdi + 0xc], ecx
jmp 0x1401c1217
test r11, r11
jne 0x1401c0b25
mov rcx, r15
call fcn.1401c1b10
test eax, eax
jne 0x1401c1217
mov rax, qword [r15]
lea rdi, str.UTF8
mov rcx, rbx
movzx edx, byte [rax + 0x60]
add rdx, rdx
mov rdx, qword [rdi + rdx*8]
call fcn.140191770
mov rdx, qword [rbp - 0x50]
jmp 0x1401c122e
mov rdx, qword [rsp + 0x60]
test byte [rdx + 0x2c], 0x40
jne 0x1401c1217
mov r9, qword [str.UTF8]
lea rdi, str.UTF8
test r9, r9
je 0x1401c0ba6
nop word [rax + rax]
mov rdx, r11
sub r9, r11
nop word [rax + rax]
movzx r8d, byte [rdx]
movzx eax, byte [r9 + rdx]
cmp r8d, eax
jne 0x1401c0bbd
test r8d, r8d
jne 0x1401c0bd3
movzx eax, byte [rdi + 8]
mov edx, 2
mov r8, qword [rsp + 0x60]
test al, al
cmovne edx, eax
mov rax, qword [r8 + 0x20]
mov rcx, qword [rax + 0x18]
mov byte [rcx + 0x71], dl
mov rcx, r8
call fcn.1401ca040
cmp qword [rdi], rsi
jne 0x1401c1217
mov r11, qword [rbp - 0x70]
mov r8, r11
lea rdx, str.unsupported_encoding:__s
mov rcx, r15
call fcn.1401a59d0
jmp 0x1401c1217
movzx ecx, byte [rax + r10 + 0x3186e0]
movzx eax, byte [r8 + r10 + 0x3186e0]
cmp eax, ecx
jne 0x1401c0bd8
inc rdx
jmp 0x1401c0b60
mov r9, qword [rdi + 0x10]
add rdi, 0x10
test r9, r9
jne 0x1401c0b50
jmp 0x1401c0ba6
mov r14d, dword [rsp + 0x68]
mov rcx, rbx
mov edi, dword [r13 + 0x10]
mov edx, r14d
call fcn.1401dfd10
test r11, r11
je 0x1401c0c53
test byte [r13 + 9], 8
jne 0x1401c0c53
xor r9d, r9d
lea r8, [0x140319c38]
lea edx, [r9 + 2]
call fcn.1401d1550
mov rcx, qword [rbp - 0x70]
lea rdx, [rsp + 0x70]
mov rbx, rax
mov dword [rsp + 0x70], esi
mov dword [rax + 4], r14d
mov dword [rax + 0x1c], r14d
mov dword [rax + 0x20], edi
call fcn.1401b32b0
mov ecx, dword [rsp + 0x70]
mov eax, 1
mov word [rbx + 0x1a], ax
mov dword [rbx + 0x24], ecx
jmp 0x1401be8dd
xor r9d, r9d
lea r8, [0x140319d40]
lea edx, [r9 + 3]
call fcn.1401d1550
mov dword [rax + 4], r14d
mov dword [rax + 0x1c], r14d
mov dword [rax + 0x24], edi
and dword [rbx + 0xc8], 0xffffffdf
jmp 0x1401c1217
mov rax, qword [rbp - 0x38]
mov edi, 1
mov dword [rax], edi
cmp rsi, 2
ja 0x1401c0c71
mov r8, qword [r10 + rsi*8 + 0x319328]
inc rsi
test r8, r8
je 0x1401c0c71
mov edx, edi
mov rcx, rbx
call fcn.1401dc470
mov r9d, edi
mov r8d, edi
mov edx, 0x51
mov rcx, rbx
call fcn.1401d12a0
lea r10, [0x140000000]
jmp 0x1401c0c88
cmp qword [r12], rsi
mov r11d, recv
mov rax, qword [rbp - 0x70]
mov edi, 3
cmovne r11d, dword [rsp + 0x68]
test rax, rax
je 0x1401c0d2e
lea rdx, str.full
mov rcx, rax
call fcn.1401cbb80
test eax, eax
jne 0x1401c0d00
mov r10d, 1
mov esi, r10d
jmp 0x1401c0d34
mov rcx, qword [rbp - 0x70]
lea rdx, str.restart
call fcn.1401cbb80
test eax, eax
jne 0x1401c0d19
lea esi, [rax + 2]
jmp 0x1401c0d2e
mov rcx, qword [rbp - 0x70]
lea rdx, str.truncate
call fcn.1401cbb80
test eax, eax
cmove esi, edi
mov r10d, 1
mov rax, qword [rbp - 0x38]
mov r9d, esi
mov r8d, r11d
mov dword [rsp + 0x20], r10d
mov edx, 6
mov rcx, rbx
mov dword [rax], edi
call fcn.1401d1310
mov edx, 0x51
mov r9d, edi
mov rcx, rbx
lea r8d, [rdx - 0x50]
call fcn.1401d12a0
jmp 0x1401c1217
test r11, r11
je 0x1401c0d8f
lea rdx, [rsp + 0x70]
mov dword [rsp + 0x70], esi
mov rcx, r11
call fcn.1401b32b0
mov edx, dword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
call fcn.140161470
mov rax, qword [rsp + 0x60]
lea rcx, [0x1401e1680]
cmp qword [rax + 0x148], rcx
jne 0x1401c0daa
mov esi, dword [rax + 0x150]
movsxd rdx, esi
jmp 0x1401c120f
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1401c0dc6
call qword [0x1403cb550]
mov rcx, qword [rsp + 0x60]
cmp byte [rcx + 0x6b], sil
jne 0x1401c0ddb
call fcn.140168f30
mov rcx, qword [rsp + 0x60]
cmp dword [rcx + 0x28], esi
jle 0x1401c0e26
mov rbx, rsi
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rcx + 0x20]
mov rax, qword [rax + rbx + 8]
test rax, rax
je 0x1401c0e1b
mov rax, qword [rax + 8]
mov rcx, qword [rax]
mov rcx, qword [rcx + 0x118]
mov rcx, qword [rcx + 0x40]
call qword [0x1403cb5d8]
mov rcx, qword [rsp + 0x60]
inc esi
add rbx, 0x20
cmp esi, dword [rcx + 0x28]
jl 0x1401c0df0
cmp byte [rcx + 0x6b], 0
jne 0x1401c0e36
call fcn.140169280
mov rcx, qword [rsp + 0x60]
mov rcx, qword [rcx + 0x18]
test rcx, rcx
je 0x1401c1217
call qword [0x1403cb560]
jmp 0x1401c1217
test r11, r11
je 0x1401c0e75
lea rdx, [rsp + 0x70]
mov dword [rsp + 0x70], esi
mov rcx, r11
call fcn.1401b32b0
mov r12d, dword [rsp + 0x70]
test r12b, 2
je 0x1401c1217
jmp 0x1401c0e7b
mov r12d, 0xfffe
mov r13d, dword [r15 + 0x34]
mov r11d, dword [rsp + 0x68]
mov r10, qword [rsp + 0x60]
lea eax, [r13 + 1]
mov dword [r15 + 0x34], eax
cmp qword [rbp - 0x60], rsi
je 0x1401c0e9c
mov eax, r11d
jmp 0x1401c0ea2
mov eax, dword [r10 + 0x28]
dec eax
movsxd r9, eax
cmp rdi, r9
jg 0x1401c109c
mov ecx, r11d
mov r8d, 1
rol r8d, cl
mov rdx, rdi
shl rdx, 5
sub r9, rdi
inc r9
mov dword [rsp + 0x70], r8d
mov qword [rbp - 0x48], r9
mov qword [rsp + 0x78], rdx
cmp r11d, 1
je 0x1401c1075
mov rax, qword [r15 + 0xa0]
mov rcx, r15
test rax, rax
cmovne rcx, rax
mov eax, dword [rcx + 0x74]
test eax, r8d
jne 0x1401c0eff
bts eax, r11d
mov dword [rcx + 0x74], eax
mov rax, qword [r10 + 0x20]
mov rcx, qword [rax + rdx + 0x18]
mov r15, qword [rcx + 0x10]
test r15, r15
je 0x1401c1071
mov rdi, qword [r15 + 0x10]
test dword [rdi + 0x40], 0x100
je 0x1401c105c
movzx r14d, word [rdi + 0x4a]
mov rax, qword [rdi + 0x10]
add r14w, 0x2e
test rax, rax
je 0x1401c0f4f
nop dword [rax]
test byte [rax + 0x64], 0x80
je 0x1401c0fa4
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x1401c0f40
test r14w, r14w
je 0x1401c0fa4
mov rcx, qword [rbp - 0x80]
mov r9, rdi
mov r8d, r11d
mov dword [rsp + 0x20], 0x62
mov edx, r13d
call fcn.1401b9b90
mov eax, dword [rbx + 0x90]
mov r9d, r12d
movsx edx, r14w
and r9d, 1
add eax, 2
mov dword [rsp + 0x20], edx
add r9d, eax
mov r8d, r13d
mov edx, 0x22
mov rcx, rbx
call fcn.1401d1310
mov rdx, qword [rsp + 0x78]
mov r10, qword [rsp + 0x60]
mov r8, qword [r10 + 0x20]
mov rcx, r10
mov r9, qword [rdi]
mov r8, qword [r8 + rdx]
lea rdx, str.ANALYZE___w_.__w_
call fcn.1401b8f50
mov rdx, rax
test r12b, 1
je 0x1401c1029
mov r8, qword [rbp - 0x80]
movzx ecx, byte [r8 + 0x1f]
test cl, cl
jne 0x1401c0fde
mov rax, qword [rbp - 0x38]
inc dword [rax]
mov edi, dword [rax]
jmp 0x1401c0fef
dec cl
movzx eax, cl
mov byte [r8 + 0x1f], al
mov edi, dword [r8 + rax*4 + 0xd0]
xor r8d, r8d
mov dword [rsp + 0x30], 0xfffffff9
mov qword [rsp + 0x28], rdx
mov r9d, edi
mov rcx, rbx
mov dword [rsp + 0x20], esi
lea edx, [r8 + 0x74]
call fcn.1401d1380
mov r9d, 1
mov r8d, edi
mov rcx, rbx
lea edx, [r9 + 0x50]
call fcn.1401d12a0
jmp 0x1401c104d
mov dword [rsp + 0x30], 0xfffffff9
xor r9d, r9d
mov qword [rsp + 0x28], rdx
xor r8d, r8d
mov edx, 0x90
mov dword [rsp + 0x20], esi
mov rcx, rbx
call fcn.1401d1380
mov r11d, dword [rsp + 0x68]
mov r10, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x78]
mov r15, qword [r15]
test r15, r15
jne 0x1401c0f15
mov r8d, dword [rsp + 0x70]
mov r9, qword [rbp - 0x48]
mov r15, qword [rbp - 0x80]
inc r11d
rol r8d, 1
add rdx, 0x20
mov dword [rsp + 0x68], r11d
sub r9, 1
mov dword [rsp + 0x70], r8d
mov qword [rbp - 0x48], r9
mov qword [rsp + 0x78], rdx
jne 0x1401c0ed5
mov edx, reloc.OLEAUT32.dll_RegisterTypeLib
mov rcx, rbx
call fcn.1401d11c0
jmp 0x1401c1217
test r11, r11
je 0x1401c10cc
lea rdx, [rbp - 0x48]
mov rcx, r11
call fcn.1401a3270
test eax, eax
jne 0x1401c10cc
mov rcx, qword [rbp - 0x48]
call fcn.14015a2a0
mov rcx, 0xffffffffffffffff
call fcn.14015a2a0
mov rdx, rax
jmp 0x1401c120f
mov rdi, 0xffffffffffffffff
test r11, r11
je 0x1401c111c
lea rdx, [rbp - 0x48]
mov rcx, r11
call fcn.1401a3270
test eax, eax
jne 0x1401c111c
mov rcx, rdi
call fcn.14015a380
mov rcx, qword [rbp - 0x48]
test rcx, rcx
jle 0x1401c111c
test rax, rax
je 0x1401c1117
cmp rax, rcx
jle 0x1401c111c
call fcn.14015a380
mov rcx, rdi
call fcn.14015a380
mov rdx, rax
jmp 0x1401c120f
test r11, r11
je 0x1401c1166
lea rdx, [rbp - 0x48]
mov rcx, r11
call fcn.1401a3270
test eax, eax
jne 0x1401c1166
mov rax, qword [rbp - 0x48]
test rax, rax
js 0x1401c1166
mov ecx, 8
mov edi, 0x7fffffff
and eax, edi
cmp eax, ecx
cmova eax, ecx
mov rcx, qword [rsp + 0x60]
mov dword [rcx + 0xac], eax
mov rax, qword [rsp + 0x60]
movsxd rdx, dword [rax + 0xac]
jmp 0x1401c120f
test r11, r11
je 0x1401c11a7
lea rdx, [rbp - 0x48]
mov rcx, r11
call fcn.1401a3270
test eax, eax
jne 0x1401c11a7
mov rax, qword [rbp - 0x48]
test rax, rax
js 0x1401c11a7
mov rcx, qword [rsp + 0x60]
mov edi, 0x7fffffff
and eax, edi
mov dword [rcx + 0x2c0], eax
mov rax, qword [rsp + 0x60]
movsxd rdx, dword [rax + 0x2c0]
jmp 0x1401c120f
test r11, r11
je 0x1401c1203
lea rdx, [rsp + 0x70]
mov dword [rsp + 0x70], esi
mov rcx, r11
call fcn.1401b32b0
mov edi, dword [rsp + 0x70]
test edi, edi
jle 0x1401c11f4
mov r8, qword [rsp + 0x60]
lea rdx, [0x1401ec710]
mov rcx, r8
call fcn.140153210
mov rax, qword [rsp + 0x60]
mov dword [rax + 0x2c4], edi
jmp 0x1401c1203
mov rcx, qword [rsp + 0x60]
xor r8d, r8d
xor edx, edx
call fcn.140153210
mov rdi, qword [rsp + 0x60]
movsxd rdx, dword [rdi + 0x2c4]
mov rcx, rbx
call fcn.140191610
mov rdx, qword [rbp - 0x50]
mov rcx, qword [rsp + 0x60]
call fcn.1401a2e60
mov rdx, qword [rbp - 0x70]
test rdx, rdx
je 0x1401c1238
mov rcx, qword [rsp + 0x60]
call fcn.1401a2e60
mov r14, qword [rsp + 0x148]
mov rcx, qword [rbp + 0x38]
xor rcx, rsp
call fcn.140296f70
add rsp, 0x150
pop r15
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret