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

Disassembly:
mov qword [rsp + 0x20], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r13
push r15
lea rbp, [rsp - 0x30]
sub rsp, 0x130
mov rbx, qword [rcx + 0x10]
mov rsi, qword [rcx]
mov r15, r9
mov r13, r8
mov rdi, rdx
mov qword [rsp + 0x60], rsi
test rbx, rbx
jne 0x1401a91af
cmp qword [rcx + 0xa0], rbx
jne 0x1401a919a
test byte [rsi + 0x60], 8
jne 0x1401a919a
mov byte [rcx + 0x23], 1
call fcn.1401bcae0
mov rcx, qword [rbp + 0x60]
mov rbx, rax
test rax, rax
je 0x1401a96bb
or dword [rbx + 0xd0], 0x20
mov rax, qword [rcx]
mov dword [rcx + 0x38], 2
cmp dword [r13 + 8], 0
mov qword [rsp + 0x170], r14
jbe 0x1401a9219
cmp byte [rax + 0xc5], 0
je 0x1401a91e9
lea rdx, str.corrupt_database
call fcn.14018a7d0
jmp 0x1401a96b3
mov rdx, rdi
mov rcx, rax
mov r14, r13
call fcn.140191630
mov rcx, qword [rbp + 0x60]
mov edx, eax
mov dword [rsp + 0x68], eax
test eax, eax
jns 0x1401a9227
lea rdx, str.unknown_database__T
mov r8, rdi
call fcn.14018a7d0
jmp 0x1401a96b3
movzx edx, byte [rax + 0xc4]
mov r14, rdi
mov dword [rsp + 0x68], edx
test edx, edx
js 0x1401a96b3
mov rsi, qword [rsi + 0x20]
mov qword [rsp + 0x168], r12
movsxd r12, edx
mov rdi, r12
mov qword [rbp - 0x58], r12
shl rdi, 5
add rsi, rdi
mov qword [rsp + 0x70], rdi
mov qword [rbp - 0x48], rsi
cmp edx, 1
jne 0x1401a9267
call fcn.1401a51f0
test eax, eax
jne 0x1401a96ab
mov rdx, r14
mov r14, qword [rsp + 0x60]
mov rcx, r14
call fcn.1401a4920
mov qword [rbp - 0x28], rax
test rax, rax
je 0x1401a96ab
cmp dword [rbp + 0x80], 0
mov rcx, r14
je 0x1401a92a1
lea rdx, [0x1402563f4]
mov r8, r15
call fcn.1401a3e90
jmp 0x1401a92a9
mov rdx, r15
call fcn.1401a4920
xor r14d, r14d
mov qword [rsp + 0x78], rax
cmp dword [r13 + 8], r14d
jbe 0x1401a92bc
mov r15, qword [rsi]
jmp 0x1401a92bf
mov r15, r14
mov r8, qword [rbp - 0x28]
mov rcx, qword [rbp + 0x60]
mov r9, rax
mov edx, reloc.OLEAUT32.dll_SafeArrayGetLBound
mov qword [rbp - 0x80], r15
mov qword [rsp + 0x20], r15
call fcn.14017bcf0
test eax, eax
jne 0x1401a968d
mov rax, qword [rbp - 0x28]
mov rcx, qword [rsp + 0x78]
mov qword [rbp - 8], r14
mov qword [rbp], rax
mov rax, qword [rsp + 0x60]
mov qword [rbp + 8], rcx
mov ecx, 1
mov qword [rbp + 0x10], r14
mov dword [rax + 0x290], r14d
mov r14d, ecx
mov qword [rbp - 0x38], rcx
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1401a932a
call qword [0x1404b4120]
mov rax, qword [rsp + 0x60]
test r15, r15
je 0x1401a9344
mov rdx, r15
mov rcx, rax
call fcn.140191760
test eax, eax
js 0x1401a93cf
jmp 0x1401a9346
xor eax, eax
movsxd rcx, eax
mov rax, qword [rsp + 0x60]
mov rax, qword [rax + 0x20]
shl rcx, 5
mov rdi, qword [rcx + rax + 8]
test rdi, rdi
je 0x1401a93ca
cmp byte [rdi + 0x11], 0
je 0x1401a9377
inc dword [rdi + 0x14]
cmp byte [rdi + 0x12], 0
jne 0x1401a9377
mov rcx, rdi
call fcn.140132290
mov rax, qword [rdi + 8]
mov rcx, qword [rax]
mov rax, qword [rsp + 0x60]
mov rcx, qword [rcx + 0x48]
mov r15d, dword [rax + 0x290]
mov rax, qword [rcx]
test rax, rax
jne 0x1401a939c
lea r14d, [rax + 0xc]
jmp 0x1401a93ab
lea r8, [rbp - 8]
mov edx, recvfrom
call qword [rax + 0x50]
mov r14d, eax
mov rax, qword [rsp + 0x60]
mov dword [rax + 0x290], r15d
cmp byte [rdi + 0x11], 0
je 0x1401a93ca
dec dword [rdi + 0x14]
jne 0x1401a93ca
mov rcx, rdi
call fcn.1401d9bd0
mov rdi, qword [rsp + 0x70]
mov r15, qword [rsp + 0x60]
mov rcx, qword [r15 + 0x18]
test rcx, rcx
je 0x1401a93e3
call qword [0x1404b4130]
test r14d, r14d
jne 0x1401a9505
mov edi, 1
mov rcx, rbx
mov edx, edi
call fcn.1401c9390
mov rax, qword [rbx]
mov r14, qword [rbp - 8]
cmp byte [rax + 0x67], 0
jne 0x1401a94eb
mov rsi, qword [rbx + 0xa0]
test r14, r14
jne 0x1401a9439
mov eax, 0x2400
test word [rsi + 8], ax
je 0x1401a9430
mov rcx, rsi
call fcn.1401dd590
jmp 0x1401a94eb
mov word [rsi + 8], di
jmp 0x1401a94eb
mov rcx, qword [rsi + 0x28]
test rcx, rcx
je 0x1401a944a
mov edx, dword [rcx + 0x88]
jmp 0x1401a944f
mov edx, 0x3b9aca00
mov rax, qword [rbp - 8]
or r15, 0xffffffffffffffff
nop word [rax + rax]
inc r15
cmp byte [rax + r15], 0
jne 0x1401a9460
movsxd rax, edx
lea rdi, [r15 + 1]
cmp r15, rax
jle 0x1401a9493
test rcx, rcx
je 0x1401a94eb
mov rax, qword [rcx + 0x160]
test rax, rax
je 0x1401a94eb
inc dword [rax + 0x30]
mov dword [rax + 0x18], reloc.WS2_32.dll_select
jmp 0x1401a94eb
mov eax, 0x20
cmp rdi, rax
cmovg eax, edi
cmp dword [rsi + 0x20], eax
jge 0x1401a94b6
xor r8d, r8d
mov edx, eax
mov rcx, rsi
call fcn.1401c6f00
test eax, eax
je 0x1401a94c3
jmp 0x1401a94eb
mov rax, qword [rsi + 0x18]
and word [rsi + 8], 0x2d
mov qword [rsi + 0x10], rax
mov rcx, qword [rsi + 0x10]
mov r8, rdi
mov rdx, r14
call sub.msvcrt.dll_memcpy
mov edi, 0x7fffffff
mov eax, 0x202
and r15d, edi
mov word [rsi + 8], ax
mov byte [rsi + 0xa], 1
mov dword [rsi + 0xc], r15d
mov rdx, qword [rbp - 8]
mov rcx, rbx
call fcn.140174d70
mov rcx, qword [rbp - 8]
call fcn.140121070
jmp 0x1401a968d
cmp r14d, 0xc
je 0x1401a9540
mov r8, qword [rbp - 8]
test r8, r8
je 0x1401a952d
mov rcx, qword [rbp + 0x60]
lea rdx, [0x1402530f4]
call fcn.14018a7d0
mov rcx, qword [rbp - 8]
call fcn.140121070
mov rax, qword [rbp + 0x60]
mov r12, r15
inc dword [rax + 0x30]
mov dword [rax + 0x18], r14d
jmp 0x1401a9692
mov rcx, qword [rbp - 0x28]
call fcn.14016df60
mov r15, rax
test rax, rax
je 0x1401a968d
test byte [rax + 9], 1
mov r14, qword [rbp + 0x60]
je 0x1401a956f
mov rcx, r14
call fcn.1401ad790
test eax, eax
jne 0x1401a968d
movzx eax, byte [r15 + 9]
test al, 2
jne 0x1401a9591
test al, 4
je 0x1401a9586
mov r11, qword [rsp + 0x78]
test r11, r11
jne 0x1401a9596
mov rdx, r15
mov rcx, rbx
call fcn.140177f10
mov r11, qword [rsp + 0x78]
movzx eax, byte [r15 + 8]
dec eax
cmp eax, 0x2a
ja case.0x1401a95ba.5
lea r10, [0x140000000]
cdqe
mov eax, dword [r10 + rax*4 + 0x1ac9ac]
add rax, r10
jmp rax
mov r15d, dword [rsp + 0x68]
mov rcx, rbx
mov edx, r15d
call fcn.1401ca3a0
test r11, r11
jne 0x1401a9603
add dword [r14 + 0x38], 2
lea r8, [0x14024aef8]
lea edx, [r11 + 9]
xor r9d, r9d
mov rcx, rbx
call fcn.1401bc0e0
mov dword [rax + 4], r15d
mov dword [rax + 0x1c], r15d
mov dword [rax + 0x94], 0xfffff830
jmp 0x1401a968d
lea rdx, [rbp + 0x60]
mov rcx, r11
mov dword [rbp + 0x60], 0
call fcn.14019e370
mov edi, dword [rbp + 0x60]
test edi, edi
jns 0x1401a962e
cmp edi, 0x80000000
jne 0x1401a962c
mov edi, 0x7fffffff
jmp 0x1401a962e
neg edi
mov r8d, r15d
xor edx, edx
mov rcx, r14
call fcn.14017cb90
mov r9d, 3
mov r8d, r15d
lea edx, [r9 + 0x60]
mov rcx, rbx
mov dword [rsp + 0x20], edi
call fcn.1401bbec0
mov rax, qword [rsi + 0x18]
mov dword [rax + 0x74], edi
mov rax, qword [rsi + 0x18]
mov rcx, qword [rsi + 8]
mov edx, dword [rax + 0x74]
call fcn.140180f50
jmp 0x1401a968d
mov rdi, qword [rsi + 8]
test r11, r11
jne 0x1401a96d6
test rdi, rdi
je 0x1401a96d2
mov rax, qword [rdi + 8]
mov eax, dword [rax + 0x34]
movsxd rdx, eax
mov rcx, rbx
call fcn.140174c10
mov r12, qword [rsp + 0x60]
mov rdx, qword [rbp - 0x28]
mov rcx, r12
call fcn.140187640
mov rdx, qword [rsp + 0x78]
mov rcx, r12
call fcn.140187640
mov r12, qword [rsp + 0x168]
mov r14, qword [rsp + 0x170]
mov rbx, qword [rsp + 0x178]
add rsp, 0x130
pop r15
pop r13
pop rdi
pop rsi
pop rbp
ret
xor eax, eax
jmp 0x1401a9682
lea rdx, [rbp + 0x60]
mov rcx, r11
mov dword [rbp + 0x60], 0
call fcn.14019e370
mov edx, dword [rbp + 0x60]
mov r12, qword [rsp + 0x60]
xor r9d, r9d
xor r8d, r8d
mov rcx, rdi
mov dword [r12 + 0x74], edx
call fcn.140181060
cmp eax, 7
jne 0x1401a9692
mov rcx, r12
call fcn.1401a4c30
jmp 0x1401a9692
mov rsi, qword [rsi + 8]
or r15, 0xffffffffffffffff
test r11, r11
je 0x1401a9747
lea r9, str.fast
mov rdx, r11
sub r9, r11
movzx r8d, byte [rdx]
movzx eax, byte [r9 + rdx]
cmp r8d, eax
jne 0x1401a97ab
test r8d, r8d
jne 0x1401a97c1
lea r15d, [r8 + 2]
xor r14d, r14d
cmp dword [r13 + 8], 0
mov r12, qword [rsp + 0x60]
jne 0x1401a9790
test r15d, r15d
js 0x1401a9790
cmp dword [r12 + 0x28], 0
jle 0x1401a9790
mov rdi, r14
nop word [rax + rax]
mov rcx, qword [r12 + 0x20]
mov edx, r15d
mov rcx, qword [rdi + rcx + 8]
call fcn.140180e40
inc r14d
lea rdi, [rdi + 0x20]
cmp r14d, dword [r12 + 0x28]
jl 0x1401a9770
mov edx, r15d
mov rcx, rsi
call fcn.140180e40
mov rcx, rbx
movsxd rdx, eax
call fcn.140174c10
jmp 0x1401a9692
movzx ecx, byte [rax + r10 + 0x24c270]
movzx eax, byte [r8 + r10 + 0x24c270]
cmp eax, ecx
jne 0x1401a97c9
inc rdx
jmp 0x1401a9730
xor r8d, r8d
mov rcx, r11
lea edx, [r8 + 1]
call fcn.14015c1c0
xor r14d, r14d
mov ecx, r14d
test al, al
setne cl
mov r15d, ecx
jmp 0x1401a974a
mov r15d, dword [rsp + 0x68]
xor esi, esi
mov rcx, r14
mov edx, r15d
mov qword [rbp + 0x60], rsi
call fcn.140183b20
inc dword [r14 + 0x38]
mov rax, qword [rbp - 0x28]
movzx eax, byte [rax]
mov edi, dword [r14 + 0x38]
lea rcx, [0x140000000]
cmp byte [rax + rcx + 0x24c270], 0x70
jne 0x1401a9836
mov r9d, edi
mov r8d, r15d
mov edx, 0xb0
mov rcx, rbx
call fcn.1401bbe50
jmp 0x1401a9881
mov rax, qword [rsp + 0x78]
test rax, rax
je 0x1401a9867
lea rdx, [rbp + 0x60]
mov rcx, rax
call fcn.140187c60
test eax, eax
jne 0x1401a9867
mov rax, qword [rbp + 0x60]
test rax, rax
js 0x1401a9867
mov ecx, 0xfffffffe
cmp rax, rcx
jle 0x1401a986a
mov eax, ecx
jmp 0x1401a986a
mov rax, rsi
mov r9d, edi
mov r8d, r15d
mov edx, 0xb1
mov rcx, rbx
mov dword [rsp + 0x20], eax
call fcn.1401bbec0
mov r9d, 1
mov r8d, edi
mov rcx, rbx
lea edx, [r9 + 0x52]
call fcn.1401bbe50
jmp 0x1401a968d
mov rcx, r11
lea rdi, str.normal
call fcn.14015b0b0
mov r8d, eax
mov eax, dword [r13 + 8]
test eax, eax
jne 0x1401a993a
cmp r8d, 0xffffffff
jne 0x1401a98cf
mov r12, qword [rsp + 0x60]
movzx eax, byte [r12 + 0x69]
jmp 0x1401a996f
test eax, eax
jne 0x1401a993a
mov r12, qword [rsp + 0x60]
cmp dword [r12 + 0x28], 2
jle 0x1401a9933
mov edx, IsNetDrive
lea esi, [rax + 2]
nop dword [rax + rax]
mov rax, qword [r12 + 0x20]
mov rcx, qword [rdx + rax + 8]
mov rax, qword [rcx + 8]
mov rcx, qword [rax]
test r8d, r8d
js 0x1401a9922
cmp byte [rcx + 0x10], 0
jne 0x1401a9922
mov rax, qword [rcx + 0x120]
test rax, rax
je 0x1401a991e
cmp byte [rax + 0x3f], 2
je 0x1401a9922
mov byte [rcx + 8], r8b
inc esi
add rdx, 0x20
cmp esi, dword [r12 + 0x28]
jl 0x1401a98f0
mov rsi, qword [rbp - 0x48]
mov byte [r12 + 0x69], r8b
jmp 0x1401a993f
mov r12, qword [rsp + 0x60]
mov rax, qword [rsi + 8]
mov rcx, qword [rax + 8]
mov rax, qword [rcx]
test r8d, r8d
js 0x1401a996b
cmp byte [rax + 0x10], 0
jne 0x1401a996b
mov rcx, qword [rax + 0x120]
test rcx, rcx
je 0x1401a9967
cmp byte [rcx + 0x3f], 2
je 0x1401a996b
mov byte [rax + 8], r8b
movzx eax, byte [rax + 8]
cmp eax, 1
lea rdx, str.exclusive
mov rcx, rbx
cmovne rdx, rdi
call fcn.140174d70
jmp 0x1401a9692
test r11, r11
jne 0x1401a9994
or esi, 0xffffffff
jmp 0x1401a9a00
or r15, 0xffffffffffffffff
mov rdi, r15
nop dword [rax + rax]
inc rdi
cmp byte [r11 + rdi], 0
jne 0x1401a99a0
and edi, 0x3fffffff
lea r14, str.delete
lea r12, [0x14024ab20]
xor esi, esi
cmp r14, r12
je 0x1401a99fd
mov rdx, qword [r14]
test rdx, rdx
je 0x1401a99fd
mov r8d, edi
mov rcx, r11
call fcn.140111b70
test eax, eax
je 0x1401a99e9
mov r11, qword [rsp + 0x78]
inc esi
add r14, 8
jmp 0x1401a99c0
cmp esi, 2
jne 0x1401a9a13
mov rax, qword [rsp + 0x60]
mov eax, dword [rax + 0x30]
bt rax, 0x1c
jae 0x1401a9a18
mov esi, r15d
cmp dword [r13 + 8], 0
jne 0x1401a9a18
xor eax, eax
mov dword [r13 + 8], 1
jmp 0x1401a9a1c
cmp esi, 0xffffffff
je 0x1401a9a00
mov eax, dword [rsp + 0x68]
mov r12, qword [rsp + 0x60]
mov edi, dword [r12 + 0x28]
dec edi
js 0x1401a9a90
movsxd r15, edi
movsxd r12, eax
mov r14, r15
shl r14, 5
nop word [rax + rax]
mov rax, qword [rsp + 0x60]
mov rax, qword [rax + 0x20]
cmp qword [r14 + rax + 8], 0
je 0x1401a9a80
cmp r15, r12
je 0x1401a9a5d
cmp dword [r13 + 8], 0
jne 0x1401a9a80
mov edx, edi
mov rcx, rbx
call fcn.1401ca3a0
mov r9d, 1
mov r8d, edi
lea edx, [r9 + 6]
mov rcx, rbx
mov dword [rsp + 0x20], esi
call fcn.1401bbec0
dec r15
sub r14, 0x20
dec edi
jns 0x1401a9a40
mov r12, qword [rsp + 0x60]
mov eax, 1
mov rcx, rbx
lea edx, [rax + 0x52]
mov r9d, eax
mov r8d, eax
call fcn.1401bbe50
jmp 0x1401a9692
mov rax, qword [rsi + 8]
mov qword [rbp + 0x60], 0xfffffffffffffffe
mov rcx, qword [rax + 8]
mov rdi, qword [rcx]
test r11, r11
je 0x1401a9af5
lea rdx, [rbp + 0x60]
mov rcx, r11
call fcn.140187c60
mov rax, qword [rbp + 0x60]
or rcx, 0xffffffffffffffff
cmp rax, rcx
cmovl rax, rcx
mov rcx, qword [rdi + 0x120]
mov qword [rdi + 0xc8], rax
test rcx, rcx
je 0x1401a9af5
mov qword [rcx + 0x20], rax
mov rdx, qword [rdi + 0xc8]
jmp 0x1401a9685
mov rdi, qword [rsi + 8]
test r11, r11
jne 0x1401a9b17
mov rcx, rdi
call fcn.14017eb40
jmp 0x1401a9682
mov rcx, r11
call fcn.14015ae00
mov r12, qword [rsp + 0x60]
mov rcx, rdi
mov edx, eax
mov byte [r12 + 0x6a], al
mov esi, eax
call fcn.140180ec0
test eax, eax
jne 0x1401a9692
lea ecx, [rsi - 1]
cmp ecx, 1
ja 0x1401a9692
mov edi, dword [rbx + 0x98]
lea r8, [0x14024b048]
lea edx, [rax + 5]
xor r9d, r9d
mov rcx, rbx
call fcn.1401bc0e0
mov edx, dword [rsp + 0x68]
lea ecx, [rdi + 4]
mov dword [rax + 0x38], ecx
lea ecx, [rsi - 1]
mov dword [rax + 4], edx
mov dword [rax + 0x6c], ecx
mov rcx, rbx
mov dword [rax + 0x1c], edx
mov dword [rax + 0x64], edx
call fcn.1401ca3a0
jmp 0x1401a9692
test r11, r11
je 0x1401a9ba6
lea rdx, [rbp + 0x60]
mov rcx, r11
call fcn.14019e370
test eax, eax
je 0x1401a9ba6
mov edi, dword [rbp + 0x60]
test edi, edi
jg 0x1401a9bab
mov edi, 0x7fffffff
mov r8d, dword [rsp + 0x68]
xor edx, edx
mov rcx, r14
call fcn.14017cb90
mov esi, 1
mov r8d, edi
lea edx, [rsi + 0x46]
mov r9d, esi
mov rcx, rbx
call fcn.1401bbe50
mov r8d, dword [rsp + 0x68]
lea edx, [rsi + 0x3c]
mov rcx, rbx
call fcn.1401bbde0
lea edx, [rsi + 0x52]
mov r8d, esi
mov rcx, rbx
mov edi, eax
call fcn.1401bbde0
lea edx, [rsi + 0x54]
or r9d, 0xffffffff
mov r8d, esi
mov rcx, rbx
call fcn.1401bbe50
lea edx, [rsi + 0x30]
mov r9d, edi
mov r8d, esi
mov rcx, rbx
call fcn.1401bbe50
mov edx, edi
mov rcx, rbx
call fcn.1401c5dd0
jmp 0x1401a968d
test r11, r11
jne 0x1401a9c34
mov rax, qword [rsi + 0x18]
movsxd rdx, dword [rax + 0x74]
jmp 0x1401a9685
lea rdx, [rbp + 0x60]
mov rcx, r11
mov dword [rbp + 0x60], 0
call fcn.14019e370
mov rcx, qword [rsi + 0x18]
mov eax, dword [rbp + 0x60]
mov dword [rcx + 0x74], eax
jmp 0x1401a965b
test r11, r11
jne 0x1401a9c95
mov r12, qword [rsp + 0x60]
test byte [r12 + 0x30], 0x20
jne 0x1401a9c7a
xor eax, eax
mov rcx, rbx
movsxd rdx, eax
call fcn.140174c10
jmp 0x1401a9692
mov rcx, qword [rsi + 8]
xor edx, edx
call fcn.1401811b0
mov rcx, rbx
movsxd rdx, eax
call fcn.140174c10
jmp 0x1401a9692
lea rdx, [rbp + 0x60]
mov edi, 1
mov rcx, r11
mov dword [rbp + 0x60], edi
call fcn.14019e370
mov ebx, dword [rbp + 0x60]
test eax, eax
je 0x1401a9cbb
mov rcx, qword [rsi + 8]
mov edx, ebx
call fcn.1401811b0
mov rcx, qword [rsp + 0x78]
test ebx, ebx
mov edx, edi
setne r8b
call fcn.14015c1c0
mov r12, qword [rsp + 0x60]
test al, al
je 0x1401a9ce9
or qword [r12 + 0x30], 0x20
mov rcx, r12
call fcn.140177b80
jmp 0x1401a9692
and qword [r12 + 0x30], 0xffffffffffffffdf
mov rcx, r12
call fcn.140177b80
jmp 0x1401a9692
test r11, r11
je 0x1401a9dbf
lea rdx, [rsp + 0x70]
mov rcx, r11
call fcn.140187c60
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
test rax, rax
cmovs rax, qword [0x1404b41c8]
cmp dword [r13 + 8], 0
mov qword [rsp + 0x70], rax
jne 0x1401a9d37
mov qword [rcx + 0x40], rax
mov eax, dword [rcx + 0x28]
dec eax
movsxd rsi, eax
js 0x1401a9dbf
mov r14, rsi
shl r14, 5
nop dword [rax + rax]
mov rax, qword [rcx + 0x20]
mov rdi, qword [r14 + rax + 8]
test rdi, rdi
je 0x1401a9db6
cmp rsi, r12
je 0x1401a9d6a
cmp dword [r13 + 8], 0
jne 0x1401a9db6
cmp byte [rdi + 0x11], 0
mov r15, qword [rsp + 0x70]
mov r12, qword [rdi + 8]
je 0x1401a9d8a
inc dword [rdi + 0x14]
cmp byte [rdi + 0x12], 0
jne 0x1401a9d8a
mov rcx, rdi
call fcn.140132290
mov rcx, qword [r12]
mov qword [rcx + 0xa0], r15
call fcn.140168560
cmp byte [rdi + 0x11], 0
je 0x1401a9dad
dec dword [rdi + 0x14]
jne 0x1401a9dad
mov rcx, rdi
call fcn.1401d9bd0
mov r12, qword [rbp - 0x58]
mov rcx, qword [rsp + 0x60]
sub r14, 0x20
dec rsi
jns 0x1401a9d50
mov r12, qword [rsp + 0x60]
mov qword [rsp + 0x70], 0xffffffffffffffff
mov rcx, qword [r12 + 0x18]
test rcx, rcx
je 0x1401a9ddd
call qword [0x1404b4120]
mov r14, qword [rbp - 0x80]
test r14, r14
je 0x1401a9dfb
mov rdx, r14
mov rcx, r12
call fcn.140191760
test eax, eax
js 0x1401a9e79
jmp 0x1401a9dfd
xor eax, eax
movsxd rcx, eax
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rdi, qword [rcx + rax + 8]
test rdi, rdi
je 0x1401a9e79
cmp byte [rdi + 0x11], 0
je 0x1401a9e2a
inc dword [rdi + 0x14]
cmp byte [rdi + 0x12], 0
jne 0x1401a9e2a
mov rcx, rdi
call fcn.140132290
mov rax, qword [rdi + 8]
mov esi, dword [r12 + 0x290]
mov rcx, qword [rax]
mov rcx, qword [rcx + 0x48]
mov rax, qword [rcx]
test rax, rax
jne 0x1401a9e4e
mov dword [rbp - 0x38], recvfrom
jmp 0x1401a9e5e
lea r8, [rsp + 0x70]
mov edx, reloc.WS2_32.dll_select
call qword [rax + 0x50]
mov dword [rbp - 0x38], eax
mov dword [r12 + 0x290], esi
cmp byte [rdi + 0x11], 0
je 0x1401a9e79
dec dword [rdi + 0x14]
jne 0x1401a9e79
mov rcx, rdi
call fcn.1401d9bd0
mov rcx, qword [r12 + 0x18]
test rcx, rcx
je 0x1401a9e89
call qword [0x1404b4130]
mov rcx, qword [rbp - 0x38]
test ecx, ecx
jne 0x1401a9ea3
mov rdx, qword [rsp + 0x70]
mov rcx, rbx
call fcn.140174c10
jmp 0x1401a9692
cmp ecx, 0xc
je 0x1401a9692
mov rax, qword [rbp + 0x60]
inc dword [rax + 0x30]
mov dword [rax + 0x18], ecx
jmp 0x1401a9692
test r11, r11
jne 0x1401a9ed8
mov r12, qword [rsp + 0x60]
mov rcx, rbx
movzx edx, byte [r12 + 0x66]
call fcn.140174c10
jmp 0x1401a9692
mov rcx, r11
call fcn.14015c300
mov rdi, qword [r14]
movzx ecx, byte [rdi + 0x66]
mov ebx, eax
cmp ecx, eax
je 0x1401a968d
mov rcx, r14
call fcn.14015dc20
mov r12, qword [rsp + 0x60]
test eax, eax
jne 0x1401a9692
mov byte [rdi + 0x66], bl
jmp 0x1401a9692
test r11, r11
jne 0x1401a9f27
mov rdx, qword [0x140537648]
mov rcx, rbx
call fcn.140174d70
jmp 0x1401a968d
cmp byte [r11], 0
mov r12, qword [rsp + 0x60]
je 0x1401a9f66
mov rax, qword [r12]
lea r9, [rbp + 0x60]
mov r8d, 1
mov rcx, rax
mov rdx, r11
call qword [rax + gethostname]
test eax, eax
jne 0x1401a9f52
cmp dword [rbp + 0x60], eax
jne 0x1401a9f66
lea rdx, str.not_a_writable_directory
mov rcx, r14
call fcn.14018a7d0
jmp 0x1401a9692
cmp byte [r12 + 0x66], 1
ja 0x1401a9f76
mov rcx, r14
call fcn.14015dc20
mov rcx, qword [0x140537648]
call fcn.140121070
mov rax, qword [rsp + 0x78]
cmp byte [rax], 0
je 0x1401a9fa7
lea rcx, [0x1402530f4]
mov rdx, rax
call fcn.1401209b0
mov qword [0x140537648], rax
jmp 0x1401a9692
mov qword [0x140537648], 0
jmp 0x1401a9692
test r11, r11
jne 0x1401a9fd0
mov rdx, qword [0x140537650]
mov rcx, rbx
call fcn.140174d70
jmp 0x1401a968d
cmp byte [r11], 0
mov r12, qword [rsp + 0x60]
je 0x1401aa003
mov rax, qword [r12]
lea r9, [rbp + 0x60]
mov r8d, 1
mov rcx, rax
mov rdx, r11
call qword [rax + gethostname]
test eax, eax
jne 0x1401a9f52
cmp dword [rbp + 0x60], eax
je 0x1401a9f52
mov rcx, qword [0x140537650]
call fcn.140121070
mov rax, qword [rsp + 0x78]
cmp byte [rax], 0
je 0x1401aa034
lea rcx, [0x1402530f4]
mov rdx, rax
call fcn.1401209b0
mov qword [0x140537650], rax
jmp 0x1401a9692
mov qword [0x140537650], 0
jmp 0x1401a9692
test r11, r11
jne 0x1401aa054
movzx eax, byte [rsi + 0x10]
dec eax
jmp 0x1401a9682
mov r12, qword [rsp + 0x60]
cmp byte [r12 + 0x65], 0
jne 0x1401aa075
lea rdx, str.Safety_level_may_not_be_changed_inside_a_transaction
mov rcx, r14
call fcn.14018a7d0
jmp 0x1401a9692
cmp dword [rsp + 0x68], 1
je 0x1401a9692
mov r8b, 1
xor edx, edx
mov rcx, r11
call fcn.14015c1c0
mov ecx, 1
inc eax
mov byte [rsi + 0x11], cl
and eax, 7
cmove eax, ecx
mov rcx, r12
mov byte [rsi + 0x10], al
call fcn.140177b80
jmp 0x1401a9692
test r11, r11
jne 0x1401aa0e3
mov rdx, r15
mov rcx, rbx
call fcn.140177f10
mov rax, qword [r15 + 0x10]
mov r12, qword [rsp + 0x60]
test qword [r12 + 0x30], rax
mov eax, 0
mov rcx, rbx
setne al
mov rdx, rax
call fcn.140174c10
jmp 0x1401a9692
mov r12, qword [rsp + 0x60]
mov rdi, qword [r15 + 0x10]
cmp byte [r12 + 0x65], 0
jne 0x1401aa0f9
btr rdi, 0xe
xor r8d, r8d
mov rcx, r11
lea edx, [r8 + 1]
call fcn.14015c1c0
test al, al
je 0x1401aa113
or qword [r12 + 0x30], rdi
jmp 0x1401aa16b
mov rax, rdi
not rax
and qword [r12 + 0x30], rax
cmp rdi, 0x80000
jne 0x1401aa133
mov qword [r12 + 0x2f8], 0
test dil, 1
je 0x1401aa16b
mov rdx, qword [rsp + 0x78]
lea r9, str.reset
sub r9, rdx
nop dword [rax + rax]
movzx r8d, byte [rdx]
movzx eax, byte [r9 + rdx]
cmp r8d, eax
jne 0x1401aa185
test r8d, r8d
jne 0x1401aa1a2
mov rcx, r12
call fcn.1401aec20
mov edx, 0xa5
mov rcx, rbx
call fcn.1401bbd70
mov rcx, r12
call fcn.140177b80
jmp 0x1401a9692
lea r10, [0x140000000]
movzx ecx, byte [rax + r10 + 0x24c270]
movzx eax, byte [r8 + r10 + 0x24c270]
cmp eax, ecx
jne 0x1401aa16b
inc rdx
jmp 0x1401aa150
test r11, r11
je 0x1401a968d
mov rdi, qword [rbp + 0x60]
mov rdx, qword [rbp - 0x80]
mov rcx, rdi
call fcn.140183a50
mov r9, qword [rbp - 0x80]
mov r8, qword [rsp + 0x78]
mov edx, 2
mov rcx, rdi
call fcn.1401a37b0
mov r13, rax
test rax, rax
je 0x1401a968d
mov r14, qword [rax + 0x10]
xor r12d, r12d
mov dword [rbp + 0x60], r12d
test r14, r14
je 0x1401aa207
mov ecx, dword [r14 + 0x64]
and cl, 3
cmp cl, 2
je 0x1401aa207
mov r14, qword [r14 + 0x28]
test r14, r14
jne 0x1401aa1f2
mov rdx, rax
mov rcx, rdi
mov dword [rdi + 0x38], 7
call fcn.1401ca490
movsx eax, word [r13 + 0x36]
mov rsi, qword [r13 + 8]
xor ecx, ecx
mov edi, ecx
test eax, eax
jle 0x1401a968d
nop
movzx r9d, word [rsi + 0x12]
mov r11d, ecx
test r9b, 0x62
je 0x1401aa26f
cmp qword [r15 + 0x10], 0
jne 0x1401aa251
inc r12d
mov dword [rbp + 0x60], r12d
jmp 0x1401aa377
test r9b, 0x20
je 0x1401aa25f
mov r11d, 2
jmp 0x1401aa26f
movzx r11d, r9b
and r11d, 0x40
or r11d, 0x20
shr r11d, 5
test r9b, 1
jne 0x1401aa27a
mov r10d, ecx
jmp 0x1401aa2b6
test r14, r14
jne 0x1401aa285
lea r10d, [r14 + 1]
jmp 0x1401aa2b6
mov ecx, 1
mov r10d, ecx
mov edx, ecx
cmp eax, ecx
jl 0x1401aa2b6
mov rcx, qword [r14 + 8]
movsxd r8, eax
nop word [rax + rax]
movsx eax, word [rcx]
cmp eax, edi
je 0x1401aa2b6
inc rdx
inc r10d
add rcx, 2
cmp rdx, r8
jle 0x1401aa2a0
mov rdx, rsi
mov rcx, r13
call fcn.140183f00
cmp r11d, 2
jge 0x1401aa2d2
test rax, rax
je 0x1401aa2d2
mov r12, qword [rax + 8]
jmp 0x1401aa2d5
xor r12d, r12d
test r9b, 4
je 0x1401aa2f4
mov rcx, qword [rsi]
or rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x1401aa2e2
lea rdx, [rcx + 1]
add rdx, rax
jmp 0x1401aa31a
mov eax, dword [rsi + 8]
shr eax, 4
and eax, 0xf
je 0x1401aa313
lea ecx, [rax - 1]
lea rax, [0x140000000]
mov rdx, qword [rax + rcx*8 + 0x4b4258]
jmp 0x1401aa31a
lea rdx, [0x140224e98]
test byte [rsi + 8], 0xf
mov dword [rsp + 0x48], r11d
mov dword [rsp + 0x40], r10d
mov eax, 0
setne al
mov qword [rsp + 0x38], r12
mov dword [rsp + 0x30], eax
mov rax, qword [rsi]
mov qword [rsp + 0x28], rdx
mov r9d, edi
lea rcx, str.issisii
lea r8, str.issisi
sub r9d, dword [rbp + 0x60]
cmp qword [r15 + 0x10], 0
mov edx, 1
cmovne r8, rcx
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.1401c8010
mov r12d, dword [rbp + 0x60]
xor ecx, ecx
movsx eax, word [r13 + 0x36]
inc edi
add rsi, 0x18
cmp edi, eax
jl 0x1401aa230
jmp 0x1401a968d
mov rdi, qword [rbp - 0x80]
mov rcx, r14
mov dword [r14 + 0x38], 6
mov rdx, rdi
call fcn.140183a50
mov r12, qword [rsp + 0x60]
xor r15d, r15d
mov dword [rbp + 0x60], r15d
cmp dword [r12 + 0x28], r15d
jle 0x1401a9692
mov r14d, r15d
mov qword [rbp - 0x58], r15
or r13, 0xffffffffffffffff
test rdi, rdi
je 0x1401aa3e6
mov rdx, qword [r12 + 0x20]
mov rcx, rdi
mov rdx, qword [r14 + rdx]
call fcn.140111b20
test eax, eax
jne 0x1401aa5a1
mov rax, qword [r12 + 0x20]
mov rcx, qword [r14 + rax + 0x18]
mov esi, dword [rcx + 0xc]
add rcx, 8
test esi, esi
je 0x1401aa4c0
nop
mov rax, qword [rcx + 8]
dec esi
test rax, rax
je 0x1401aa4c0
nop
mov r8, qword [rax + 0x10]
cmp word [r8 + 0x36], 0
je 0x1401aa429
mov rax, qword [rax]
test rax, rax
jne 0x1401aa410
jmp 0x1401aa4c0
mov r8, qword [r8]
lea rdx, str.SELECTFROM__w_
mov rcx, r12
call fcn.1401a3e90
mov rdi, rax
test rax, rax
je 0x1401aa47f
lea rax, [rbp - 0x40]
mov qword [rsp + 0x30], r15
xor r9d, r9d
mov qword [rsp + 0x28], rax
mov r8d, r13d
mov rdx, rdi
mov rcx, r12
mov qword [rbp - 0x40], r15
mov qword [rsp + 0x20], r15
call fcn.1401a39e0
mov rcx, qword [rbp - 0x40]
call fcn.140113b80
mov rdx, rdi
mov rcx, r12
call fcn.140187640
cmp byte [r12 + 0x67], 0
je 0x1401aa4aa
mov rcx, qword [r12 + 0x160]
lea rdx, [0x14023e240]
call fcn.14018a7d0
mov rax, qword [r12 + 0x160]
mov dword [rax + 0x18], 7
mov rax, qword [r12 + 0x20]
mov rcx, qword [r14 + rax + 0x18]
add rcx, 8
test esi, esi
jne 0x1401aa400
mov r13, qword [rcx + 8]
test r13, r13
je 0x1401aa59d
nop dword [rax]
mov rax, qword [rsp + 0x78]
mov r15, qword [r13 + 0x10]
test rax, rax
je 0x1401aa4f1
mov rdx, qword [r15]
mov rcx, rax
call fcn.140111b20
test eax, eax
jne 0x1401aa588
movzx eax, byte [r15 + 0x3f]
cmp al, 2
jne 0x1401aa503
lea r12, str.view
jmp 0x1401aa52a
cmp al, 1
jne 0x1401aa510
lea r12, str.virtual
jmp 0x1401aa52a
test dword [r15 + 0x30], 0x1000
lea r12, str.shadow
lea rax, str.table
cmove r12, rax
mov r14d, dword [r15 + 0x30]
mov rcx, qword [r15]
movsx edi, word [r15 + 0x36]
mov esi, r14d
shr r14d, 7
shr esi, 0x10
and r14d, 1
and esi, 1
call fcn.1401acac0
mov rcx, qword [rsp + 0x60]
mov r9, qword [rcx + 0x20]
mov dword [rsp + 0x40], esi
mov dword [rsp + 0x38], r14d
mov r14, qword [rbp - 0x58]
mov dword [rsp + 0x30], edi
lea r8, str.sssiii
mov r9, qword [r14 + r9]
mov edx, 1
mov rcx, rbx
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], rax
call fcn.1401c8010
mov r13, qword [r13]
test r13, r13
jne 0x1401aa4d0
mov r12, qword [rsp + 0x60]
xor r15d, r15d
or r13, 0xffffffffffffffff
mov eax, dword [rbp + 0x60]
mov rdi, qword [rbp - 0x80]
add r14, 0x20
inc eax
mov qword [rbp - 0x58], r14
mov dword [rbp + 0x60], eax
cmp eax, dword [r12 + 0x28]
jl 0x1401aa3c8
jmp 0x1401a9692
mov r12, qword [rsp + 0x60]
test r11, r11
je 0x1401a9692
mov r14, qword [rbp - 0x80]
mov rdx, r11
mov rcx, r12
mov r8, r14
call fcn.140192490
mov rsi, qword [rbp + 0x60]
mov rdi, rax
test rax, rax
jne 0x1401aa63f
mov r8, qword [rsp + 0x78]
lea edx, [rax + 2]
mov r9, r14
mov rcx, rsi
call fcn.1401a37b0
test rax, rax
je 0x1401a9692
test byte [rax + 0x30], 0x80
je 0x1401a9692
mov rdi, qword [rax + 0x10]
test rdi, rdi
je 0x1401a9692
mov eax, dword [rdi + 0x64]
and al, 3
cmp al, 2
je 0x1401aa636
mov rdi, qword [rdi + 0x28]
test rdi, rdi
jne 0x1401aa624
test rdi, rdi
je 0x1401a9692
mov rdx, qword [rdi + 0x30]
mov rcx, r12
call fcn.1401b0ee0
cmp qword [r15 + 0x10], 0
je 0x1401aa660
movzx r12d, word [rdi + 0x60]
mov dword [rsi + 0x38], 6
jmp 0x1401aa66c
movzx r12d, word [rdi + 0x5e]
mov dword [rsi + 0x38], 3
mov r13, qword [rdi + 0x18]
mov edx, eax
mov rcx, rsi
call fcn.140183b20
xor ecx, ecx
movsxd r12, r12d
mov r14d, ecx
mov esi, ecx
test r12, r12
jle 0x1401a968d
nop dword [rax]
mov rax, qword [rdi + 8]
movzx edx, word [rax + rsi*2]
test dx, dx
js 0x1401aa6ad
movsx rax, dx
lea rcx, [rax + rax*2]
mov rax, qword [r13 + 8]
mov rcx, qword [rax + rcx*8]
movsx eax, dx
mov qword [rsp + 0x28], rcx
lea r8, str.iisX
mov r9d, r14d
mov edx, 1
mov rcx, rbx
mov dword [rsp + 0x20], eax
call fcn.1401c8010
cmp qword [r15 + 0x10], 0
je 0x1401aa711
movzx eax, word [rdi + 0x5e]
mov rcx, qword [rdi + 0x40]
xor edx, edx
cmp r14d, eax
mov rax, qword [rdi + 0x38]
lea r8, str.isiX
movzx r9d, byte [rax + rsi]
mov rax, qword [rcx + rsi*8]
setl dl
mov dword [rsp + 0x28], edx
mov rcx, rbx
mov edx, 4
mov qword [rsp + 0x20], rax
call fcn.1401c8010
mov rax, qword [rbp + 0x60]
mov edx, 0x53
mov rcx, rbx
mov r9d, dword [rax + 0x38]
lea r8d, [rdx - 0x52]
call fcn.1401bbe50
inc rsi
inc r14d
mov ecx, 0
cmp rsi, r12
jl 0x1401aa690
jmp 0x1401a968d
mov r12, qword [rsp + 0x60]
test r11, r11
je 0x1401a9692
mov r8, qword [rbp - 0x80]
mov rdx, r11
mov rcx, r12
call fcn.1401925b0
mov rdi, rax
test rax, rax
je 0x1401a9692
mov rdx, qword [rax + 0x60]
mov rcx, r12
call fcn.1401b0ee0
mov rcx, qword [rbp + 0x60]
mov edx, eax
mov dword [rcx + 0x38], 5
call fcn.140183b20
mov rdi, qword [rdi + 0x10]
xor ecx, ecx
mov esi, ecx
test rdi, rdi
je 0x1401a9692
lea r14, [0x1402564a0]
lea r15, [0x1402564a4]
lea r13, [0x140252e34]
lea r12d, [rcx + 1]
nop dword [rax]
nop dword [rax + rax]
cmp qword [rdi + 0x48], 0
mov eax, dword [rdi + 0x64]
mov edx, ecx
setne dl
and eax, 3
cmp byte [rdi + 0x62], 0
mov dword [rsp + 0x38], edx
setne cl
mov qword [rbp + 0x18], r14
mov qword [rbp + 0x20], r15
mov qword [rbp + 0x28], r13
mov rax, qword [rbp + rax*8 + 0x18]
mov qword [rsp + 0x30], rax
mov rax, qword [rdi]
mov dword [rsp + 0x28], ecx
lea r8, str.isisi
mov r9d, esi
mov edx, r12d
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.1401c8010
mov rdi, qword [rdi + 0x28]
inc esi
mov ecx, 0
test rdi, rdi
jne 0x1401aa7c0
jmp 0x1401a968d
mov r12, qword [rsp + 0x60]
mov dword [r14 + 0x38], 3
cmp dword [r12 + 0x28], 0
jle 0x1401a9692
xor esi, esi
lea r14, [0x14024b65c]
mov edi, esi
nop dword [rax + rax]
mov rdx, qword [r12 + 0x20]
mov rax, qword [rdx + rdi + 8]
test rax, rax
je 0x1401aa89b
mov rax, qword [rax + 8]
mov rcx, qword [rax]
mov rax, r14
cmp byte [rcx + 0x13], 0
jne 0x1401aa876
mov rax, qword [rcx + 0xd0]
mov qword [rsp + 0x28], rax
mov rax, qword [rdx + rdi]
lea r8, [0x1402564b0]
mov r9d, esi
mov edx, 1
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.1401c8010
inc esi
add rdi, 0x20
cmp esi, dword [r12 + 0x28]
jl 0x1401aa850
jmp 0x1401a9692
mov r12, qword [rsp + 0x60]
mov dword [r14 + 0x38], 2
mov rdi, qword [r12 + 0x270]
test rdi, rdi
je 0x1401a9692
xor esi, esi
lea r12d, [rsi + 1]
mov rax, qword [rdi + 0x10]
lea r8, [0x1402564b4]
mov r9d, esi
mov rcx, qword [rax]
mov edx, r12d
mov qword [rsp + 0x20], rcx
mov rcx, rbx
call fcn.1401c8010
mov rdi, qword [rdi]
inc esi
test rdi, rdi
jne 0x1401aa8d1
jmp 0x1401a968d
mov r12, qword [rsp + 0x60]
lea r15, [0x140537798]
mov esi, dword [r12 + 0x2c]
mov dword [r14 + 0x38], 6
lea r14, [0x1405376e0]
shr esi, 5
mov r12d, 1
and esi, 1
nop dword [rax]
mov rdi, qword [r14]
test rdi, rdi
je 0x1401aa95a
nop dword [rax + rax]
mov r9d, esi
mov r8d, r12d
mov rdx, rdi
mov rcx, rbx
call fcn.14016de70
mov rdi, qword [rdi + 0x40]
test rdi, rdi
jne 0x1401aa940
add r14, 8
cmp r14, r15
jl 0x1401aa930
mov r12, qword [rsp + 0x60]
mov rdi, qword [r12 + 0x258]
test rdi, rdi
je 0x1401a9692
nop dword [rax]
mov rdx, qword [rdi + 0x10]
mov r9d, esi
xor r8d, r8d
mov rcx, rbx
call fcn.14016de70
mov rdi, qword [rdi]
test rdi, rdi
jne 0x1401aa980
jmp 0x1401a9692
mov r12, qword [rsp + 0x60]
mov dword [r14 + 0x38], 1
mov rdi, qword [r12 + 0x228]
test rdi, rdi
je 0x1401a9692
mov r12d, 1
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rdi + 0x10]
lea r8, reloc.WS2_32.dll_WSAStartup
mov edx, r12d
mov r9, qword [r9 + 8]
mov rcx, rbx
call fcn.1401c8010
mov rdi, qword [rdi]
test rdi, rdi
jne 0x1401aa9d0
jmp 0x1401a968d
lea rdi, str.analysis_limit
lea rsi, str.BCDE
nop word [rax + rax]
mov r9, qword [rdi]
lea r8, reloc.WS2_32.dll_WSAStartup
mov edx, 1
mov rcx, rbx
call fcn.1401c8010
add rdi, 0x18
cmp rdi, rsi
jl 0x1401aaa10
jmp 0x1401a968d
mov r12, qword [rsp + 0x60]
test r11, r11
je 0x1401a9692
mov r8, qword [rbp - 0x80]
mov rdx, r11
mov rcx, r12
call fcn.1401925b0
mov r13, rax
test rax, rax
je 0x1401a9692
cmp byte [rax + 0x3f], 0
jne 0x1401a9692
mov rdi, qword [rax + 0x48]
test rdi, rdi
je 0x1401a9692
mov rdx, qword [rax + 0x60]
mov rcx, r12
call fcn.1401b0ee0
mov rcx, qword [rbp + 0x60]
xor r15d, r15d
mov edx, eax
mov dword [rcx + 0x38], 8
call fcn.140183b20
lea r9, [0x1402564b8]
lea r12d, [r15 + 1]
xor esi, esi
cmp dword [rdi + 0x28], esi
jle 0x1401aab2c
lea r14, [rdi + 0x40]
movzx ecx, byte [rdi + 0x2d]
call fcn.14012b600
movzx ecx, byte [rdi + 0x2e]
mov r8, rax
call fcn.14012b600
movsxd rcx, dword [r14]
mov qword [rsp + 0x50], r9
mov qword [rsp + 0x48], r8
mov qword [rsp + 0x40], rax
mov rax, qword [r14 + 8]
lea rdx, [rcx + rcx*2]
mov rcx, qword [r13 + 8]
mov qword [rsp + 0x38], rax
mov rax, qword [rcx + rdx*8]
lea r8, str.iissssss
mov qword [rsp + 0x30], rax
mov rax, qword [rdi + 0x10]
mov r9d, r15d
mov qword [rsp + 0x28], rax
mov edx, r12d
mov rcx, rbx
mov dword [rsp + 0x20], esi
call fcn.1401c8010
inc esi
lea r14, [r14 + 0x10]
lea r9, [0x1402564b8]
cmp esi, dword [rdi + 0x28]
jl 0x1401aaab0
lea r9, [0x1402564b8]
mov rdi, qword [rdi + 8]
inc r15d
test rdi, rdi
jne 0x1401aaaa1
jmp 0x1401a968d
mov eax, dword [r14 + 0x38]
mov r12, qword [rsp + 0x60]
lea esi, [rax + 5]
lea ecx, [rax + 1]
mov dword [rbp - 0x4c], esi
inc esi
mov dword [rbp - 0x78], ecx
mov dword [r14 + 0x38], esi
mov rax, qword [r12 + 0x20]
mov dword [rsp + 0x6c], esi
mov rcx, qword [rdi + rax + 0x18]
mov rax, qword [rcx + 0x10]
test rax, rax
je 0x1401a9692
mov r14, qword [rbp - 0x80]
nop dword [rax + rax]
test r11, r11
je 0x1401aaba1
mov rcx, qword [rbp + 0x60]
mov r9, r14
mov r8, r11
xor edx, edx
call fcn.1401a37b0
mov rdi, rax
mov qword [rbp - 0x70], rax
xor eax, eax
jmp 0x1401aabac
mov rdi, qword [rax + 0x10]
mov rax, qword [rax]
mov qword [rbp - 0x70], rdi
mov qword [rbp - 0x58], rax
test rdi, rdi
je 0x1401ab034
cmp byte [rdi + 0x3f], 0
jne 0x1401ab034
cmp qword [rdi + 0x48], 0
je 0x1401ab034
mov rdx, qword [rdi + 0x60]
mov rcx, r12
call fcn.1401b0ee0
movsxd r14, eax
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + 0x20]
mov r15, r14
mov edx, r14d
shl r15, 5
mov r13, qword [r15 + rcx]
mov rcx, qword [rbp + 0x60]
mov qword [rbp - 0x80], r13
call fcn.140183b20
cmp r14d, 1
je 0x1401aac37
mov r10, qword [rbp + 0x60]
mov rcx, qword [r10]
mov rdx, qword [rcx + 0x20]
mov rax, qword [rdx + r15 + 8]
cmp byte [rax + 0x11], 0
je 0x1401aac37
mov rax, qword [rdi]
mov r8d, dword [rdi + 0x28]
xor r9d, r9d
mov edx, r14d
mov rcx, r10
mov qword [rsp + 0x20], rax
call fcn.1401625a0
movsx ecx, word [rdi + 0x36]
mov rax, qword [rbp + 0x60]
add ecx, esi
cmp ecx, dword [rax + 0x38]
jle 0x1401aac49
mov dword [rax + 0x38], ecx
mov r9, rdi
mov r8d, r14d
xor edx, edx
mov rcx, rax
mov dword [rsp + 0x20], 0x65
call fcn.1401a4dd0
mov r8, qword [rdi]
mov edx, dword [rbp - 0x78]
mov rcx, rbx
call fcn.1401c6340
mov rsi, qword [rdi + 0x48]
mov r15d, 1
test rsi, rsi
je 0x1401aad6c
mov rdx, qword [rsi + 0x10]
mov rcx, qword [rsp + 0x60]
mov r8, r13
call fcn.1401925b0
mov rdi, rax
test rax, rax
je 0x1401aad58
mov rax, qword [rbp + 0x60]
xor r13d, r13d
mov qword [rsp + 0x70], r13
cmp r14d, 1
je 0x1401aace9
mov rcx, qword [rax]
mov rdx, r14
mov rcx, qword [rcx + 0x20]
shl rdx, 5
mov rdx, qword [rcx + rdx + 8]
cmp byte [rdx + 0x11], r13b
je 0x1401aace9
mov rax, qword [rdi]
mov r8d, dword [rdi + 0x28]
mov rcx, qword [rbp + 0x60]
xor r9d, r9d
mov edx, r14d
mov qword [rsp + 0x20], rax
call fcn.1401625a0
mov rax, qword [rbp + 0x60]
lea r9, [rsp + 0x70]
mov r8, rsi
mov rdx, rdi
mov rcx, rax
mov qword [rsp + 0x20], r13
call fcn.1401944b0
test eax, eax
jne 0x1401a968d
mov r13, qword [rsp + 0x70]
test r13, r13
jne 0x1401aad2f
mov rcx, qword [rbp + 0x60]
mov r9, rdi
mov r8d, r14d
mov edx, r15d
mov dword [rsp + 0x20], 0x65
call fcn.1401a4dd0
jmp 0x1401aad54
mov r9d, dword [r13 + 0x58]
mov r8d, r15d
mov edx, 0x65
mov rcx, rbx
mov dword [rsp + 0x20], r14d
call fcn.1401bbec0
mov rcx, qword [rbp + 0x60]
mov rdx, r13
call fcn.1401c94a0
mov r13, qword [rbp - 0x80]
mov rsi, qword [rsi + 8]
inc r15d
test rsi, rsi
jne 0x1401aac82
mov rdi, qword [rbp - 0x70]
mov rax, qword [rbp + 0x60]
cmp dword [rax + 0x34], r15d
jge 0x1401aad7a
mov dword [rax + 0x34], r15d
xor r8d, r8d
mov rcx, rbx
lea edx, [r8 + 0x26]
call fcn.1401bbde0
mov rsi, qword [rdi + 0x48]
mov r12, qword [rsp + 0x60]
mov r14d, 1
mov r15d, eax
mov dword [rbp - 0x60], eax
mov dword [rbp - 0x50], r14d
test rsi, rsi
je 0x1401ab00a
nop dword [rax + rax]
mov rdx, qword [rsi + 0x10]
mov r8, r13
mov rcx, r12
call fcn.1401925b0
mov r15, rax
mov qword [rbp - 0x48], rax
xor eax, eax
mov qword [rsp + 0x70], rax
mov r12d, eax
mov qword [rbp - 0x40], rax
test r15, r15
je 0x1401aadfa
mov rcx, qword [rbp + 0x60]
lea rax, [rbp - 0x40]
lea r9, [rsp + 0x70]
mov r8, rsi
mov rdx, r15
mov qword [rsp + 0x20], rax
call fcn.1401944b0
mov r12, qword [rbp - 0x40]
mov rdx, qword [rbp + 0x60]
mov r8d, dword [rsp + 0x6c]
dec dword [rdx + 0x44]
mov ecx, dword [rsi + 0x28]
mov r13d, dword [rdx + 0x44]
add ecx, r8d
cmp ecx, dword [rdx + 0x38]
jle 0x1401aae18
mov dword [rdx + 0x38], ecx
cmp dword [rsi + 0x28], 0
jle 0x1401aae88
mov eax, r8d
mov edi, r8d
mov r14, r12
neg eax
lea r15, [rsi + 0x40]
mov dword [rbp - 0x64], eax
test r12, r12
je 0x1401aae3a
mov r9d, dword [r14]
jmp 0x1401aae3d
mov r9d, dword [r15]
mov rdx, qword [rbp - 0x70]
xor r8d, r8d
mov rcx, rbx
mov dword [rsp + 0x20], edi
call fcn.14018bf80
mov r9d, r13d
mov r8d, edi
mov edx, gethostbyaddr
mov rcx, rbx
call fcn.1401bbe50
mov eax, dword [rbp - 0x64]
inc edi
add eax, edi
add r15, 0x10
add r14, 4
cmp eax, dword [rsi + 0x28]
jl 0x1401aae30
mov rdi, qword [rbp - 0x70]
mov r14d, dword [rbp - 0x50]
mov r15, qword [rbp - 0x48]
mov r8d, dword [rsp + 0x6c]
mov rdx, qword [rsp + 0x70]
test rdx, rdx
je 0x1401aaf4d
mov rcx, qword [rsp + 0x60]
call fcn.14019fa60
mov ecx, dword [rsi + 0x28]
mov r15d, dword [rbp - 0x4c]
mov r8d, dword [rsp + 0x6c]
mov dword [rsp + 0x30], ecx
mov r9d, ecx
mov qword [rsp + 0x28], rax
mov rcx, rbx
mov edx, 0x60
mov dword [rsp + 0x20], r15d
call fcn.1401bbf40
movsxd rdx, dword [rbx + 0x98]
cmp dword [rbx + 0x9c], edx
jg 0x1401aaef8
mov r9d, r13d
mov r8d, r14d
mov edx, 0x1f
mov rcx, rbx
mov dword [rsp + 0x20], r15d
call fcn.14015c470
xor r8d, r8d
mov edx, eax
jmp 0x1401aaf2a
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
xor r8d, r8d
mov dword [rbx + 0x98], eax
mov rax, qword [rbx + 0x90]
mov dword [rax + rcx*8], 0x1f
mov dword [rax + rcx*8 + 4], r14d
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], r15d
mov qword [rax + rcx*8 + 0x10], r8
mov rax, qword [rbx]
cmp byte [rax + 0x67], 0
jne 0x1401aaf7d
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x90]
mov byte [rax + rcx*8 + 1], 0xfd
mov dword [rax + rcx*8 + 0x10], r8d
jmp 0x1401aaf7d
test r15, r15
je 0x1401aaf7d
mov r9d, dword [rbx + 0x98]
mov dword [rsp + 0x20], r8d
mov edx, 0x20
mov r8d, r14d
mov rcx, rbx
add r9d, 2
call fcn.1401bbec0
mov edx, r13d
mov rcx, rbx
call fcn.1401c55e0
mov r15d, dword [rbp - 0x78]
xor r8d, r8d
test byte [rdi + 0x30], 0x80
mov rcx, rbx
mov edx, 0x86
lea r9d, [r15 + 1]
je 0x1401aaf9a
lea edx, [r8 + 0x4a]
call fcn.1401bbe50
mov r9, qword [rsi + 0x10]
lea eax, [r14 - 1]
lea r8, [0x1402564cc]
lea edx, [r15 + 2]
mov rcx, rbx
mov dword [rsp + 0x20], eax
call fcn.1401c8010
mov r9d, 4
lea edx, [r9 + 0x4f]
mov r8d, r15d
mov rcx, rbx
call fcn.1401bbe50
mov edx, r13d
mov rcx, rbx
call fcn.1401c9090
mov rdx, r12
mov r12, qword [rsp + 0x60]
mov rcx, r12
call fcn.140187640
mov rsi, qword [rsi + 8]
mov r13, qword [rbp - 0x80]
inc r14d
mov dword [rbp - 0x50], r14d
test rsi, rsi
jne 0x1401aadb0
mov r15d, dword [rbp - 0x60]
xor r8d, r8d
lea r9d, [r15 + 1]
mov rcx, rbx
lea edx, [r8 + 5]
call fcn.1401bbe50
mov edx, r15d
mov rcx, rbx
call fcn.1401c5dd0
mov esi, dword [rsp + 0x6c]
mov r14, qword [rbp - 0x80]
mov rax, qword [rbp - 0x58]
mov r11, qword [rsp + 0x78]
test rax, rax
jne 0x1401aab80
jmp 0x1401a9692
test r11, r11
je 0x1401a968d
xor r8d, r8d
mov rcx, r11
lea edx, [r8 + 1]
call fcn.14015c1c0
mov r12, qword [rsp + 0x60]
test al, al
mov eax, 0
mov rcx, r12
setne al
mov edx, eax
call fcn.1401ae390
jmp 0x1401a9692
mov r15d, dword [rsp + 0x68]
mov rax, qword [rbp - 0x28]
mov r12, qword [rsp + 0x78]
movzx eax, byte [rax]
xor esi, esi
cmp byte [rax + r10 + 0x24c270], 0x71
mov edi, esi
mov qword [rbp - 0x38], rsi
sete dil
or rax, 0xffffffffffffffff
cmp qword [r13], rsi
cmove r15d, eax
mov eax, 0x64
mov dword [r14 + 0x38], 6
mov dword [rbp - 0x78], eax
mov dword [rsp + 0x6c], eax
mov dword [rsp + 0x68], r15d
test r12, r12
je 0x1401ab124
lea rdx, [rsp + 0x6c]
mov rcx, r12
call fcn.14019e370
test eax, eax
je 0x1401ab0ee
mov eax, dword [rsp + 0x6c]
mov dword [rbp - 0x78], eax
test eax, eax
jg 0x1401ab124
lea eax, [rsi + 0x64]
jmp 0x1401ab121
test r15d, r15d
js 0x1401ab109
mov rax, qword [rsp + 0x60]
movsxd rcx, r15d
mov rax, qword [rax + 0x20]
shl rcx, 5
mov r9, qword [rcx + rax]
jmp 0x1401ab10c
mov r9, rsi
mov r8, r12
xor edx, edx
mov rcx, r14
call fcn.1401a37b0
mov qword [rbp - 0x38], rax
mov eax, dword [rsp + 0x6c]
mov dword [rbp - 0x78], eax
mov esi, 1
lea r8d, [rax - 1]
mov rcx, rbx
lea edx, [rsi + 0x46]
mov r9d, esi
call fcn.1401bbe50
mov r12, qword [rsp + 0x60]
xor r13d, r13d
movsxd rax, edi
mov dword [rsp + 0x6c], r13d
lea rdi, [0x1405376c8]
mov qword [rbp - 0x40], rax
cmp dword [r12 + 0x28], r13d
jle 0x1401ac0bb
movsxd rax, r15d
mov edi, r13d
mov qword [rbp - 0x58], rax
nop dword [rax + rax]
mov esi, r13d
test rax, rax
js 0x1401ab181
cmp edi, r15d
jne 0x1401ac09e
mov edx, edi
mov rcx, r14
call fcn.140183b20
mov rax, qword [r12 + 0x20]
movsxd r14, edi
shl r14, 5
mov edx, r13d
mov r15, qword [r14 + rax + 0x18]
mov r8, qword [r15 + 0x10]
test r8, r8
je 0x1401ac091
mov r9, qword [rbp - 0x38]
mov rax, qword [r8 + 0x10]
test r9, r9
je 0x1401ab1be
cmp r9, rax
jne 0x1401ab1e4
test byte [rax + 0x30], 0x80
jne 0x1401ab1c6
inc edx
mov rax, qword [rax + 0x10]
mov ecx, r13d
test rax, rax
je 0x1401ab1df
mov rax, qword [rax + 0x28]
inc edx
inc ecx
test rax, rax
jne 0x1401ab1d2
cmp ecx, esi
cmovg esi, ecx
mov r8, qword [r8]
test r8, r8
jne 0x1401ab1b0
test edx, edx
je 0x1401ac091
test r9, r9
je 0x1401ab1fb
inc edx
lea eax, [rdx + 1]
mov rcx, r12
movsxd rdx, eax
shl rdx, 2
call fcn.1401877d0
mov rdi, rax
test rax, rax
je 0x1401ac0af
mov r11, qword [rbp - 0x38]
mov r8d, r13d
mov rdx, r13
mov r10d, 1
test r11, r11
je 0x1401ab238
mov r8d, r10d
mov edx, r10d
mov dword [rax + 4], r13d
mov r9, qword [r15 + 0x10]
test r9, r9
je 0x1401ab28d
mov rcx, qword [r9 + 0x10]
test r11, r11
je 0x1401ab24f
cmp r11, rcx
jne 0x1401ab285
test byte [rcx + 0x30], 0x80
jne 0x1401ab261
mov eax, dword [rcx + 0x28]
inc r8d
inc rdx
mov dword [rdi + rdx*4], eax
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x1401ab285
nop word [rax + 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 0x1401ab270
mov r9, qword [r9]
test r9, r9
jne 0x1401ab241
mov rdx, qword [rbp + 0x60]
mov dword [rdi], r8d
lea ecx, [rsi + 8]
cmp dword [rdx + 0x38], ecx
mov byte [rdx + 0x1f], r13b
mov dword [rdx + 0x28], r13d
cmovg ecx, dword [rdx + 0x38]
mov esi, 2
mov dword [rdx + 0x38], ecx
movsxd rdx, dword [rbx + 0x98]
cmp dword [rbx + 0x9c], edx
jg 0x1401ab2d9
mov r9d, r8d
mov edx, 0x9a
mov rcx, rbx
mov r8d, esi
mov dword [rsp + 0x20], r10d
call fcn.14015c470
mov edx, eax
jmp 0x1401ab307
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rbx + 0x98], eax
mov rax, qword [rbx + 0x90]
mov dword [rax + rcx*8], 0x9a
mov dword [rax + rcx*8 + 4], esi
mov dword [rax + rcx*8 + 8], r8d
mov dword [rax + rcx*8 + 0xc], r10d
mov qword [rax + rcx*8 + 0x10], r13
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], r13b
je 0x1401ab31f
mov r8, rdi
mov edx, 0xfffffff1
call fcn.140144830
jmp 0x1401ab35f
test edx, edx
jns 0x1401ab32b
mov edx, dword [rbx + 0x98]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x90]
cmp byte [rax + rcx*8 + 1], r13b
lea rdx, [rax + rcx*8]
je 0x1401ab357
mov r9d, 0xfffffff1
mov r8, rdi
mov rcx, rbx
call fcn.1401dc0d0
jmp 0x1401ab35f
mov qword [rdx + 0x10], rdi
mov byte [rdx + 1], 0xf1
movsxd rax, dword [rbx + 0x98]
test eax, eax
jle 0x1401ab381
mov ecx, dword [rsp + 0x6c]
movzx edx, cl
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x90]
mov word [rax + rcx*8 - 0x16], dx
mov r8d, esi
mov edx, gethostbyaddr
mov rcx, rbx
call fcn.1401bbde0
mov r8, qword [r12 + 0x20]
lea rdx, str._in_database__s__n
mov r8, qword [r14 + r8]
mov rcx, r12
mov esi, eax
call fcn.1401a3e90
movsxd rdx, dword [rbx + 0x98]
mov rdi, rax
cmp dword [rbx + 0x9c], edx
jg 0x1401ab3db
mov r9d, 3
xor r8d, r8d
mov rcx, rbx
lea edx, [r9 + 0x72]
mov dword [rsp + 0x20], r13d
call fcn.14015c470
mov edx, eax
jmp 0x1401ab405
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rbx + 0x98], eax
mov rax, qword [rbx + 0x90]
mov qword [rax + rcx*8], 0x75
mov qword [rax + rcx*8 + 8], 3
mov qword [rax + rcx*8 + 0x10], r13
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], r13b
je 0x1401ab41d
mov r8, rdi
mov edx, 0xfffffff9
call fcn.140144830
jmp 0x1401ab462
test edx, edx
jns 0x1401ab429
mov edx, dword [rbx + 0x98]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x90]
cmp byte [rax + rcx*8 + 1], r13b
lea rdx, [rax + rcx*8]
je 0x1401ab455
mov r9d, 0xfffffff9
mov r8, rdi
mov rcx, rbx
call fcn.1401dc0d0
jmp 0x1401ab462
test rdi, rdi
je 0x1401ab462
mov qword [rdx + 0x10], rdi
mov byte [rdx + 1], 0xf9
mov edx, WSAStartup
mov rcx, rbx
mov dword [rsp + 0x20], 3
lea r9d, [rdx - 0x6c]
lea r8d, [rdx - 0x6d]
call fcn.1401bbec0
mov rcx, rbx
call fcn.14015da70
mov edx, esi
mov rcx, rbx
call fcn.1401c5dd0
mov r15, qword [r15 + 0x10]
mov qword [rbp - 0x48], r15
test r15, r15
je 0x1401ac08d
nop dword [rax]
nop word [rax + rax]
mov r15, qword [r15 + 0x10]
mov qword [rbp - 0x10], r13
mov dword [rbp - 0x68], 0xffffffff
mov qword [rbp - 0x70], r15
cmp byte [r15 + 0x3f], r13b
jne 0x1401ac074
mov r9, qword [rbp - 0x38]
test r9, r9
je 0x1401ab4df
cmp r9, r15
jne 0x1401ac074
test byte [r15 + 0x30], 0x80
jne 0x1401ab4ed
mov qword [rsp + 0x70], r13
jmp 0x1401ab517
mov rsi, qword [r15 + 0x10]
mov qword [rsp + 0x70], rsi
test rsi, rsi
je 0x1401ab517
nop dword [rax + rax]
mov eax, dword [rsi + 0x64]
and al, 3
cmp al, 2
je 0x1401ab512
mov rsi, qword [rsi + 0x28]
test rsi, rsi
jne 0x1401ab500
mov qword [rsp + 0x70], rsi
mov r14, qword [rbp + 0x60]
lea rax, [rbp - 0x64]
mov r12d, 1
mov qword [rsp + 0x38], rax
lea rax, [rbp - 0x60]
lea r8d, [r12 + 0x64]
mov qword [rsp + 0x30], rax
xor r9d, r9d
mov rdx, r15
mov rcx, r14
mov qword [rsp + 0x28], r13
mov dword [rsp + 0x20], r12d
call fcn.1401a4f20
lea r9d, [r12 + 6]
lea edx, [r12 + 0x46]
xor r8d, r8d
mov rcx, rbx
call fcn.1401bbe50
mov rdi, qword [r15 + 0x10]
test rdi, rdi
je 0x1401ab590
mov esi, 8
xor r8d, r8d
mov r9d, esi
mov rcx, rbx
lea edx, [r8 + 0x47]
call fcn.1401bbe50
mov rdi, qword [rdi + 0x28]
inc esi
test rdi, rdi
jne 0x1401ab573
mov edi, dword [rbp - 0x60]
xor r9d, r9d
mov rcx, rbx
lea edx, [r9 + 0x26]
mov r8d, edi
call fcn.1401bbe50
mov edx, 0x55
mov r9d, r12d
lea r8d, [rdx - 0x4e]
mov rcx, rbx
call fcn.1401bbe50
mov dword [rbp - 0x30], eax
cmp qword [rbp - 0x40], r13
jne 0x1401ab602
movsx r9d, word [r15 + 0x38]
mov r8d, edi
mov edx, 0x5d
mov rcx, rbx
dec r9d
mov dword [rsp + 0x20], 3
call fcn.1401bbec0
movsxd rcx, dword [rbx + 0x98]
test ecx, ecx
jle 0x1401ab602
mov rax, qword [rbx + 0x90]
lea rcx, [rcx + rcx*2]
mov edx, pe_nt_image_headers64
mov word [rax + rcx*8 - 0x16], dx
mov r12d, r13d
cmp r13w, word [r15 + 0x36]
jge 0x1401ab973
movzx ecx, word [r15 + 0x32]
mov rdi, r13
mov qword [rbp - 0x18], r13
and ecx, 1
mov qword [rbp - 0x20], rcx
nop dword [rax]
nop word [rax + rax]
mov rsi, qword [r15 + 8]
movsx eax, word [r15 + 0x34]
add rsi, rdi
cmp r12d, eax
je 0x1401ab956
test byte [rsi + 8], 0xf
jne 0x1401ab65e
test rcx, rcx
je 0x1401ab956
dec dword [r14 + 0x44]
mov r15d, dword [r14 + 0x44]
jmp 0x1401ab670
test rcx, rcx
je 0x1401ab66d
dec dword [r14 + 0x44]
mov r15d, dword [r14 + 0x44]
jmp 0x1401ab670
mov r15d, r13d
mov r8d, dword [rbp - 0x60]
mov rdx, qword [rbp - 0x70]
mov r9d, r12d
mov rcx, rbx
mov dword [rsp + 0x20], 3
call fcn.14018bf80
or edx, 0xffffffff
mov rcx, rbx
call fcn.1401c55a0
cmp byte [rax], 0x5d
jne 0x1401ab6bb
movsxd rax, dword [rbx + 0x98]
test eax, eax
jle 0x1401ab6bb
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x90]
mov edx, pe_nt_image_headers64
mov word [rax + rcx*8 - 0x16], dx
test byte [rsi + 8], 0xf
je 0x1401ab7de
mov edx, reloc.WS2_32.dll_gethostbyaddr
mov rcx, rbx
lea r8d, [rdx - 0x30]
call fcn.1401bbde0
mov r9, qword [rsi]
mov rcx, qword [rsp + 0x60]
mov r14d, eax
mov rax, qword [rbp - 0x70]
lea rdx, str.NULL_value_in__s._s
mov r8, qword [rax]
call fcn.1401a3e90
movsxd rdx, dword [rbx + 0x98]
mov rdi, rax
cmp dword [rbx + 0x9c], edx
jg 0x1401ab724
mov r9d, 3
xor r8d, r8d
mov rcx, rbx
lea edx, [r9 + 0x72]
mov dword [rsp + 0x20], r13d
call fcn.14015c470
mov edx, eax
jmp 0x1401ab74e
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rbx + 0x98], eax
mov rax, qword [rbx + 0x90]
mov qword [rax + rcx*8], 0x75
mov qword [rax + rcx*8 + 8], 3
mov qword [rax + rcx*8 + 0x10], r13
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], r13b
je 0x1401ab766
mov r8, rdi
mov edx, 0xfffffff9
call fcn.140144830
jmp 0x1401ab7ab
test edx, edx
jns 0x1401ab772
mov edx, dword [rbx + 0x98]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x90]
cmp byte [rax + rcx*8 + 1], r13b
lea rdx, [rax + rcx*8]
je 0x1401ab79e
mov r9d, 0xfffffff9
mov r8, rdi
mov rcx, rbx
call fcn.1401dc0d0
jmp 0x1401ab7ab
test rdi, rdi
je 0x1401ab7ab
mov qword [rdx + 0x10], rdi
mov byte [rdx + 1], 0xf9
cmp qword [rbp - 0x20], r13
je 0x1401ab7c7
mov eax, dword [rsi + 8]
and al, 0xf0
cmp al, 0x10
je 0x1401ab7c7
mov edx, r15d
mov rcx, rbx
call fcn.1401c55e0
jmp 0x1401ab7cf
mov rcx, rbx
call fcn.14015da70
mov edx, r14d
mov rcx, rbx
call fcn.1401c5dd0
mov rdi, qword [rbp - 0x18]
mov rax, qword [rbp - 0x70]
test dword [rax + 0x30], 0x10000
je 0x1401ab94f
mov eax, dword [rsi + 8]
shr eax, 4
and eax, 0xf
cmp eax, 1
je 0x1401ab949
lea ecx, [rax - 1]
xor r9d, r9d
lea rax, [0x140000000]
movsx eax, byte [rcx + rax + 0x24ba08]
lea edx, [r9 + 0x15]
lea r8d, [r9 + 3]
mov rcx, rbx
mov dword [rsp + 0x20], eax
call fcn.1401bbec0
mov r8d, dword [rsi + 8]
shr r8d, 4
mov r14d, eax
mov rax, qword [rbp - 0x70]
mov rdx, qword [rax + 8]
mov r9, qword [rax]
and r8d, 0xf
mov rcx, qword [rdx + rdi]
lea rax, [0x140000000]
dec r8d
mov r8, qword [rax + r8*8 + 0x4b4258]
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0x60]
lea rdx, str.non__s_value_in__s._s
call fcn.1401a3e90
movsxd rdx, dword [rbx + 0x98]
mov rdi, rax
cmp dword [rbx + 0x9c], edx
jg 0x1401ab8a0
mov r9d, 3
xor r8d, r8d
mov rcx, rbx
lea edx, [r9 + 0x72]
mov dword [rsp + 0x20], r13d
call fcn.14015c470
mov edx, eax
jmp 0x1401ab8ca
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rbx + 0x98], eax
mov rax, qword [rbx + 0x90]
mov qword [rax + rcx*8], 0x75
mov qword [rax + rcx*8 + 8], 3
mov qword [rax + rcx*8 + 0x10], r13
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], r13b
je 0x1401ab8e2
mov r8, rdi
mov edx, 0xfffffff9
call fcn.140144830
jmp 0x1401ab927
test edx, edx
jns 0x1401ab8ee
mov edx, dword [rbx + 0x98]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x90]
cmp byte [rax + rcx*8 + 1], r13b
lea rdx, [rax + rcx*8]
je 0x1401ab91a
mov r9d, 0xfffffff9
mov r8, rdi
mov rcx, rbx
call fcn.1401dc0d0
jmp 0x1401ab927
test rdi, rdi
je 0x1401ab927
mov qword [rdx + 0x10], rdi
mov byte [rdx + 1], 0xf9
mov edx, r15d
mov rcx, rbx
call fcn.1401c9090
mov rcx, rbx
call fcn.14015da70
mov edx, r14d
mov rcx, rbx
call fcn.1401c5dd0
mov rdi, qword [rbp - 0x18]
mov r15, qword [rbp - 0x70]
jmp 0x1401ab952
mov r15, rax
mov rcx, qword [rbp - 0x20]
movsx eax, word [r15 + 0x36]
mov r14, qword [rbp + 0x60]
add rdi, 0x18
inc r12d
mov qword [rbp - 0x18], rdi
cmp r12d, eax
jl 0x1401ab630
mov rdx, qword [r15 + 0x20]
test rdx, rdx
je 0x1401abb26
mov rdi, qword [rsp + 0x60]
mov eax, dword [rdi + 0x30]
bt rax, 9
jb 0x1401abb26
xor r8d, r8d
mov rcx, rdi
call fcn.140190c40
mov r15, rax
cmp byte [rdi + 0x67], r13b
jne 0x1401abb12
mov r14d, dword [r14 + 0x44]
mov rsi, qword [rbp + 0x60]
mov ecx, dword [rbp - 0x60]
inc ecx
lea r12d, [r14 - 2]
mov dword [rsi + 0x40], ecx
mov dword [rsi + 0x44], r12d
mov ecx, dword [rax]
dec ecx
movsxd rdi, ecx
test ecx, ecx
jle 0x1401aba06
mov r12, qword [rbp + 0x60]
mov rsi, rdi
shl rsi, 5
add rsi, 8
add rsi, rax
mov rdx, qword [rsi]
lea r8d, [r14 - 1]
xor r9d, r9d
mov rcx, r12
call fcn.14018f9a0
dec rdi
lea rsi, [rsi - 0x20]
test rdi, rdi
jg 0x1401ab9e0
mov rsi, qword [rbp + 0x60]
lea r12d, [r14 - 2]
mov rdx, qword [r15 + 8]
mov r9d, reloc.WS2_32.dll_recv
mov r8d, r12d
mov rcx, rsi
call fcn.14018fea0
lea edx, [r14 - 1]
mov rcx, rbx
call fcn.1401c9090
mov rax, qword [rbp - 0x70]
mov rcx, qword [rsp + 0x60]
mov dword [rsi + 0x40], r13d
mov r8, qword [rax]
lea rdx, str.CHECK_constraint_failed_in__s
call fcn.1401a3e90
movsxd rdx, dword [rbx + 0x98]
mov rdi, rax
cmp dword [rbx + 0x9c], edx
jg 0x1401aba73
mov r9d, 3
xor r8d, r8d
mov rcx, rbx
lea edx, [r9 + 0x72]
mov dword [rsp + 0x20], r13d
call fcn.14015c470
mov edx, eax
jmp 0x1401aba9d
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rbx + 0x98], eax
mov rax, qword [rbx + 0x90]
mov qword [rax + rcx*8], 0x75
mov qword [rax + rcx*8 + 8], 3
mov qword [rax + rcx*8 + 0x10], r13
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], r13b
je 0x1401abab5
mov r8, rdi
mov edx, 0xfffffff9
call fcn.140144830
jmp 0x1401abafa
test edx, edx
jns 0x1401abac1
mov edx, dword [rbx + 0x98]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x90]
cmp byte [rax + rcx*8 + 1], r13b
lea rdx, [rax + rcx*8]
je 0x1401abaed
mov r9d, 0xfffffff9
mov r8, rdi
mov rcx, rbx
call fcn.1401dc0d0
jmp 0x1401abafa
test rdi, rdi
je 0x1401abafa
mov qword [rdx + 0x10], rdi
mov byte [rdx + 1], 0xf9
mov rcx, rbx
call fcn.14015da70
mov edx, r12d
mov rcx, rbx
call fcn.1401c9090
mov rdi, qword [rsp + 0x60]
test r15, r15
je 0x1401abb22
mov rdx, r15
mov rcx, rdi
call fcn.14013fa10
mov r15, qword [rbp - 0x70]
mov rsi, qword [rbp - 0x40]
test rsi, rsi
jne 0x1401abf12
mov r14, qword [r15 + 0x10]
test r14, r14
je 0x1401abf12
mov eax, dword [rbp - 0x64]
mov rcx, qword [rsp + 0x70]
mov edi, 8
sub edi, eax
mov r12d, eax
mov dword [rbp - 0x4c], eax
mov rax, qword [rbp + 0x60]
mov dword [rbp - 0x50], edi
nop dword [rax]
dec dword [rax + 0x44]
mov esi, dword [rax + 0x44]
cmp rcx, r14
je 0x1401abef6
mov ecx, dword [rbp - 0x68]
mov r8d, dword [rbp - 0x60]
xor r9d, r9d
mov dword [rsp + 0x38], ecx
mov rcx, qword [rbp - 0x10]
mov rdx, r14
mov qword [rsp + 0x30], rcx
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x28], rcx
mov rcx, rax
mov dword [rsp + 0x20], r13d
call fcn.14019d5a0
mov edx, 0x55
lea r8d, [rdi + r12]
lea r9d, [rdx - 0x54]
mov rcx, rbx
mov qword [rbp - 0x10], r14
mov dword [rbp - 0x68], eax
call fcn.1401bbe50
movsxd rdi, dword [rbx + 0x98]
movzx r15d, word [r14 + 0x60]
cmp dword [rbx + 0x9c], edi
jg 0x1401abbed
mov eax, dword [rbp - 0x68]
mov r9d, esi
mov r8d, r12d
mov edx, 0x1f
mov rcx, rbx
mov dword [rsp + 0x20], eax
call fcn.14015c470
mov edi, eax
jmp 0x1401abc1d
mov edx, dword [rbp - 0x68]
lea rcx, [rdi + rdi*2]
lea eax, [rdi + 1]
mov dword [rbx + 0x98], eax
mov rax, qword [rbx + 0x90]
mov dword [rax + rcx*8], 0x1f
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], edx
mov qword [rax + rcx*8 + 0x10], r13
mov rax, qword [rbx]
cmp byte [rax + 0x67], r13b
jne 0x1401abc3e
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x90]
mov byte [rax + rcx*8 + 1], 0xfd
mov dword [rax + rcx*8 + 0x10], r15d
lea r8, str.row
mov edx, 3
mov rcx, rbx
call fcn.1401c6340
mov edx, WSAStartup
mov rcx, rbx
lea r9d, [rdx - 0x6c]
lea r8d, [rdx - 0x68]
mov dword [rsp + 0x20], 3
call fcn.1401bbec0
lea r8, str._missing_from_index
mov edx, 4
mov rcx, rbx
call fcn.1401c6340
mov edx, WSAStartup
mov rcx, rbx
lea r9d, [rdx - 0x6c]
lea r8d, [rdx - 0x6b]
mov dword [rsp + 0x20], 3
call fcn.1401bbec0
mov r8, qword [r14]
mov edx, 4
mov rcx, rbx
call fcn.1401c6340
mov edx, WSAStartup
mov rcx, rbx
lea r9d, [rdx - 0x6c]
lea r8d, [rdx - 0x6b]
mov dword [rbp - 0x20], eax
mov dword [rsp + 0x20], 3
call fcn.1401bbec0
mov rcx, rbx
call fcn.14015da70
mov edx, edi
mov rcx, rbx
mov esi, eax
mov dword [rbp - 0x18], eax
call fcn.1401c5dd0
cmp byte [r14 + 0x62], r13b
je 0x1401abe7b
mov rax, qword [rbp + 0x60]
mov edi, r13d
dec dword [rax + 0x44]
mov r15d, dword [rax + 0x44]
cmp r13w, word [r14 + 0x5e]
jae 0x1401abd5a
mov r12, qword [rbp - 0x70]
mov rsi, r13
nop dword [rax]
mov rax, qword [r14 + 8]
movsx rcx, word [rax + rsi]
test ecx, ecx
js 0x1401abd2d
mov rax, qword [r12 + 8]
lea rcx, [rcx + rcx*2]
test byte [rax + rcx*8 + 8], 0xf
jne 0x1401abd44
mov r8d, dword [rbp - 0x68]
mov r9d, r15d
mov edx, gethostbyaddr
add r8d, edi
mov rcx, rbx
call fcn.1401bbe50
movzx eax, word [r14 + 0x5e]
inc edi
add rsi, 2
cmp edi, eax
jl 0x1401abd10
mov r12d, dword [rbp - 0x4c]
mov esi, dword [rbp - 0x18]
mov r8d, r12d
mov edx, 5
mov rcx, rbx
call fcn.1401bbde0
mov edx, r15d
mov rcx, rbx
mov edi, eax
call fcn.1401c55e0
mov edx, dword [rbx + 0x98]
test edi, edi
jns 0x1401abd84
lea edi, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x67], r13b
je 0x1401abd96
lea rax, [0x1405376c8]
jmp 0x1401abda8
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x90]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
movsxd rdx, dword [rbx + 0x98]
movzx edi, word [r14 + 0x5e]
cmp dword [rbx + 0x9c], edx
jg 0x1401abddd
mov eax, dword [rbp - 0x68]
mov r9d, r15d
mov r8d, r12d
mov edx, 0x28
mov rcx, rbx
mov dword [rsp + 0x20], eax
call fcn.14015c470
mov edx, eax
jmp 0x1401abe10
mov r8d, dword [rbp - 0x68]
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rbx + 0x98], eax
mov rax, qword [rbx + 0x90]
mov dword [rax + rcx*8], MsiGetActiveDatabase
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r13
mov rax, qword [rbx]
cmp byte [rax + 0x67], r13b
jne 0x1401abe30
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x90]
mov byte [rax + rcx*8 + 1], 0xfd
mov dword [rax + rcx*8 + 0x10], edi
lea r8, str.non_unique_entry_in_index
mov edx, 3
mov rcx, rbx
call fcn.1401c6340
mov edx, dword [rbp - 0x20]
mov rcx, rbx
call fcn.1401c55e0
mov rcx, qword [rbx + 0x18]
not r15d
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1401abe6b
mov r8d, r15d
mov rdx, rbx
call fcn.140172d20
jmp 0x1401abe7b
mov rcx, qword [rcx + 0x50]
mov eax, dword [rbx + 0x98]
movsxd rdx, r15d
mov dword [rcx + rdx*4], eax
mov edx, dword [rbx + 0x98]
test esi, esi
jns 0x1401abe88
lea esi, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x67], r13b
je 0x1401abe9a
lea rax, [0x1405376c8]
jmp 0x1401abeac
movsxd rax, esi
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x90]
lea rax, [rax + rcx*8]
mov r8d, dword [rbp - 0x80]
mov dword [rax + 8], edx
mov rax, qword [rbp + 0x60]
test r8d, r8d
je 0x1401abeee
mov r9, qword [rax + 0x10]
not r8d
mov rcx, qword [r9 + 0x18]
mov eax, dword [rcx + 0x48]
add eax, dword [rcx + 0x44]
jns 0x1401abed9
mov rdx, r9
call fcn.140172d20
jmp 0x1401abeea
mov rcx, qword [rcx + 0x50]
mov eax, dword [r9 + 0x98]
movsxd rdx, r8d
mov dword [rcx + rdx*4], eax
mov rax, qword [rbp + 0x60]
mov edi, dword [rbp - 0x50]
mov rcx, qword [rsp + 0x70]
mov r14, qword [r14 + 0x28]
inc r12d
mov dword [rbp - 0x4c], r12d
test r14, r14
jne 0x1401abb60
mov r15, qword [rbp - 0x70]
mov rsi, qword [rbp - 0x40]
mov edi, dword [rbp - 0x30]
mov r8d, dword [rbp - 0x60]
mov edx, 5
mov r9d, edi
mov rcx, rbx
call fcn.1401bbe50
mov edx, dword [rbx + 0x98]
lea ecx, [rdi - 1]
test ecx, ecx
jns 0x1401abf39
lea ecx, [rdx - 1]
mov rax, qword [rbx]
lea r12, [0x1405376c8]
cmp byte [rax + 0x67], r13b
je 0x1401abf4e
mov rax, r12
jmp 0x1401abf60
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x90]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
test rsi, rsi
jne 0x1401ac074
lea r8, str.wrong__of_entries_in_index
lea edx, [rsi + 2]
mov rcx, rbx
call fcn.1401c6340
mov rdi, qword [r15 + 0x10]
test rdi, rdi
je 0x1401ac074
mov r15d, dword [rbp - 0x64]
mov rax, qword [rsp + 0x70]
lea r14d, [rsi + 8]
add r15d, 0xfffffff8
nop dword [rax]
cmp rax, rdi
je 0x1401ac064
mov edx, 0x61
lea r8d, [r15 + r14]
mov rcx, rbx
lea r9d, [rdx - 0x5e]
call fcn.1401bbe50
xor r9d, r9d
mov r8d, r14d
lea edx, [r9 + 0x35]
mov rcx, rbx
mov dword [rsp + 0x20], 3
call fcn.1401bbec0
mov esi, eax
movsxd rax, dword [rbx + 0x98]
test eax, eax
jle 0x1401abffa
mov rcx, qword [rbx + 0x90]
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.1401c6340
mov edx, WSAStartup
mov rcx, rbx
lea r9d, [rdx - 0x6d]
lea r8d, [rdx - 0x6b]
mov dword [rsp + 0x20], 3
call fcn.1401bbec0
mov rcx, rbx
call fcn.14015da70
mov edx, dword [rbx + 0x98]
test esi, esi
jns 0x1401ac03c
lea esi, [rdx - 1]
mov rax, qword [rbx]
cmp byte [rax + 0x67], r13b
je 0x1401ac04a
mov rax, r12
jmp 0x1401ac05c
movsxd rax, esi
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x90]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
mov rax, qword [rsp + 0x70]
mov rdi, qword [rdi + 0x28]
inc r14d
test rdi, rdi
jne 0x1401abfa0
mov r15, qword [rbp - 0x48]
mov r15, qword [r15]
mov qword [rbp - 0x48], r15
test r15, r15
jne 0x1401ab4b0
mov r12, qword [rsp + 0x60]
mov edi, dword [rsp + 0x6c]
mov rax, qword [rbp - 0x58]
mov r15d, dword [rsp + 0x68]
mov r14, qword [rbp + 0x60]
inc edi
mov dword [rsp + 0x6c], edi
cmp edi, dword [r12 + 0x28]
jl 0x1401ab170
lea rdi, [0x1405376c8]
mov esi, 1
xor r9d, r9d
lea r8, [0x14024fbe8]
mov rcx, rbx
lea edx, [r9 + 7]
call fcn.1401bc0e0
test rax, rax
je 0x1401ac10b
sub esi, dword [rbp - 0x78]
lea rcx, [0x140256598]
lea rdx, str.unknown_error
mov qword [rax + 0x40], rcx
mov rcx, qword [str.database_disk_image_is_malformed]
mov byte [rax + 0x31], 0xff
test rcx, rcx
mov dword [rax + 8], esi
mov byte [rax + 0x79], 0xff
cmovne rdx, rcx
mov qword [rax + 0x88], rdx
mov rax, qword [rbx]
mov ecx, dword [rbx + 0x98]
cmp byte [rax + 0x67], r13b
jne 0x1401ac121
mov rdi, qword [rbx + 0x90]
lea eax, [rcx - 2]
mov dword [rdi + 0xc], eax
jmp 0x1401a9692
test r11, r11
jne 0x1401ac163
mov rcx, r14
call fcn.1401ad790
test eax, eax
jne 0x1401a968d
mov rax, qword [r14]
lea rdi, str.UTF8
mov rcx, rbx
movzx edx, byte [rax + 0x64]
add rdx, rdx
mov rdx, qword [rdi + rdx*8]
call fcn.140174d70
jmp 0x1401a968d
mov r12, qword [rsp + 0x60]
test byte [r12 + 0x2c], 0x40
jne 0x1401a9692
mov rax, qword [str.UTF8]
lea rdi, str.UTF8
test rax, rax
je 0x1401ac1df
nop word [rax + rax]
mov rdx, rax
mov rcx, r11
call fcn.1401b6780
test eax, eax
je 0x1401ac1ae
mov rax, qword [rdi + 0x10]
add rdi, 0x10
test rax, rax
jne 0x1401ac190
jmp 0x1401ac1df
movzx eax, byte [rdi + 8]
mov edx, 2
test al, al
cmovne edx, eax
mov rax, qword [r12 + 0x20]
mov rcx, qword [rax + 0x18]
mov byte [rcx + 0x71], dl
mov rcx, r12
call fcn.1401b4f60
cmp qword [rdi], 0
jne 0x1401a9692
mov r11, qword [rsp + 0x78]
lea rdx, str.unsupported_encoding:__s
mov r8, r11
mov rcx, r14
call fcn.14018a7d0
jmp 0x1401a9692
mov esi, dword [rsp + 0x68]
mov edi, dword [r15 + 0x10]
mov rcx, rbx
mov edx, esi
call fcn.1401ca3a0
test r11, r11
je 0x1401ac25f
test byte [r15 + 9], 8
jne 0x1401ac25f
xor r9d, r9d
lea r8, [0x140250358]
mov rcx, rbx
lea edx, [r9 + 2]
call fcn.1401bc0e0
mov rcx, qword [rsp + 0x78]
lea rdx, [rbp + 0x60]
mov rbx, rax
mov dword [rbp + 0x60], 0
mov dword [rax + 4], esi
mov dword [rax + 0x1c], esi
mov dword [rax + 0x20], edi
call fcn.14019e370
mov ecx, dword [rbp + 0x60]
mov eax, 1
mov dword [rbx + 0x24], ecx
mov word [rbx + 0x1a], ax
jmp 0x1401a968d
xor r9d, r9d
lea r8, [0x140250360]
mov rcx, rbx
lea edx, [r9 + 3]
call fcn.1401bc0e0
mov dword [rax + 4], esi
mov dword [rax + 0x1c], esi
mov dword [rax + 0x24], edi
and dword [rbx + 0xd0], 0xffffffdf
jmp 0x1401a968d
mov esi, 1
xor edi, edi
mov dword [r14 + 0x38], esi
cmp rdi, 0x27
ja 0x1401ac2a5
mov r8, qword [r10 + rdi*8 + 0x24ba50]
jmp 0x1401ac2a8
xor r8d, r8d
inc rdi
test r8, r8
je 0x1401ac27e
mov edx, esi
mov rcx, rbx
call fcn.1401c6340
mov r9d, esi
mov r8d, esi
mov edx, 0x53
mov rcx, rbx
call fcn.1401bbe50
lea r10, [0x140000000]
jmp 0x1401ac295
cmp qword [r13], 0
mov r10d, recvfrom
cmovne r10d, dword [rsp + 0x68]
test r11, r11
je 0x1401ac3c3
lea r9, str.full
mov rdx, r11
sub r9, r11
nop dword [rax]
movzx r8d, byte [rdx]
movzx eax, byte [rdx + r9]
cmp r8d, eax
jne 0x1401ac31c
test r8d, r8d
jne 0x1401ac338
lea eax, [r8 + 1]
jmp 0x1401ac3c5
lea rdi, [0x140000000]
movzx ecx, byte [rax + rdi + 0x24c270]
movzx eax, byte [r8 + rdi + 0x24c270]
cmp eax, ecx
jne 0x1401ac33d
inc rdx
jmp 0x1401ac300
lea r9, str.restart
mov rdx, r11
sub r9, r11
nop word [rax + rax]
movzx r8d, byte [rdx]
movzx eax, byte [rdx + r9]
cmp r8d, eax
jne 0x1401ac369
test r8d, r8d
jne 0x1401ac37e
lea eax, [r8 + 2]
jmp 0x1401ac3c5
movzx ecx, byte [rax + rdi + 0x24c270]
movzx eax, byte [r8 + rdi + 0x24c270]
cmp eax, ecx
jne 0x1401ac383
inc rdx
jmp 0x1401ac350
lea r9, str.truncate
mov rdx, r11
sub r9, r11
movzx r8d, byte [rdx]
movzx eax, byte [rdx + r9]
cmp r8d, eax
jne 0x1401ac3a9
test r8d, r8d
jne 0x1401ac3be
lea eax, [r8 + 3]
jmp 0x1401ac3c5
movzx ecx, byte [rax + rdi + 0x24c270]
movzx eax, byte [r8 + rdi + 0x24c270]
cmp eax, ecx
jne 0x1401ac3c3
inc rdx
jmp 0x1401ac390
xor eax, eax
mov dword [r14 + 0x38], 3
mov r14d, 1
mov r9d, eax
lea edx, [r14 + 5]
mov r8d, r10d
mov rcx, rbx
mov dword [rsp + 0x20], r14d
call fcn.1401bbec0
lea r9d, [r14 + 2]
lea edx, [r14 + 0x52]
mov r8d, r14d
mov rcx, rbx
call fcn.1401bbe50
jmp 0x1401a968d
xor edi, edi
test r11, r11
je 0x1401ac42a
lea rdx, [rbp + 0x60]
mov rcx, r11
mov dword [rbp + 0x60], edi
call fcn.14019e370
mov r12, qword [rsp + 0x60]
mov edx, dword [rbp + 0x60]
mov rcx, r12
call fcn.140112cc0
jmp 0x1401ac42f
mov r12, qword [rsp + 0x60]
lea rax, [0x1401cc420]
cmp qword [r12 + 0x168], rax
jne 0x1401ac448
mov edi, dword [r12 + 0x170]
movsxd rdx, edi
mov rcx, rbx
call fcn.140174c10
jmp 0x1401a9692
mov r12, qword [rsp + 0x60]
mov rcx, r12
call fcn.14011c220
jmp 0x1401a9692
test r11, r11
je 0x1401ac492
lea rdx, [rbp - 0x64]
mov rcx, r11
mov dword [rbp - 0x64], 0
call fcn.14019e370
mov r15d, dword [rbp - 0x64]
test r15b, 2
je 0x1401a968d
jmp 0x1401ac498
mov r15d, 0xfffe
mov eax, dword [r14 + 0x34]
mov ecx, dword [rsp + 0x68]
mov rsi, qword [rsp + 0x60]
mov dword [rbp - 0x30], eax
inc eax
mov dword [r14 + 0x34], eax
mov r14, qword [rbp - 0x80]
test r14, r14
je 0x1401ac4bb
mov eax, ecx
jmp 0x1401ac4c0
mov eax, dword [rsi + 0x28]
dec eax
movsxd rdi, eax
cmp r12, rdi
jg 0x1401ac79b
mov r13, r12
sub rdi, r12
shl r13, 5
inc rdi
mov qword [rbp - 0x48], rdi
nop dword [rax]
cmp ecx, 1
je 0x1401ac784
mov r12, qword [rbp + 0x60]
mov edx, ecx
mov rcx, r12
call fcn.140183b20
mov rax, qword [rsi + 0x20]
mov rcx, qword [r13 + rax + 0x18]
mov r14, qword [rcx + 0x10]
test r14, r14
je 0x1401ac780
nop dword [rax]
mov rdi, qword [r14 + 0x10]
test dword [rdi + 0x30], 0x100
je 0x1401ac770
movzx esi, word [rdi + 0x3a]
mov rax, qword [rdi + 0x10]
add si, 0x2e
test rax, rax
je 0x1401ac541
test byte [rax + 0x64], 0x80
je 0x1401ac591
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x1401ac532
test si, si
je 0x1401ac591
mov r8d, dword [rsp + 0x68]
mov edx, dword [rbp - 0x30]
mov rcx, qword [rbp + 0x60]
mov r9, rdi
mov dword [rsp + 0x20], 0x65
call fcn.1401a4dd0
mov r9d, dword [rbx + 0x98]
mov r8d, dword [rbp - 0x30]
movsx edx, si
mov ecx, r15d
and ecx, 1
mov dword [rsp + 0x20], edx
mov edx, 0x23
add ecx, 2
add r9d, ecx
mov rcx, rbx
call fcn.1401bbec0
mov r12, qword [rbp + 0x60]
mov rsi, qword [rsp + 0x60]
mov r9, qword [rdi]
lea rdx, str.ANALYZE___w_.__w_
mov r8, qword [rsi + 0x20]
mov rcx, rsi
mov r8, qword [r13 + r8]
call fcn.1401a3e90
mov rdi, rax
test r15b, 1
je 0x1401ac6bc
movzx eax, byte [r12 + 0x1f]
test al, al
jne 0x1401ac5d4
inc dword [r12 + 0x38]
mov esi, dword [r12 + 0x38]
jmp 0x1401ac5e6
dec al
movzx eax, al
mov byte [r12 + 0x1f], al
mov esi, dword [r12 + rax*4 + 0xd8]
movsxd rdx, dword [rbx + 0x98]
cmp dword [rbx + 0x9c], edx
jg 0x1401ac613
xor r8d, r8d
mov r9d, esi
mov rcx, rbx
lea edx, [r8 + 0x75]
mov dword [rsp + 0x20], 0
call fcn.14015c470
mov edx, eax
jmp 0x1401ac640
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
xor r8d, r8d
mov dword [rbx + 0x98], eax
mov rax, qword [rbx + 0x90]
mov qword [rax + rcx*8], 0x75
mov dword [rax + rcx*8 + 8], esi
mov dword [rax + rcx*8 + 0xc], r8d
mov qword [rax + rcx*8 + 0x10], r8
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
je 0x1401ac658
mov r8, rdi
mov edx, 0xfffffff9
call fcn.140144830
jmp 0x1401ac69d
test edx, edx
jns 0x1401ac664
mov edx, dword [rbx + 0x98]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x90]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x1401ac690
mov r9d, 0xfffffff9
mov r8, rdi
mov rcx, rbx
call fcn.1401dc0d0
jmp 0x1401ac69d
test rdi, rdi
je 0x1401ac69d
mov qword [rdx + 0x10], rdi
mov byte [rdx + 1], 0xf9
mov r9d, 1
mov r8d, esi
mov rcx, rbx
lea edx, [r9 + 0x52]
call fcn.1401bbe50
mov rsi, qword [rsp + 0x60]
jmp 0x1401ac770
movsxd rdx, dword [rbx + 0x98]
cmp dword [rbx + 0x9c], edx
jg 0x1401ac6ea
xor r9d, r9d
xor r8d, r8d
mov edx, __WSAFDIsSet
mov rcx, rbx
mov dword [rsp + 0x20], 0
call fcn.14015c470
mov edx, eax
jmp 0x1401ac713
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
xor r8d, r8d
mov dword [rbx + 0x98], eax
mov rax, qword [rbx + 0x90]
mov qword [rax + rcx*8], __WSAFDIsSet
mov qword [rax + rcx*8 + 8], r8
mov qword [rax + rcx*8 + 0x10], r8
mov rcx, qword [rbx]
cmp byte [rcx + 0x67], 0
je 0x1401ac72b
mov r8, rdi
mov edx, 0xfffffff9
call fcn.140144830
jmp 0x1401ac770
test edx, edx
jns 0x1401ac737
mov edx, dword [rbx + 0x98]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x90]
cmp byte [rax + rcx*8 + 1], 0
lea rdx, [rax + rcx*8]
je 0x1401ac763
mov r9d, 0xfffffff9
mov r8, rdi
mov rcx, rbx
call fcn.1401dc0d0
jmp 0x1401ac770
test rdi, rdi
je 0x1401ac770
mov qword [rdx + 0x10], rdi
mov byte [rdx + 1], 0xf9
mov r14, qword [r14]
test r14, r14
jne 0x1401ac510
mov rdi, qword [rbp - 0x48]
mov ecx, dword [rsp + 0x68]
inc ecx
add r13, 0x20
dec rdi
mov qword [rbp - 0x48], rdi
mov dword [rsp + 0x68], ecx
jne 0x1401ac4e0
mov edx, 0xa5
mov rcx, rbx
call fcn.1401bbd70
jmp 0x1401a968d
test r11, r11
je 0x1401ac7cb
lea rdx, [rbp + 0x60]
mov rcx, r11
call fcn.140187c60
test eax, eax
jne 0x1401ac7cb
mov rcx, qword [rbp + 0x60]
call fcn.14011c330
call fcn.1401d6e50
test eax, eax
je 0x1401ac7e0
or rax, 0xffffffffffffffff
mov rdx, rax
jmp 0x1401a9685
mov rcx, qword [0x140537688]
test rcx, rcx
je 0x1401ac7f9
call qword [0x1404b4120]
mov rcx, qword [0x140537688]
mov rax, qword [0x140537690]
mov qword [rbp + 0x60], rax
test rcx, rcx
je 0x1401ac813
call qword [0x1404b4130]
mov rax, qword [rbp + 0x60]
mov rdx, rax
jmp 0x1401a9685
or rdi, 0xffffffffffffffff
test r11, r11
je 0x1401ac884
lea rdx, [rbp + 0x60]
mov rcx, r11
call fcn.140187c60
test eax, eax
jne 0x1401ac884
call fcn.1401d6e50
test eax, eax
jne 0x1401ac868
mov rcx, qword [0x140537688]
test rcx, rcx
je 0x1401ac856
call qword [0x1404b4120]
mov rcx, qword [0x140537688]
mov rdi, qword [0x140537698]
test rcx, rcx
je 0x1401ac868
call qword [0x1404b4130]
mov rcx, qword [rbp + 0x60]
test rcx, rcx
jle 0x1401ac880
test rdi, rdi
je 0x1401ac87b
cmp rdi, rcx
jle 0x1401ac880
call fcn.14011c490
or rdi, 0xffffffffffffffff
call fcn.1401d6e50
test eax, eax
jne 0x1401ac8b8
mov rcx, qword [0x140537688]
test rcx, rcx
je 0x1401ac8a6
call qword [0x1404b4120]
mov rcx, qword [0x140537688]
mov rdi, qword [0x140537698]
test rcx, rcx
je 0x1401ac8b8
call qword [0x1404b4130]
mov rdx, rdi
jmp 0x1401a9685
test r11, r11
je 0x1401ac900
lea rdx, [rbp + 0x60]
mov rcx, r11
call fcn.140187c60
test eax, eax
jne 0x1401ac900
mov rax, qword [rbp + 0x60]
test rax, rax
js 0x1401ac900
mov r12, qword [rsp + 0x60]
mov edi, 0x7fffffff
and eax, edi
jl 0x1401ac905
mov ecx, 8
cmp eax, ecx
cmovg eax, ecx
mov dword [r12 + 0xb4], eax
jmp 0x1401ac905
mov r12, qword [rsp + 0x60]
movsxd rdx, dword [r12 + 0xb4]
mov rcx, rbx
call fcn.140174c10
jmp 0x1401a9692
test r11, r11
je 0x1401ac94e
lea rdx, [rbp + 0x60]
mov rcx, r11
call fcn.140187c60
test eax, eax
jne 0x1401ac94e
mov rax, qword [rbp + 0x60]
mov r12, qword [rsp + 0x60]
test rax, rax
js 0x1401ac953
mov edi, 0x7fffffff
and eax, edi
mov dword [r12 + 0x2e0], eax
jmp 0x1401ac953
mov r12, qword [rsp + 0x60]
movsxd rdx, dword [r12 + 0x2e0]
mov rcx, rbx
call fcn.140174c10
jmp 0x1401a9692
test r11, r11
je 0x1401ac992
lea rdx, [rbp + 0x60]
mov rcx, r11
mov dword [rbp + 0x60], 0
call fcn.14019e370
mov r12, qword [rsp + 0x60]
mov edx, dword [rbp + 0x60]
mov rcx, r12
call fcn.14011fde0
jmp 0x1401ac997
mov r12, qword [rsp + 0x60]
movsxd rdx, dword [r12 + 0x2e4]
mov rcx, rbx
call fcn.140174c10
jmp 0x1401a9692