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

Disassembly:
mov qword [rsp + 8], rcx
push rsi
push rdi
push r13
push r14
sub rsp, 0x138
mov rsi, qword [rcx + 0x10]
mov rax, qword [rcx]
mov r14, r9
mov r13, r8
mov rdi, rdx
mov qword [rsp + 0x60], rax
test rsi, rsi
jne 0x1400cd84f
cmp qword [rcx + 0xa0], rsi
jne 0x1400cd83f
test byte [rax + 0x5c], 8
jne 0x1400cd83f
mov byte [rcx + 0x23], 1
call fcn.140087850
mov rcx, qword [rsp + 0x160]
mov rsi, rax
test rsi, rsi
je 0x1400d111d
or dword [rsi + 0xc4], 0x40
mov rax, qword [rcx]
mov dword [rcx + 0x38], 2
cmp dword [r13 + 8], 0
mov qword [rsp + 0x170], rbp
jbe 0x1400cd8c4
cmp byte [rax + 0xb5], 0
je 0x1400cd892
lea rdx, str.corrupt_database
call fcn.1400668e0
jmp 0x1400d1115
mov rdx, rdi
mov rcx, rax
mov rbp, r13
call fcn.1400b3500
mov dword [rsp + 0x68], eax
test eax, eax
jns 0x1400cd8d4
mov rcx, qword [rsp + 0x160]
lea rdx, str.unknown_database__T
mov r8, rdi
call fcn.1400668e0
jmp 0x1400d1115
movzx eax, byte [rax + 0xb4]
mov rbp, rdi
mov dword [rsp + 0x68], eax
jmp 0x1400cd8dc
mov rcx, qword [rsp + 0x160]
test eax, eax
js 0x1400d1115
mov rdi, qword [rsp + 0x60]
mov qword [rsp + 0x168], rbx
mov qword [rsp + 0x178], r12
mov r12, qword [rdi + 0x20]
mov qword [rsp + 0x130], r15
movsxd r15, eax
mov rbx, r15
mov qword [rsp + 0xb0], r15
shl rbx, 5
mov qword [rsp + 0xa0], rbx
cmp eax, 1
jne 0x1400cd93f
mov rdx, qword [rcx]
mov rax, qword [rdx + 0x20]
cmp qword [rax + 0x28], 0
jne 0x1400cd93f
call fcn.1400ba0a0
test eax, eax
jne 0x1400d10fd
mov rdx, rbp
mov rcx, rdi
call fcn.1400b3280
mov qword [rsp + 0xd8], rax
test rax, rax
je 0x1400d10fd
cmp dword [rsp + 0x180], 0
je 0x1400cd97e
lea rdx, [0x140145c8c]
mov r8, r14
mov rcx, rdi
call fcn.140065890
mov qword [rsp + 0x78], rax
jmp 0x1400cd98e
mov rdx, r14
mov rcx, rdi
call fcn.1400b3280
mov qword [rsp + 0x78], rax
xor ebp, ebp
cmp dword [r13 + 8], ebp
jbe 0x1400cd9a4
mov rdi, qword [rbx + r12]
mov qword [rsp + 0x88], rdi
jmp 0x1400cd9af
mov rdi, rbp
mov qword [rsp + 0x88], rbp
mov r14, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0x160]
mov r9, rax
mov edx, reloc.WS2_32.dll_send
mov r8, r14
mov qword [rsp + 0x20], rdi
call fcn.1400b1a80
test eax, eax
jne 0x1400d10d9
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x100], r14
mov r14, qword [rsp + 0x78]
mov ecx, 1
mov qword [rsp + 0x108], r14
mov qword [rsp + 0xf8], rbp
mov qword [rsp + 0x110], rbp
mov r14d, ecx
mov dword [rsp + 0x6c], ecx
mov rcx, qword [rax + 0x18]
mov dword [rax + 0x238], ebp
test rcx, rcx
je 0x1400cda2c
call qword [0x14017d320]
mov rax, qword [rsp + 0x60]
test rdi, rdi
je 0x1400cda46
mov rdx, rdi
mov rcx, rax
call fcn.1400b33f0
test eax, eax
js 0x1400cdadf
jmp 0x1400cda48
mov eax, ebp
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 0x1400cdac3
cmp byte [rdi + 0x11], bpl
je 0x1400cda79
inc dword [rdi + 0x14]
cmp byte [rdi + 0x12], bpl
jne 0x1400cda79
mov rcx, rdi
call fcn.140077bd0
mov rax, qword [rdi + 8]
mov rcx, qword [rax]
mov rcx, qword [rcx + 0x48]
mov rax, qword [rcx]
test rax, rax
jne 0x1400cda92
lea r14d, [rax + 0xc]
jmp 0x1400cdaa5
lea r8, [rsp + 0xf8]
mov edx, recv
call qword [rax + 0x50]
mov r14d, eax
cmp byte [rdi + 0x11], bpl
je 0x1400cdacd
add dword [rdi + 0x14], 0xffffffff
jne 0x1400cdad7
mov rcx, rdi
call fcn.140077ba0
mov rdi, qword [rsp + 0x88]
jmp 0x1400cdadf
mov rdi, qword [rsp + 0x88]
jmp 0x1400cdadf
mov rdi, qword [rsp + 0x88]
jmp 0x1400cdadf
mov rdi, qword [rsp + 0x88]
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400cdaf3
call qword [0x14017d330]
test r14d, r14d
jne 0x1400cdb44
lea edx, [r14 + 1]
mov rcx, rsi
call fcn.14008a3e0
mov r9, qword [rsp + 0xf8]
xor r8d, r8d
xor edx, edx
mov rcx, rsi
mov qword [rsp + 0x20], 0xffffffffffffffff
call fcn.14008a4d0
mov rdx, qword [rsp + 0xf8]
mov rcx, rsi
call fcn.1400cd430
mov rcx, qword [rsp + 0xf8]
call fcn.140063010
jmp 0x1400d10d9
cmp r14d, 0xc
je 0x1400cdb8c
mov r8, qword [rsp + 0xf8]
test r8, r8
je 0x1400cdb78
mov rcx, qword [rsp + 0x160]
lea rdx, [0x140140210]
call fcn.1400668e0
mov rcx, qword [rsp + 0xf8]
call fcn.140063010
mov rax, qword [rsp + 0x160]
inc dword [rax + 0x30]
mov dword [rax + 0x18], r14d
jmp 0x1400d10d9
mov rcx, qword [rsp + 0xd8]
call fcn.1400cd5c0
mov r14, rax
test rax, rax
je 0x1400d10d9
test byte [rax + 9], 1
je 0x1400cdbc0
mov rcx, qword [rsp + 0x160]
call fcn.1400d25c0
test eax, eax
jne 0x1400d10d9
movzx eax, byte [r14 + 9]
test al, 2
jne 0x1400cdbe9
test al, 4
je 0x1400cdbd7
mov r11, qword [rsp + 0x78]
test r11, r11
jne 0x1400cdbee
mov rdx, r14
mov rcx, rsi
call fcn.1400ccfa0
mov r11, qword [rsp + 0x78]
jmp 0x1400cdbee
mov r11, qword [rsp + 0x78]
movzx eax, byte [r14 + 8]
cmp eax, 0x27
ja case.0x1400cdc0d.3
lea rcx, [0x140000000]
mov eax, dword [rcx + rax*4 + 0xd112c]
add rax, rcx
jmp rax
mov ebp, dword [rsp + 0x68]
mov rcx, rsi
mov edx, ebp
call fcn.1400891b0
test r11, r11
jne 0x1400cdc59
mov rax, qword [rsp + 0x160]
lea r8, [0x14012e928]
lea edx, [r11 + 9]
add dword [rax + 0x38], 2
xor r9d, r9d
mov rcx, rsi
call fcn.140088680
mov dword [rax + 4], ebp
mov dword [rax + 0x1c], ebp
mov dword [rax + 0x94], 0xfffff830
jmp 0x1400d10d9
mov rcx, r11
call fcn.140067450
mov edi, eax
test eax, eax
jns 0x1400cdc77
cmp eax, 0x80000000
jne 0x1400cdc75
mov edi, 0x7fffffff
jmp 0x1400cdc77
neg edi
mov rcx, qword [rsp + 0x160]
mov r8d, ebp
xor edx, edx
call fcn.1400ba2f0
mov r9d, 3
mov r8d, ebp
lea edx, [r9 + 0x68]
mov rcx, rsi
mov dword [rsp + 0x20], edi
call fcn.140087c80
mov rax, qword [rbx + r12 + 0x18]
mov dword [rax + 0x74], edi
mov rax, qword [rbx + r12 + 0x18]
mov rcx, qword [rbx + r12 + 8]
mov edx, dword [rax + 0x74]
call fcn.14007a6b0
jmp 0x1400d10d9
mov rdi, qword [rbx + r12 + 8]
test r11, r11
jne 0x1400cdcdf
test rdi, rdi
je 0x1400cdcd7
mov rax, qword [rdi + 8]
mov ebp, dword [rax + 0x30]
movsxd rdx, ebp
jmp 0x1400d10d1
mov rcx, r11
call fcn.140067450
mov r13, qword [rsp + 0x60]
xor r9d, r9d
or r8d, 0xffffffff
mov rcx, rdi
mov edx, eax
mov dword [r13 + 0x6c], eax
call fcn.14007a860
cmp eax, 7
jne 0x1400d10de
mov rcx, r13
call fcn.1400638f0
jmp 0x1400d10de
mov rbx, qword [rbx + r12 + 8]
or r12, 0xffffffffffffffff
mov qword [rsp + 0x160], rbx
test r11, r11
je 0x1400cdd61
lea rdx, str.fast
mov rcx, r11
call fcn.140066a50
test eax, eax
jne 0x1400cdd46
lea r12d, [rax + 2]
jmp 0x1400cdd61
mov rcx, qword [rsp + 0x78]
xor r8d, r8d
lea edx, [r8 + 1]
call fcn.1400ccae0
mov ecx, ebp
test al, al
setne cl
mov r12d, ecx
cmp dword [r13 + 8], ebp
jne 0x1400cdda4
test r12d, r12d
js 0x1400cdda4
mov rax, qword [rsp + 0x60]
cmp dword [rax + 0x28], ebp
jle 0x1400cdda4
mov rdi, rbp
mov rbx, rax
nop dword [rax]
mov rcx, qword [rbx + 0x20]
mov edx, r12d
mov rcx, qword [rdi + rcx + 8]
call fcn.14007a9a0
inc ebp
add rdi, 0x20
cmp ebp, dword [rbx + 0x28]
jl 0x1400cdd80
mov rbx, qword [rsp + 0x160]
mov edx, r12d
mov rcx, rbx
call fcn.14007a9a0
movsxd rdx, eax
jmp 0x1400d10d1
mov r12d, dword [rsp + 0x68]
mov rdi, qword [rsp + 0x160]
mov edx, r12d
mov rcx, rdi
call fcn.1400ba190
inc dword [rdi + 0x38]
mov rax, qword [rsp + 0xd8]
movzx eax, byte [rax]
mov ebx, dword [rdi + 0x38]
lea rcx, [0x140000000]
cmp byte [rax + rcx + 0x12ca10], 0x70
jne 0x1400cde4d
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x1400cde1a
mov r9d, ebx
mov r8d, r12d
mov edx, 0xa7
mov rcx, rsi
mov dword [rsp + 0x20], ebp
call fcn.140087c10
jmp 0x1400cde84
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0xa7
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], r12d
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
jmp 0x1400cde84
mov rcx, qword [rsp + 0x78]
call fcn.140067450
mov edi, eax
test eax, eax
jns 0x1400cde6d
cmp eax, 0x80000000
jne 0x1400cde6b
mov edi, 0x7fffffff
jmp 0x1400cde6d
neg edi
mov r9d, ebx
mov r8d, r12d
mov edx, 0xa8
mov rcx, rsi
mov dword [rsp + 0x20], edi
call fcn.140087c80
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x1400cdeb2
mov r9d, 1
mov r8d, ebx
mov rcx, rsi
lea edx, [r9 + 0x50]
mov dword [rsp + 0x20], ebp
call fcn.140087c10
jmp 0x1400d10d9
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x51
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], 1
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
jmp 0x1400d10d9
mov rcx, r11
lea rbp, str.normal
call fcn.1400ccc30
mov edi, eax
mov eax, dword [r13 + 8]
test eax, eax
jne 0x1400cdf17
cmp edi, 0xffffffff
jne 0x1400cdf17
mov rax, qword [rsp + 0x60]
movzx eax, byte [rax + 0x63]
jmp 0x1400cdfa8
test eax, eax
jne 0x1400cdf78
mov r8, qword [rsp + 0x60]
cmp dword [r8 + 0x28], 2
jle 0x1400cdf74
mov edx, 0x40
lea ebx, [rax + 2]
nop
mov rax, qword [r8 + 0x20]
mov rcx, qword [rdx + rax + 8]
mov rax, qword [rcx + 8]
mov rcx, qword [rax]
test edi, edi
js 0x1400cdf60
cmp byte [rcx + 0x10], 0
jne 0x1400cdf60
mov rax, qword [rcx + 0x120]
test rax, rax
je 0x1400cdf5c
cmp byte [rax + 0x3f], 2
je 0x1400cdf60
mov byte [rcx + 8], dil
inc ebx
add rdx, 0x20
cmp ebx, dword [r8 + 0x28]
jl 0x1400cdf30
mov rbx, qword [rsp + 0xa0]
mov byte [r8 + 0x63], dil
mov rax, qword [rbx + r12 + 8]
mov rcx, qword [rax + 8]
mov rax, qword [rcx]
test edi, edi
js 0x1400cdfa4
cmp byte [rax + 0x10], 0
jne 0x1400cdfa4
mov rcx, qword [rax + 0x120]
test rcx, rcx
je 0x1400cdfa0
cmp byte [rcx + 0x3f], 2
je 0x1400cdfa4
mov byte [rax + 8], dil
movzx eax, byte [rax + 8]
cmp eax, 1
lea rdx, str.exclusive
mov rcx, rsi
cmovne rdx, rbp
call fcn.1400cd430
jmp 0x1400d10d9
test r11, r11
jne 0x1400cdfd9
mov qword [rsp + 0x160], 0xffffffffffffffff
jmp 0x1400ce0ea
mov rcx, r11
call fcn.140066740
mov r14, qword [rsp + 0x78]
mov ebx, ebp
mov qword [rsp + 0x160], rbx
lea rdi, str.delete
lea r12, [0x14012e928]
mov r11d, eax
cmp rdi, r12
je 0x1400ce0de
mov rdx, qword [rdi]
test rdx, rdx
je 0x1400ce0de
mov r8d, r11d
mov rcx, r14
call fcn.140066b00
test eax, eax
je 0x1400ce035
inc ebx
add rdi, 8
mov qword [rsp + 0x160], rbx
jmp 0x1400ce001
cmp ebx, 0xffffffff
je 0x1400ce0ea
mov r15d, 1
mov rax, qword [rsp + 0x60]
movsxd r14, dword [rsp + 0x68]
mov edi, dword [rax + 0x28]
sub edi, 1
movsxd r12, edi
js 0x1400ce0b2
mov rbx, r12
mov rbp, rax
shl rbx, 5
mov rax, qword [rbp + 0x20]
cmp qword [rbx + rax + 8], 0
je 0x1400ce0a4
cmp r12, r14
je 0x1400ce07b
cmp dword [r13 + 8], 0
jne 0x1400ce0a4
mov edx, edi
mov rcx, rsi
call fcn.1400891b0
mov rax, qword [rsp + 0x160]
mov r9d, r15d
mov r8d, edi
mov edx, 7
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.140087c80
dec r12
sub rbx, 0x20
sub edi, 1
jns 0x1400ce063
xor ebp, ebp
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x1400ce10e
mov r9d, r15d
mov r8d, r15d
mov edx, 0x51
mov rcx, rsi
mov dword [rsp + 0x20], ebp
call fcn.140087c10
jmp 0x1400d10d9
or rax, 0xffffffffffffffff
mov qword [rsp + 0x160], rax
cmp dword [r13 + 8], ebp
jne 0x1400ce103
mov r15d, 1
mov dword [rsp + 0x68], ebp
mov dword [r13 + 8], r15d
jmp 0x1400ce044
mov r15d, 1
jmp 0x1400ce044
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x51
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], 0
jmp 0x1400d10d9
mov rax, qword [rbx + r12 + 8]
mov qword [rsp + 0x160], 0xfffffffffffffffe
mov rcx, qword [rax + 8]
mov rdi, qword [rcx]
test r11, r11
je 0x1400ce19c
lea rdx, [rsp + 0x160]
mov rcx, r11
call fcn.1400671e0
mov rdx, qword [rsp + 0x160]
or rax, 0xffffffffffffffff
cmp rdx, rax
cmovl rdx, rax
mov rax, qword [rdi + 0x120]
mov qword [rdi + 0xc8], rdx
test rax, rax
je 0x1400ce19c
mov qword [rax + 0x20], rdx
mov rdx, qword [rdi + 0xc8]
jmp 0x1400d10d1
mov rdi, qword [rbx + r12 + 8]
test r11, r11
jne 0x1400ce1c2
mov rcx, rdi
call fcn.14007aac0
movsxd rdx, eax
jmp 0x1400d10d1
mov rcx, r11
call fcn.1400ccd00
mov rcx, rdi
mov ebx, eax
mov rax, qword [rsp + 0x60]
mov edx, ebx
mov byte [rax + 0x64], bl
call fcn.14007aa30
test eax, eax
jne 0x1400d10d9
cmp ebx, 1
je 0x1400ce1f4
cmp ebx, 2
jne 0x1400d10d9
mov edi, dword [rsi + 0xb8]
xor r9d, r9d
lea r8, [0x14012e950]
lea edx, [r9 + 5]
mov rcx, rsi
call fcn.140088680
mov edx, dword [rsp + 0x68]
lea ecx, [rdi + 4]
mov dword [rax + 0x38], ecx
lea ecx, [rbx - 1]
mov dword [rax + 4], edx
mov dword [rax + 0x6c], ecx
mov rcx, rsi
mov dword [rax + 0x1c], edx
mov dword [rax + 0x64], edx
call fcn.1400891b0
jmp 0x1400d10d9
test r11, r11
je 0x1400ce254
lea rdx, [rsp + 0x74]
mov rcx, r11
call fcn.1400672f0
test eax, eax
je 0x1400ce254
mov edi, dword [rsp + 0x74]
test edi, edi
jg 0x1400ce259
mov edi, 0x7fffffff
mov r12d, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x160]
xor edx, edx
mov r8d, r12d
call fcn.1400ba2f0
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x1400ce29c
mov ebx, 1
mov r8d, edi
mov rcx, rsi
lea edx, [rbx + 0x45]
mov r9d, ebx
mov dword [rsp + 0x20], ebp
call fcn.140087c10
jmp 0x1400ce2d1
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov ebx, 1
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x46
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
mov r8d, r12d
mov edx, 0x3b
mov rcx, rsi
call fcn.140087d80
mov r8d, ebx
mov edx, 0x51
mov rcx, rsi
mov edi, eax
call fcn.140087d80
mov rcx, qword [rsi + 0x18]
movsxd r11, dword [rsi + 0xb8]
cmp dword [rcx + 0x3c], r11d
jg 0x1400ce31d
or r9d, 0xffffffff
mov r8d, ebx
mov rcx, rsi
lea edx, [r9 + 0x54]
mov dword [rsp + 0x20], ebp
call fcn.140087c10
jmp 0x1400ce352
lea rcx, [r11 + r11*2]
lea eax, [r11 + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x53
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], 0xffffffff
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x1400ce388
mov r9d, edi
mov r8d, ebx
mov edx, 0x2f
mov rcx, rsi
mov dword [rsp + 0x20], ebp
call fcn.140087c10
mov edx, edi
mov rcx, rsi
call fcn.140088760
jmp 0x1400d10d9
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov edx, edi
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x2f
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
mov rcx, rsi
call fcn.140088760
jmp 0x1400d10d9
test r11, r11
jne 0x1400ce3da
mov rax, qword [rbx + r12 + 0x18]
movsxd rdx, dword [rax + 0x74]
jmp 0x1400d10d1
mov rcx, r11
call fcn.140067450
mov rcx, qword [rbx + r12 + 0x18]
mov dword [rcx + 0x74], eax
jmp 0x1400cdcaa
test r11, r11
jne 0x1400ce415
mov rax, qword [rsp + 0x60]
test byte [rax + 0x30], 0x20
je 0x1400ce40d
mov rcx, qword [rbx + r12 + 8]
xor edx, edx
call fcn.14007a740
mov ebp, eax
movsxd rdx, ebp
jmp 0x1400d10d1
lea rdx, [rsp + 0x160]
mov esi, 1
mov rcx, r11
mov dword [rsp + 0x160], esi
call fcn.1400672f0
mov edi, dword [rsp + 0x160]
test eax, eax
je 0x1400ce448
mov rcx, qword [rbx + r12 + 8]
mov edx, edi
call fcn.14007a740
mov rcx, qword [rsp + 0x78]
test edi, edi
mov edx, esi
setne r8b
call fcn.1400ccae0
test al, al
je 0x1400ce474
mov rax, qword [rsp + 0x60]
mov rcx, rax
or dword [rax + 0x30], 0x20
call fcn.1400cd4c0
jmp 0x1400d10d9
mov rax, qword [rsp + 0x60]
mov rcx, rax
and dword [rax + 0x30], 0xffffffdf
call fcn.1400cd4c0
jmp 0x1400d10d9
test r11, r11
je 0x1400ce588
lea rdx, [rsp + 0x90]
mov rcx, r11
call fcn.1400671e0
mov rdx, qword [rsp + 0x90]
test rdx, rdx
cmovs rdx, qword [0x14017d3c8]
mov qword [rsp + 0x90], rdx
cmp dword [r13 + 8], ebp
jne 0x1400ce4cf
mov rcx, qword [rsp + 0x60]
mov qword [rcx + 0x40], rdx
jmp 0x1400ce4d4
mov rcx, qword [rsp + 0x60]
mov eax, dword [rcx + 0x28]
sub eax, 1
movsxd rbx, eax
js 0x1400ce588
mov r12, rbx
shl r12, 5
nop word [rax + rax]
mov rax, qword [rcx + 0x20]
mov rdi, qword [r12 + rax + 8]
test rdi, rdi
je 0x1400ce57a
cmp rbx, r15
je 0x1400ce509
cmp dword [r13 + 8], ebp
jne 0x1400ce57a
mov r14, qword [rsp + 0x90]
mov r15, qword [rdi + 8]
cmp byte [rdi + 0x11], bpl
je 0x1400ce52c
inc dword [rdi + 0x14]
cmp byte [rdi + 0x12], bpl
jne 0x1400ce52c
mov rcx, rdi
call fcn.140077bd0
mov rcx, qword [r15]
mov qword [rcx + 0xa0], r14
call fcn.140071340
cmp byte [rdi + 0x11], bpl
je 0x1400ce56d
add dword [rdi + 0x14], 0xffffffff
jne 0x1400ce55e
mov rcx, rdi
call fcn.140077ba0
mov r15, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x60]
jmp 0x1400ce57a
mov r15, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x60]
jmp 0x1400ce57a
mov r15, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x60]
sub r12, 0x20
sub rbx, 1
jns 0x1400ce4f0
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x90], 0xffffffffffffffff
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x1400ce5ad
call qword [0x14017d320]
mov rax, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x88]
test rdx, rdx
je 0x1400ce5c8
mov rcx, rax
call fcn.1400b33f0
mov ebp, eax
test eax, eax
js 0x1400ce63e
mov rax, qword [rsp + 0x60]
movsxd rcx, ebp
mov rax, qword [rax + 0x20]
shl rcx, 5
mov rdi, qword [rcx + rax + 8]
test rdi, rdi
je 0x1400ce63e
cmp byte [rdi + 0x11], 0
je 0x1400ce5f9
inc dword [rdi + 0x14]
cmp byte [rdi + 0x12], 0
jne 0x1400ce5f9
mov rcx, rdi
call fcn.140077bd0
mov rax, qword [rdi + 8]
mov rcx, qword [rax]
mov rcx, qword [rcx + 0x48]
mov rax, qword [rcx]
test rax, rax
jne 0x1400ce616
mov dword [rsp + 0x6c], reloc.WS2_32.dll_inet_ntoa
jmp 0x1400ce62a
lea r8, [rsp + 0x90]
mov edx, send
call qword [rax + 0x50]
mov dword [rsp + 0x6c], eax
cmp byte [rdi + 0x11], 0
je 0x1400ce63e
add dword [rdi + 0x14], 0xffffffff
jne 0x1400ce63e
mov rcx, rdi
call fcn.140077ba0
mov r13, qword [rsp + 0x60]
mov rcx, qword [r13 + 0x18]
test rcx, rcx
je 0x1400ce652
call qword [0x14017d330]
mov ecx, dword [rsp + 0x6c]
test ecx, ecx
jne 0x1400ce66f
mov rdx, qword [rsp + 0x90]
mov rcx, rsi
call fcn.1400cd2c0
jmp 0x1400d10de
cmp ecx, 0xc
je 0x1400d10de
mov rax, qword [rsp + 0x160]
inc dword [rax + 0x30]
mov dword [rax + 0x18], ecx
jmp 0x1400d10de
test r11, r11
jne 0x1400ce69e
mov rax, qword [rsp + 0x60]
movzx edx, byte [rax + 0x60]
jmp 0x1400d10d1
mov rcx, r11
call fcn.1400cce50
mov edi, eax
mov rax, qword [rsp + 0x160]
mov rbx, qword [rax]
movzx ecx, byte [rbx + 0x60]
cmp ecx, edi
je 0x1400d10d9
mov rcx, rax
call fcn.1400ccf40
test eax, eax
jne 0x1400d10d9
mov byte [rbx + 0x60], dil
jmp 0x1400d10d9
test r11, r11
jne 0x1400ce6f1
mov rdx, qword [0x14018af80]
mov rcx, rsi
call fcn.1400cd430
jmp 0x1400d10d9
cmp byte [r11], bpl
je 0x1400ce735
mov rax, qword [rsp + 0x60]
lea r9, [rsp + 0x74]
mov r8d, 1
mov rax, qword [rax]
mov rdx, r11
mov rcx, rax
call qword [rax + 0x38]
test eax, eax
jne 0x1400ce71c
cmp dword [rsp + 0x74], ebp
jne 0x1400ce735
mov rcx, qword [rsp + 0x160]
lea rdx, str.not_a_writable_directory
call fcn.1400668e0
jmp 0x1400d10d9
mov rax, qword [rsp + 0x60]
cmp byte [rax + 0x60], 1
ja 0x1400ce74d
mov rcx, qword [rsp + 0x160]
call fcn.1400ccf40
mov rcx, qword [0x14018af80]
call fcn.140063010
mov rax, qword [rsp + 0x78]
cmp byte [rax], bpl
je 0x1400ce77e
lea rcx, [0x140140210]
mov rdx, rax
call fcn.140065990
mov qword [0x14018af80], rax
jmp 0x1400d10d9
mov qword [0x14018af80], rbp
jmp 0x1400d10d9
test r11, r11
jne 0x1400ce7a3
mov rdx, qword [0x14018af88]
mov rcx, rsi
call fcn.1400cd430
jmp 0x1400d10d9
cmp byte [r11], bpl
je 0x1400ce7d6
mov rax, qword [rsp + 0x60]
lea r9, [rsp + 0x74]
mov r8d, 1
mov rax, qword [rax]
mov rdx, r11
mov rcx, rax
call qword [rax + 0x38]
test eax, eax
jne 0x1400ce71c
cmp dword [rsp + 0x74], ebp
je 0x1400ce71c
mov rcx, qword [0x14018af88]
call fcn.140063010
mov rax, qword [rsp + 0x78]
cmp byte [rax], bpl
je 0x1400ce807
lea rcx, [0x140140210]
mov rdx, rax
call fcn.140065990
mov qword [0x14018af88], rax
jmp 0x1400d10d9
mov qword [0x14018af88], rbp
jmp 0x1400d10d9
test r11, r11
jne 0x1400ce828
movzx eax, byte [rbx + r12 + 0x10]
dec eax
movsxd rdx, eax
jmp 0x1400d10d1
mov r13, qword [rsp + 0x60]
cmp byte [r13 + 0x5f], bpl
jne 0x1400ce84c
mov rcx, qword [rsp + 0x160]
lea rdx, str.Safety_level_may_not_be_changed_inside_a_transaction
call fcn.1400668e0
jmp 0x1400d10de
cmp dword [rsp + 0x68], 1
je 0x1400d10de
mov r8b, 1
xor edx, edx
mov rcx, r11
call fcn.1400ccae0
mov rcx, r13
mov dl, al
mov eax, 1
inc edx
mov byte [rbx + r12 + 0x11], al
and edx, 7
cmove edx, eax
mov byte [rbx + r12 + 0x10], dl
call fcn.1400cd4c0
jmp 0x1400d10de
test r11, r11
jne 0x1400ce8b2
mov rdx, r14
mov rcx, rsi
call fcn.1400ccfa0
mov rax, qword [rsp + 0x60]
mov ecx, dword [r14 + 0xc]
test dword [rax + 0x30], ecx
setne bpl
mov rdx, rbp
jmp 0x1400d10d1
mov rax, qword [rsp + 0x60]
mov edi, dword [r14 + 0xc]
cmp byte [rax + 0x5f], bpl
jne 0x1400ce8c5
btr edi, 0xe
xor r8d, r8d
mov rcx, r11
lea edx, [r8 + 1]
call fcn.1400ccae0
test al, al
je 0x1400ce8e2
mov rax, qword [rsp + 0x60]
or dword [rax + 0x30], edi
jmp 0x1400ce8fd
mov rcx, qword [rsp + 0x60]
mov eax, edi
not eax
and dword [rcx + 0x30], eax
cmp edi, 0x80000
jne 0x1400ce8fd
mov qword [rcx + 0x2a0], rbp
mov edx, 0x9f
mov rcx, rsi
call fcn.140087d10
mov rcx, qword [rsp + 0x60]
call fcn.1400cd4c0
jmp 0x1400d10d9
test r11, r11
je 0x1400d10d9
mov r9, rdi
mov rdi, qword [rsp + 0x160]
mov r8, r11
mov rcx, rdi
mov edx, 2
call fcn.1400b2440
mov r14, rax
test rax, rax
je 0x1400d10d9
mov rcx, rax
mov r13d, ebp
call fcn.1400b3660
mov edx, dword [rsp + 0x68]
mov rcx, rdi
mov r15, rax
mov dword [rdi + 0x38], 6
call fcn.1400ba190
mov rdx, r14
mov rcx, rdi
call fcn.1400b61b0
movsx edx, word [r14 + 0x46]
mov r12, qword [r14 + 8]
mov ebx, ebp
test edx, edx
jle 0x1400d10d9
or rcx, 0xffffffffffffffff
nop dword [rax]
movzx edi, byte [r12 + 0x1b]
test dil, 2
je 0x1400ce9a4
inc r13d
jmp 0x1400cea5e
test dil, 1
jne 0x1400ce9af
mov r8d, ebp
jmp 0x1400ce9e7
test r15, r15
jne 0x1400ce9ba
lea r8d, [r15 + 1]
jmp 0x1400ce9e7
mov r8d, 1
cmp edx, r8d
jl 0x1400ce9e7
mov rcx, qword [r15 + 8]
nop dword [rax]
movsx eax, word [rcx]
cmp eax, ebx
je 0x1400ce9e3
inc r8d
add rcx, 2
cmp r8d, edx
jle 0x1400ce9d0
or rcx, 0xffffffffffffffff
mov rax, qword [r12 + 8]
test rax, rax
je 0x1400ce9f7
mov r10, qword [rax + 8]
jmp 0x1400ce9fa
mov r10, rbp
test dil, 4
jne 0x1400cea09
lea rcx, [0x140127e70]
jmp 0x1400cea1a
mov rdx, qword [r12]
xor eax, eax
mov rdi, rdx
repne scasb al, byte [rdi]
not rcx
add rcx, rdx
mov dword [rsp + 0x40], r8d
mov eax, ebp
mov qword [rsp + 0x38], r10
cmp byte [r12 + 0x18], al
mov r9d, ebx
lea r8, str.issisi
setne al
sub r9d, r13d
mov edx, 1
mov dword [rsp + 0x30], eax
mov rax, qword [r12]
mov qword [rsp + 0x28], rcx
mov rcx, rsi
mov qword [rsp + 0x20], rax
call fcn.140087f40
or rcx, 0xffffffffffffffff
movsx edx, word [r14 + 0x46]
inc ebx
add r12, 0x20
cmp ebx, edx
jl 0x1400ce990
jmp 0x1400d10d9
test r11, r11
je 0x1400d10d9
mov rcx, qword [rsp + 0x60]
mov r8, rdi
mov rdx, r11
call fcn.1400b2670
mov rbx, rax
test rax, rax
je 0x1400d10d9
cmp dword [r14 + 0xc], ebp
je 0x1400ceab7
movzx r13d, word [rax + 0x60]
mov rax, qword [rsp + 0x160]
mov dword [rax + 0x38], 6
jmp 0x1400ceacb
movzx r13d, word [rax + 0x5e]
mov rax, qword [rsp + 0x160]
mov dword [rax + 0x38], 3
mov edx, dword [rsp + 0x68]
mov r15, qword [rbx + 0x18]
mov rcx, rax
call fcn.1400ba190
movsxd r13, r13d
mov r12d, ebp
mov rdi, rbp
test r13, r13
jle 0x1400d10d9
nop dword [rax]
mov rax, qword [rbx + 8]
movzx edx, word [rax + rdi*2]
test dx, dx
jns 0x1400ceb02
mov rcx, rbp
jmp 0x1400ceb12
mov rax, qword [r15 + 8]
movsx rcx, dx
shl rcx, 5
mov rcx, qword [rcx + rax]
movsx eax, dx
mov qword [rsp + 0x28], rcx
lea r8, str.iisX
mov r9d, r12d
mov edx, 1
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.140087f40
cmp dword [r14 + 0xc], ebp
je 0x1400ceb75
movzx eax, word [rbx + 0x5e]
mov rcx, qword [rbx + 0x40]
mov edx, ebp
cmp r12d, eax
mov rax, qword [rbx + 0x38]
lea r8, str.isiX
movzx r9d, byte [rax + rdi]
mov rax, qword [rcx + rdi*8]
setl dl
mov dword [rsp + 0x28], edx
mov rcx, rsi
mov edx, 4
mov qword [rsp + 0x20], rax
call fcn.140087f40
mov rax, qword [rsp + 0x160]
movsxd rcx, dword [rsi + 0xb8]
mov edx, dword [rax + 0x38]
mov rax, qword [rsi + 0x18]
cmp dword [rax + 0x3c], ecx
jg 0x1400cebaa
mov r9d, edx
mov edx, 0x51
mov rcx, rsi
lea r8d, [rdx - 0x50]
mov dword [rsp + 0x20], ebp
call fcn.140087c10
jmp 0x1400cebde
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x51
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], 1
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
inc rdi
inc r12d
cmp rdi, r13
jl 0x1400ceaf0
jmp 0x1400d10d9
test r11, r11
je 0x1400d10d9
mov rcx, qword [rsp + 0x60]
mov r8, rdi
mov rdx, r11
call fcn.1400b22a0
mov rdi, rax
test rax, rax
je 0x1400d10d9
mov rax, qword [rsp + 0x160]
mov edx, dword [rsp + 0x68]
mov rcx, rax
mov dword [rax + 0x38], 5
call fcn.1400ba190
mov rdi, qword [rdi + 0x10]
mov ebx, ebp
test rdi, rdi
je 0x1400d10d9
lea r12, [0x140145d08]
lea r13, [0x140145d0c]
lea r14, [0x140142018]
nop word [rax + rax]
mov eax, dword [rdi + 0x64]
mov edx, ebp
mov ecx, ebp
cmp qword [rdi + 0x48], rdx
mov qword [rsp + 0x118], r12
mov qword [rsp + 0x120], r13
setne dl
and eax, 3
cmp byte [rdi + 0x62], cl
mov dword [rsp + 0x38], edx
setne cl
mov qword [rsp + reloc.mfc90u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____], r14
mov rax, qword [rsp + rax*8 + 0x118]
lea r8, str.isisi
mov r9d, ebx
mov qword [rsp + 0x30], rax
mov rax, qword [rdi]
mov dword [rsp + 0x28], ecx
mov edx, 1
mov rcx, rsi
mov qword [rsp + 0x20], rax
call fcn.140087f40
mov rdi, qword [rdi + 0x28]
inc ebx
test rdi, rdi
jne 0x1400cec60
jmp 0x1400d10d9
mov rax, qword [rsp + 0x160]
mov rdx, qword [rsp + 0x60]
mov dword [rax + 0x38], 3
cmp dword [rdx + 0x28], ebp
jle 0x1400ced50
mov rdi, rbp
nop
mov rdx, qword [rdx + 0x20]
mov rax, qword [rdi + rdx + 8]
test rax, rax
je 0x1400ced40
mov rax, qword [rax + 8]
mov rcx, qword [rax]
cmp byte [rcx + 0x13], 0
je 0x1400ced14
lea rax, [0x140127e70]
jmp 0x1400ced1b
mov rax, qword [rcx + 0xd0]
mov qword [rsp + 0x28], rax
mov rax, qword [rdi + rdx]
lea r8, [0x140145d18]
mov r9d, ebp
mov edx, 1
mov rcx, rsi
mov qword [rsp + 0x20], rax
call fcn.140087f40
mov rdx, qword [rsp + 0x60]
inc ebp
add rdi, 0x20
cmp ebp, dword [rdx + 0x28]
jl 0x1400cecf0
mov r13, rdx
jmp 0x1400d10de
mov rax, qword [rsp + 0x160]
mov r13, qword [rsp + 0x60]
mov dword [rax + 0x38], 2
mov rdi, qword [r13 + 0x218]
test rdi, rdi
je 0x1400d10de
mov r13d, 1
mov rax, qword [rdi + 0x10]
lea r8, [0x140145d1c]
mov r9d, ebp
mov rcx, qword [rax]
mov edx, r13d
mov qword [rsp + 0x20], rcx
mov rcx, rsi
call fcn.140087f40
mov rdi, qword [rdi]
inc ebp
test rdi, rdi
jne 0x1400ced82
jmp 0x1400d10d9
test r11, r11
je 0x1400d10d9
mov rcx, qword [rsp + 0x60]
mov r8, rdi
mov rdx, r11
call fcn.1400b22a0
mov r15, rax
test rax, rax
je 0x1400d10d9
mov rbx, qword [rax + 0x20]
test rbx, rbx
je 0x1400d10d9
mov rax, qword [rsp + 0x160]
mov edx, dword [rsp + 0x68]
mov r14d, ebp
mov rcx, rax
mov dword [rax + 0x38], 8
call fcn.1400ba190
lea r8, str.NONE
nop dword [rax]
cmp dword [rbx + 0x28], 0
mov r12d, ebp
jle 0x1400ceea7
lea r13, [rbx + 0x40]
mov ebp, 1
movzx ecx, byte [rbx + 0x2d]
call fcn.1400cd580
movzx ecx, byte [rbx + 0x2e]
mov rdi, rax
call fcn.1400cd580
mov rcx, qword [r15 + 8]
movsxd rdx, dword [r13]
mov qword [rsp + 0x50], r8
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x40], rax
mov rax, qword [r13 + 8]
shl rdx, 5
mov qword [rsp + 0x38], rax
mov rax, qword [rdx + rcx]
lea r8, str.iissssss
mov qword [rsp + 0x30], rax
mov rax, qword [rbx + 0x10]
mov r9d, r14d
mov qword [rsp + 0x28], rax
mov edx, ebp
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.140087f40
inc r12d
add r13, 0x10
cmp r12d, dword [rbx + 0x28]
lea r8, str.NONE
jl 0x1400cee26
xor ebp, ebp
lea r8, str.NONE
mov rbx, qword [rbx + 8]
inc r14d
test rbx, rbx
jne 0x1400cee10
jmp 0x1400d10d9
mov r14, qword [rsp + 0x160]
mov edx, dword [rsp + 0x68]
mov eax, dword [r14 + 0x38]
mov rcx, r14
lea r12d, [rax + 5]
lea r15d, [rax + 1]
mov dword [rsp + 0x74], r12d
inc r12d
mov dword [rsp + 0x70], r15d
mov dword [rsp + 0x6c], r12d
mov dword [r14 + 0x38], r12d
call fcn.1400ba190
mov rax, qword [rsp + 0x60]
mov rdx, qword [rax + 0x20]
mov rax, qword [rbx + rdx + 0x18]
mov rax, qword [rax + 0x10]
test rax, rax
je 0x1400d10d9
nop dword [rax]
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x1400cef4a
mov r13, qword [rsp + 0x88]
mov r8, rcx
xor edx, edx
mov r9, r13
mov rcx, r14
call fcn.1400b2440
mov rdi, rax
mov qword [rsp + 0x90], rax
mov rax, rbp
mov qword [rsp + 0xd0], rax
jmp 0x1400cef69
mov rdi, qword [rax + 0x10]
mov rax, qword [rax]
mov r13, qword [rsp + 0x88]
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0x90], rdi
test rdi, rdi
je 0x1400cf54e
cmp qword [rdi + 0x20], rbp
je 0x1400cf54e
mov rax, qword [rdi]
mov ebx, dword [rsp + 0x68]
mov r8d, dword [rdi + 0x38]
mov edx, ebx
xor r9d, r9d
mov rcx, r14
mov qword [rsp + 0x20], rax
call fcn.1400b1b40
movsx eax, word [rdi + 0x46]
add eax, r12d
cmp eax, dword [r14 + 0x38]
jle 0x1400cefaa
mov dword [r14 + 0x38], eax
mov r9, rdi
mov r8d, ebx
xor edx, edx
mov rcx, r14
mov dword [rsp + 0x20], WSAGetLastError
call fcn.1400c5e20
mov r8, qword [rdi]
mov edx, r15d
mov rcx, rsi
call fcn.140087e60
mov rbx, qword [rdi + 0x20]
mov r12d, 1
test rbx, rbx
je 0x1400cf0bf
mov rdx, qword [rbx + 0x10]
mov rcx, qword [rsp + 0x60]
mov r8, r13
call fcn.1400b22a0
mov rdi, rax
test rax, rax
je 0x1400cf0a7
mov rcx, qword [rax]
mov r8d, dword [rax + 0x38]
mov edx, dword [rsp + 0x68]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
mov rcx, r14
mov qword [rsp + 0xb8], rbp
call fcn.1400b1b40
lea r9, [rsp + 0xb8]
mov r8, rbx
mov rdx, rdi
mov rcx, r14
mov qword [rsp + 0x20], rbp
call fcn.1400c24f0
test eax, eax
jne 0x1400d10d9
mov r13, qword [rsp + 0xb8]
test r13, r13
jne 0x1400cf078
mov r8d, dword [rsp + 0x68]
mov r9, rdi
mov edx, r12d
mov rcx, r14
mov dword [rsp + 0x20], WSAGetLastError
call fcn.1400c5e20
mov r13, qword [rsp + 0x88]
jmp 0x1400cf0a7
mov eax, dword [rsp + 0x68]
mov r9d, dword [r13 + 0x58]
mov r8d, r12d
mov edx, WSAGetLastError
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.140087c80
mov rdx, r13
mov rcx, r14
call fcn.140088d60
mov r13, qword [rsp + 0x88]
mov rbx, qword [rbx + 8]
inc r12d
test rbx, rbx
jne 0x1400cefe3
mov rdi, qword [rsp + 0x90]
cmp dword [r14 + 0x34], r12d
jge 0x1400cf0c9
mov dword [r14 + 0x34], r12d
xor r8d, r8d
mov rcx, rsi
lea edx, [r8 + 0x24]
call fcn.140087d80
mov r14, qword [rdi + 0x20]
mov dword [rsp + 0x80], 1
mov ebx, eax
mov dword [rsp + 0xa8], eax
test r14, r14
je 0x1400cf4d4
nop dword [rax]
mov rdx, qword [r14 + 0x10]
mov rcx, qword [rsp + 0x60]
mov r8, r13
call fcn.1400b22a0
mov qword [rsp + 0xb8], rbp
mov r12, rbp
mov rbx, rax
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xc8], rbp
test rax, rax
je 0x1400cf164
mov rcx, qword [rsp + 0x160]
lea rax, [rsp + 0xc8]
lea r9, [rsp + 0xb8]
mov r8, r14
mov rdx, rbx
mov qword [rsp + 0x20], rax
call fcn.1400c24f0
mov r12, qword [rsp + 0xc8]
mov rcx, rsi
call fcn.140088490
cmp dword [r14 + 0x28], ebp
mov r13d, ebp
movsxd r15, eax
jle 0x1400cf243
mov rax, qword [rsp + 0xc8]
mov edi, dword [rsp + 0x6c]
lea r12, [r14 + 0x40]
mov rbx, rax
nop
test rax, rax
je 0x1400cf19a
mov r9d, dword [rbx]
jmp 0x1400cf19e
mov r9d, dword [r12]
mov rdx, qword [rsp + 0x90]
xor r8d, r8d
mov rcx, rsi
mov dword [rsp + 0x20], edi
call fcn.1400a7290
mov rax, qword [rsi + 0x18]
movsxd r11, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], r11d
jg 0x1400cf1df
mov r9d, r15d
mov r8d, edi
mov edx, 0x32
mov rcx, rsi
mov dword [rsp + 0x20], ebp
call fcn.140087c10
jmp 0x1400cf211
lea rcx, [r11 + r11*2]
lea eax, [r11 + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x32
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
mov rax, qword [rsp + 0xc8]
inc r13d
inc edi
add r12, 0x10
add rbx, 4
cmp r13d, dword [r14 + 0x28]
jl 0x1400cf190
mov rdi, qword [rsp + 0x90]
mov rbx, qword [rsp + 0xa0]
mov r12, rax
mov rdx, qword [rsp + 0xb8]
test rdx, rdx
je 0x1400cf2db
mov rcx, qword [rsp + 0x60]
mov ebx, dword [r14 + 0x28]
call fcn.1400c5f70
mov r13d, dword [rsp + 0x74]
mov r9d, dword [r14 + 0x28]
mov r8d, dword [rsp + 0x6c]
mov edx, 0x66
mov rcx, rsi
mov dword [rsp + 0x20], r13d
mov rdi, rax
call fcn.140087c80
mov r9d, ebx
mov r8, rdi
mov rcx, rsi
mov edx, eax
call fcn.140088c90
mov dword [rsp + 0x20], r13d
mov r13d, dword [rsp + 0x80]
mov r8d, r13d
mov r9d, r15d
mov edx, 0x1d
mov rcx, rsi
call fcn.140087c80
mov rcx, qword [rsi]
cmp byte [rcx + 0x61], bpl
jne 0x1400cf318
mov rdi, qword [rsp + 0x90]
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8 + 1], 0xfd
mov dword [rax + rcx*8 + 0x10], ebp
jmp 0x1400cf32a
test rbx, rbx
je 0x1400cf322
mov r9d, dword [rsi + 0xb8]
mov eax, dword [rsp + 0x6c]
mov r13d, dword [rsp + 0x80]
add r9d, 2
mov r8d, r13d
mov edx, 0x1e
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.140087c80
mov edx, r15d
mov rcx, rsi
call fcn.140087df0
jmp 0x1400cf32a
mov rdi, qword [rsp + 0x90]
jmp 0x1400cf32a
mov r13d, dword [rsp + 0x80]
test byte [rdi + 0x40], 0x20
jne 0x1400cf39a
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x1400cf361
mov ebx, dword [rsp + 0x70]
xor r8d, r8d
mov edx, 0x81
lea r9d, [rbx + 1]
mov rcx, rsi
mov dword [rsp + 0x20], ebp
call fcn.140087c10
jmp 0x1400cf3fe
mov ebx, dword [rsp + 0x70]
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
lea edx, [rbx + 1]
mov byte [rax + rcx*8], 0x81
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
jmp 0x1400cf3fe
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x1400cf3c7
mov ebx, dword [rsp + 0x70]
xor r8d, r8d
mov rcx, rsi
lea r9d, [rbx + 1]
lea edx, [r8 + 0x49]
mov dword [rsp + 0x20], ebp
call fcn.140087c10
jmp 0x1400cf3fe
mov ebx, dword [rsp + 0x70]
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
lea edx, [rbx + 1]
mov byte [rax + rcx*8], 0x49
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
mov r9, qword [r14 + 0x10]
lea eax, [r13 - 1]
lea r8, [0x140145d34]
lea edx, [rbx + 2]
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.140087f40
mov rax, qword [rsi + 0x18]
movsxd rdx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], edx
jg 0x1400cf447
mov r9d, 4
mov r8d, ebx
mov rcx, rsi
lea edx, [r9 + 0x4d]
mov dword [rsp + 0x20], ebp
call fcn.140087c10
jmp 0x1400cf47b
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x51
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], 4
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
mov rax, qword [rsi + 0x18]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x1400cf49b
lea rax, [r15*4 + 4]
sub rcx, rax
mov eax, dword [rsi + 0xb8]
mov dword [rcx], eax
mov rcx, qword [rsp + 0x60]
mov rdx, r12
call fcn.140063110
mov r14, qword [r14 + 8]
inc r13d
mov dword [rsp + 0x80], r13d
mov r13, qword [rsp + 0x88]
test r14, r14
jne 0x1400cf100
mov r15d, dword [rsp + 0x70]
mov ebx, dword [rsp + 0xa8]
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
lea edx, [rbx + 1]
cmp dword [rax + 0x3c], ecx
jg 0x1400cf4ff
xor r8d, r8d
mov r9d, edx
mov rcx, rsi
lea edx, [r8 + 5]
mov dword [rsp + 0x20], ebp
call fcn.140087c10
jmp 0x1400cf52f
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 5
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
mov edx, ebx
mov rcx, rsi
call fcn.140088760
mov r12d, dword [rsp + 0x6c]
mov rax, qword [rsp + 0xd0]
mov r14, qword [rsp + 0x160]
test rax, rax
jne 0x1400cef10
jmp 0x1400d10d9
test r11, r11
je 0x1400d10d9
xor r8d, r8d
mov rcx, r11
lea edx, [r8 + 1]
call fcn.1400ccae0
mov rcx, qword [rsp + 0x60]
test al, al
setne bpl
mov edx, ebp
call fcn.1400c22e0
jmp 0x1400d10d9
mov rax, qword [rsp + 0xd8]
mov rbx, qword [rsp + 0x160]
mov r12d, 0x64
movzx eax, byte [rax]
mov edi, ebp
mov dword [rsp + 0x74], r12d
cmp byte [rax + rcx + 0x12ca10], 0x71
mov ecx, dword [rsp + 0x68]
mov dword [rsp + 0x98], r12d
sete dil
or rax, 0xffffffffffffffff
cmp qword [r13], rbp
cmove ecx, eax
mov dword [rbx + 0x38], 6
mov dword [rsp + 0x68], ecx
test r11, r11
je 0x1400cf602
lea rdx, [rsp + 0x98]
mov rcx, r11
call fcn.1400672f0
mov edx, dword [rsp + 0x98]
test edx, edx
cmovle edx, r12d
mov r12d, edx
mov dword [rsp + 0x74], edx
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
lea edx, [r12 - 1]
cmp dword [rax + 0x3c], ecx
jg 0x1400cf632
mov r9d, 1
mov r8d, edx
mov rcx, rsi
lea edx, [r9 + 0x45]
mov dword [rsp + 0x20], ebp
call fcn.140087c10
jmp 0x1400cf666
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x46
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], 1
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
movsxd rcx, dword [rsp + 0x68]
mov r13, qword [rsp + 0x60]
movsxd rax, edi
cmp dword [r13 + 0x28], ebp
mov r14d, ebp
mov dword [rsp + 0x80], ebp
mov rdx, rcx
mov qword [rsp + 0xa0], rcx
mov qword [rsp + 0xe0], rax
lea rdi, [0x14018a908]
jle 0x1400d079a
mov r15d, 3
mov r12d, ebp
test rdx, rdx
js 0x1400cf6b8
cmp r14d, ecx
jne 0x1400d0772
mov edx, r14d
mov rcx, rbx
call fcn.1400ba190
mov r8, qword [rsp + 0x60]
movsxd r13, r14d
mov rax, qword [r8 + 0x20]
shl r13, 5
mov edx, ebp
mov r14, qword [r13 + rax + 0x18]
mov rdi, qword [r14 + 0x10]
test rdi, rdi
je 0x1400cf71c
mov rax, qword [rdi + 0x10]
test byte [rax + 0x40], 0x20
jne 0x1400cf6ef
inc edx
mov rax, qword [rax + 0x10]
mov ecx, ebp
test rax, rax
je 0x1400cf70d
nop word [rax + rax]
mov rax, qword [rax + 0x28]
inc edx
inc ecx
test rax, rax
jne 0x1400cf700
mov rdi, qword [rdi]
cmp ecx, r12d
cmovg r12d, ecx
test rdi, rdi
jne 0x1400cf6e3
lea eax, [rdx + 1]
mov rcx, r8
movsxd rdx, eax
shl rdx, 2
call fcn.140063460
mov rbx, rax
test rax, rax
je 0x1400d0789
mov r8, qword [r14 + 0x10]
mov edi, ebp
mov rdx, rbp
test r8, r8
je 0x1400cf78c
nop dword [rax + rax]
mov rcx, qword [r8 + 0x10]
test byte [rcx + 0x40], 0x20
jne 0x1400cf765
mov eax, dword [rcx + 0x38]
inc edi
inc rdx
mov dword [rbx + rdx*4], eax
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x1400cf784
nop
mov eax, dword [rcx + 0x58]
inc rdx
inc edi
mov dword [rbx + rdx*4], eax
mov rcx, qword [rcx + 0x28]
test rcx, rcx
jne 0x1400cf770
mov r8, qword [r8]
test r8, r8
jne 0x1400cf750
mov rax, qword [rsp + 0x160]
mov dword [rbx], edi
lea ecx, [r12 + 8]
mov eax, dword [rax + 0x38]
mov r12, qword [rsp + 0x160]
cmp eax, ecx
mov byte [r12 + 0x1f], bpl
mov dword [r12 + 0x28], ebp
cmovg ecx, eax
mov dword [r12 + 0x38], ecx
mov rax, qword [rsi + 0x18]
movsxd rdx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], edx
jg 0x1400cf7ec
mov r9d, edi
mov edx, 0x94
mov r8d, 2
mov rcx, rsi
mov dword [rsp + 0x20], 1
call fcn.140087c10
mov edx, eax
jmp 0x1400cf824
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x94
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], 2
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], 1
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
mov rcx, qword [rsi]
cmp byte [rcx + 0x61], bpl
je 0x1400cf83c
mov r8, rbx
mov edx, 0xfffffff1
call fcn.1400889a0
jmp 0x1400cf879
test edx, edx
jns 0x1400cf848
mov edx, dword [rsi + 0xb8]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
cmp byte [rax + rcx*8 + 1], bpl
lea rdx, [rax + rcx*8]
je 0x1400cf871
mov r9d, 0xfffffff1
mov r8, rbx
mov rcx, rsi
call fcn.140088ba0
jmp 0x1400cf879
mov qword [rdx + 0x10], rbx
mov byte [rdx + 1], 0xf1
movsxd rax, dword [rsi + 0xb8]
test eax, eax
jle 0x1400cf899
movzx edx, byte [rsp + 0x80]
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
mov word [rax + rcx*8 - 0x16], dx
mov edx, 0x32
mov rcx, rsi
lea r8d, [rdx - 0x30]
call fcn.140087d80
lea rdx, str._in_database__s__n
mov ebx, eax
mov rax, qword [rsp + 0x60]
mov r8, qword [rax + 0x20]
mov rcx, rax
mov r8, qword [r13 + r8]
call fcn.140065890
mov rcx, qword [rsi + 0x18]
movsxd rdx, dword [rsi + 0xb8]
cmp dword [rcx + 0x3c], edx
mov rdi, rax
jg 0x1400cf8f6
xor r8d, r8d
mov r9d, r15d
mov rcx, rsi
lea edx, [r8 + 0x6a]
mov dword [rsp + 0x20], ebp
call fcn.140087c10
mov edx, eax
jmp 0x1400cf927
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x6a
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], r15d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
mov rcx, qword [rsi]
cmp byte [rcx + 0x61], bpl
je 0x1400cf93f
mov r8, rdi
mov edx, 0xfffffff9
call fcn.1400889a0
jmp 0x1400cf981
test edx, edx
jns 0x1400cf94b
mov edx, dword [rsi + 0xb8]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
cmp byte [rax + rcx*8 + 1], bpl
lea rdx, [rax + rcx*8]
je 0x1400cf974
mov r9d, 0xfffffff9
mov r8, rdi
mov rcx, rsi
call fcn.140088ba0
jmp 0x1400cf981
test rdi, rdi
je 0x1400cf981
mov qword [rdx + 0x10], rdi
mov byte [rdx + 1], 0xf9
mov edx, 0x65
mov r9d, r15d
mov rcx, rsi
lea r8d, [rdx - 0x63]
mov dword [rsp + 0x20], r15d
call fcn.140087c80
mov rcx, rsi
call fcn.1400cd6a0
mov edx, ebx
mov rcx, rsi
call fcn.140088760
mov rdx, qword [r14 + 0x10]
mov qword [rsp + 0xd0], rdx
test rdx, rdx
je 0x1400d0751
mov r15, rdx
mov r15, qword [r15 + 0x10]
mov qword [rsp + 0xf0], rbp
mov dword [rsp + 0x6c], 0xffffffff
cmp dword [r15 + 0x38], 1
mov qword [rsp + 0xe8], r15
jl 0x1400d070c
test byte [r15 + 0x40], 0x20
jne 0x1400cf9fc
mov qword [rsp + 0xb0], rbp
jmp 0x1400cfa0c
mov rcx, r15
call fcn.1400b3660
mov qword [rsp + 0xb0], rax
cmp dword [r15 + 0x54], ebp
jne 0x1400cfa4d
lea rax, [rsp + 0xa8]
mov r13d, 1
xor r9d, r9d
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x70]
lea r8d, [r13 + 0x6c]
mov qword [rsp + 0x30], rax
mov rdx, r15
mov rcx, r12
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], r13d
call fcn.1400ca7d0
jmp 0x1400cfa53
mov r13d, 1
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x1400cfa7e
mov r9d, 7
xor r8d, r8d
mov rcx, rsi
lea edx, [r9 + 0x3f]
mov dword [rsp + 0x20], ebp
call fcn.140087c10
jmp 0x1400cfab2
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x46
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], 7
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
mov rbx, qword [r15 + 0x10]
test rbx, rbx
je 0x1400cfb23
mov edi, 8
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x1400cfae8
xor r8d, r8d
mov r9d, edi
mov rcx, rsi
lea edx, [r8 + 0x46]
mov dword [rsp + 0x20], ebp
call fcn.140087c10
jmp 0x1400cfb18
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x46
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
mov rbx, qword [rbx + 0x28]
inc edi
test rbx, rbx
jne 0x1400cfac0
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x1400cfb4f
mov edi, dword [rsp + 0x70]
xor r9d, r9d
mov rcx, rsi
lea edx, [r9 + 0x24]
mov r8d, edi
mov dword [rsp + 0x20], ebp
call fcn.140087c10
jmp 0x1400cfb83
mov edi, dword [rsp + 0x70]
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x24
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
movsxd rdx, dword [rsi + 0xb8]
mov rax, qword [rsi + 0x18]
cmp dword [rax + 0x3c], edx
mov dword [rsp + 0x98], edx
jg 0x1400cfbbb
mov edx, 0x53
mov r9d, r13d
mov rcx, rsi
lea r8d, [rdx - 0x4c]
mov dword [rsp + 0x20], ebp
call fcn.140087c10
mov dword [rsp + 0x98], eax
jmp 0x1400cfbf0
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x53
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], 7
mov dword [rax + rcx*8 + 8], r13d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
cmp qword [rsp + 0xe0], rbp
jne 0x1400cfc3d
movsx r9d, word [r15 + 0x46]
mov r14d, 3
mov r8d, edi
lea edx, [r14 + 0x57]
dec r9d
mov rcx, rsi
mov dword [rsp + 0x20], r14d
call fcn.140087c80
movsxd rdx, dword [rsi + 0xb8]
test edx, edx
jle 0x1400cfc49
mov rax, qword [rsi + 0x68]
lea rcx, [rdx + rdx*2]
mov r13d, 0x80
mov word [rax + rcx*8 - 0x16], r13w
jmp 0x1400cfc4f
mov r14d, 3
lea r13d, [r14 + 0x7d]
jmp 0x1400cfc4f
mov r13d, 0x80
cmp bp, word [r15 + 0x46]
mov ebx, ebp
jge 0x1400cfdca
mov r12, rbp
nop
movsx eax, word [r15 + 0x44]
cmp ebx, eax
je 0x1400cfda5
mov rax, qword [r15 + 8]
cmp byte [r12 + rax + 0x18], bpl
je 0x1400cfda5
mov r9d, ebx
mov r8d, edi
mov rdx, r15
mov rcx, rsi
mov dword [rsp + 0x20], r14d
call fcn.1400a7290
movsxd rdx, dword [rsi + 0xb8]
test edx, edx
jle 0x1400cfcab
mov rax, qword [rsi + 0x68]
lea rcx, [rdx + rdx*2]
mov word [rax + rcx*8 - 0x16], r13w
mov r8d, r14d
mov edx, 0x33
mov rcx, rsi
call fcn.140087d80
mov r9, qword [r15 + 8]
mov r8, qword [r15]
mov r9, qword [r12 + r9]
mov rcx, qword [rsp + 0x60]
lea rdx, str.NULL_value_in__s._s
mov r13d, eax
call fcn.140065890
mov rcx, qword [rsi + 0x18]
movsxd rdx, dword [rsi + 0xb8]
mov rdi, rax
cmp dword [rcx + 0x3c], edx
jg 0x1400cfd07
xor r8d, r8d
mov r9d, r14d
mov rcx, rsi
lea edx, [r8 + 0x6a]
mov dword [rsp + 0x20], ebp
call fcn.140087c10
mov edx, eax
jmp 0x1400cfd38
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x6a
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
mov rcx, qword [rsi]
cmp byte [rcx + 0x61], bpl
je 0x1400cfd50
mov r8, rdi
mov edx, 0xfffffff9
call fcn.1400889a0
jmp 0x1400cfd92
test edx, edx
jns 0x1400cfd5c
mov edx, dword [rsi + 0xb8]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
cmp byte [rax + rcx*8 + 1], bpl
lea rdx, [rax + rcx*8]
je 0x1400cfd85
mov r9d, 0xfffffff9
mov r8, rdi
mov rcx, rsi
call fcn.140088ba0
jmp 0x1400cfd92
test rdi, rdi
je 0x1400cfd92
mov qword [rdx + 0x10], rdi
mov byte [rdx + 1], 0xf9
mov rcx, rsi
call fcn.1400cd6a0
mov edx, r13d
mov rcx, rsi
call fcn.140088760
movsx eax, word [r15 + 0x46]
mov edi, dword [rsp + 0x70]
inc ebx
add r12, 0x20
cmp ebx, eax
mov r13d, 0x80
jl 0x1400cfc60
mov r12, qword [rsp + 0x160]
mov rdx, qword [r15 + 0x30]
test rdx, rdx
je 0x1400cffbc
mov rbx, qword [rsp + 0x60]
bt dword [rbx + 0x30], 9
jb 0x1400cffbc
xor r8d, r8d
mov rcx, rbx
call fcn.1400a2f20
mov r13, rax
cmp byte [rbx + 0x61], bpl
jne 0x1400cffac
mov rcx, rsi
call fcn.140088490
mov rcx, rsi
movsxd r12, eax
call fcn.140088490
mov ecx, dword [rsp + 0x70]
inc ecx
movsxd r14, eax
mov rax, qword [rsp + 0x160]
mov dword [rax + 0x44], ecx
mov ecx, dword [r13]
dec ecx
movsxd rdi, ecx
test ecx, ecx
jle 0x1400cfe72
lea rcx, [rdi + rdi*4]
mov r15, rax
lea rbx, [r13 + rcx*8 + 8]
nop
mov rdx, qword [rbx]
xor r9d, r9d
mov r8d, r12d
mov rcx, r15
call fcn.1400a9c00
dec rdi
sub rbx, 0x28
test rdi, rdi
jg 0x1400cfe40
mov r15, qword [rsp + 0xe8]
mov rax, qword [rsp + 0x160]
mov rbx, qword [rsp + 0x60]
mov rdx, qword [r13 + 8]
mov r9d, reloc.WS2_32.dll_recv
mov r8d, r14d
mov rcx, rax
call fcn.1400a97d0
mov rdx, qword [rsi + 0x18]
mov rcx, qword [rdx + 0x50]
test rcx, rcx
je 0x1400cfea7
lea rax, [r12*4 + 4]
sub rcx, rax
mov eax, dword [rsi + 0xb8]
mov dword [rcx], eax
mov r12, qword [rsp + 0x160]
lea rdx, str.CHECK_constraint_failed_in__s
mov rcx, rbx
mov dword [r12 + 0x44], ebp
mov r8, qword [r15]
call fcn.140065890
mov rcx, qword [rsi + 0x18]
movsxd rdx, dword [rsi + 0xb8]
cmp dword [rcx + 0x3c], edx
mov rdi, rax
jg 0x1400cfef6
mov r9d, 3
xor r8d, r8d
mov rcx, rsi
lea edx, [r9 + 0x67]
mov dword [rsp + 0x20], ebp
call fcn.140087c10
mov edx, eax
jmp 0x1400cff2a
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x6a
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], 3
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
mov rcx, qword [rsi]
cmp byte [rcx + 0x61], bpl
je 0x1400cff42
mov r8, rdi
mov edx, 0xfffffff9
call fcn.1400889a0
jmp 0x1400cff84
test edx, edx
jns 0x1400cff4e
mov edx, dword [rsi + 0xb8]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
cmp byte [rax + rcx*8 + 1], bpl
lea rdx, [rax + rcx*8]
je 0x1400cff77
mov r9d, 0xfffffff9
mov r8, rdi
mov rcx, rsi
call fcn.140088ba0
jmp 0x1400cff84
test rdi, rdi
je 0x1400cff84
mov qword [rdx + 0x10], rdi
mov byte [rdx + 1], 0xf9
mov rcx, rsi
call fcn.1400cd6a0
mov rdx, qword [rsi + 0x18]
mov rcx, qword [rdx + 0x50]
test rcx, rcx
je 0x1400cffac
lea rax, [r14*4 + 4]
sub rcx, rax
mov eax, dword [rsi + 0xb8]
mov dword [rcx], eax
test r13, r13
je 0x1400cffbc
mov rdx, r13
mov rcx, rbx
call fcn.1400a3a20
mov r14, qword [rsp + 0xe0]
test r14, r14
jne 0x1400d045c
mov r13, qword [r15 + 0x10]
test r13, r13
je 0x1400d045c
mov eax, dword [rsp + 0xa8]
mov ebx, 8
sub ebx, eax
mov r15d, eax
mov dword [rsp + 0xb8], eax
mov dword [rsp + 0xc0], ebx
nop dword [rax]
mov rcx, rsi
call fcn.140088490
mov edi, eax
cmp qword [rsp + 0xb0], r13
je 0x1400d0434
mov eax, dword [rsp + 0x6c]
mov r8d, dword [rsp + 0x70]
xor r9d, r9d
mov dword [rsp + 0x38], eax
mov rax, qword [rsp + 0xf0]
mov rdx, r13
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x88]
mov rcx, r12
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ebp
call fcn.1400bdd60
mov rcx, qword [rsi + 0x18]
movsxd rdx, dword [rsi + 0xb8]
mov qword [rsp + 0xf0], r13
cmp dword [rcx + 0x3c], edx
mov r12d, eax
mov dword [rsp + 0x6c], eax
jg 0x1400d008b
mov edx, 0x53
lea r8d, [rbx + r15]
mov rcx, rsi
lea r9d, [rdx - 0x52]
mov dword [rsp + 0x20], ebp
call fcn.140087c10
jmp 0x1400d00c3
mov rcx, qword [rsi + 0x68]
lea eax, [rdx + 1]
lea rdx, [rdx + rdx*2]
mov dword [rsi + 0xb8], eax
lea eax, [rbx + r15]
mov byte [rcx + rdx*8], 0x53
mov word [rcx + rdx*8 + 2], bp
mov dword [rcx + rdx*8 + 8], 1
mov dword [rcx + rdx*8 + 0xc], ebp
mov dword [rcx + rdx*8 + 4], eax
mov qword [rcx + rdx*8 + 0x10], rbp
mov byte [rcx + rdx*8 + 1], bpl
movzx ebx, word [r13 + 0x60]
mov r9d, edi
mov r8d, r15d
mov edx, 0x1d
mov rcx, rsi
mov dword [rsp + 0x20], r12d
call fcn.140087c80
mov rcx, qword [rsi]
movsxd rdi, eax
cmp byte [rcx + 0x61], bpl
jne 0x1400d00fd
mov rcx, qword [rsi + 0x68]
lea rdx, [rdi + rdi*2]
mov byte [rcx + rdx*8 + 1], 0xfd
mov dword [rcx + rdx*8 + 0x10], ebx
mov ebx, 3
lea r8, str.row
mov rcx, rsi
mov edx, ebx
call fcn.140087e60
lea edx, [rbx + 0x62]
lea r8d, [rbx + 4]
mov r9d, ebx
mov rcx, rsi
mov dword [rsp + 0x20], ebx
call fcn.140087c80
lea r8, str._missing_from_index
lea edx, [rbx + 1]
mov rcx, rsi
call fcn.140087e60
lea edx, [rbx + 0x62]
lea r8d, [rbx + 1]
mov r9d, ebx
mov rcx, rsi
mov dword [rsp + 0x20], ebx
call fcn.140087c80
mov r8, qword [r13]
lea edx, [rbx + 1]
mov rcx, rsi
call fcn.140087e60
lea edx, [rbx + 0x62]
lea r8d, [rbx + 1]
mov r9d, ebx
mov rcx, rsi
mov dword [rsp + 0x20], ebx
mov dword [rsp + 0x90], eax
call fcn.140087c80
mov rcx, rsi
call fcn.1400cd6a0
mov edx, dword [rsi + 0xb8]
mov ebx, eax
mov dword [rsp + 0xc8], eax
test edi, edi
jns 0x1400d019b
lea edi, [rdx - 1]
mov rcx, qword [rsi]
cmp byte [rcx + 0x61], bpl
je 0x1400d01ad
lea rcx, [0x14018a908]
jmp 0x1400d01bc
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
lea rcx, [rax + rcx*8]
mov dword [rcx + 8], edx
cmp byte [r13 + 0x62], bpl
je 0x1400d03a9
mov rcx, rsi
call fcn.140088490
mov r12d, ebp
movsxd r14, eax
cmp bp, word [r13 + 0x5e]
jae 0x1400d0290
mov edi, dword [rsp + 0x6c]
mov r15, qword [rsp + 0xe8]
mov rbx, rbp
mov rcx, qword [r13 + 8]
movsx rdx, word [rbx + rcx]
test edx, edx
js 0x1400d0210
mov rax, qword [r15 + 8]
mov rcx, rdx
shl rcx, 5
cmp byte [rcx + rax + 0x18], bpl
jne 0x1400d026a
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x1400d0239
mov r9d, r14d
mov r8d, edi
mov edx, 0x32
mov rcx, rsi
mov dword [rsp + 0x20], ebp
call fcn.140087c10
jmp 0x1400d026a
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x32
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], r14d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
movzx eax, word [r13 + 0x5e]
inc r12d
inc edi
add rbx, 2
cmp r12d, eax
jl 0x1400d01f1
mov r15d, dword [rsp + 0xb8]
mov ebx, dword [rsp + 0xc8]
mov rax, qword [rsi + 0x18]
movsxd rdi, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], edi
jg 0x1400d02ba
xor r9d, r9d
mov r8d, r15d
mov rcx, rsi
lea edx, [r9 + 5]
mov dword [rsp + 0x20], ebp
call fcn.140087c10
mov edi, eax
jmp 0x1400d02eb
lea rcx, [rdi + rdi*2]
lea eax, [rdi + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 5
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
mov edx, r14d
mov rcx, rsi
call fcn.140087df0
mov r11d, dword [rsi + 0xb8]
test edi, edi
jns 0x1400d0305
lea edi, [r11 - 1]
mov rax, qword [rsi]
cmp byte [rax + 0x61], bpl
je 0x1400d0317
lea rax, [0x14018a908]
jmp 0x1400d0326
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
lea rax, [rax + rcx*8]
mov dword [rax + 8], r11d
mov eax, dword [rsp + 0x6c]
movzx edi, word [r13 + 0x5e]
mov r9d, r14d
mov r8d, r15d
mov edx, 0x26
mov rcx, rsi
mov dword [rsp + 0x20], eax
call fcn.140087c80
mov rcx, qword [rsi]
cmp byte [rcx + 0x61], bpl
jne 0x1400d0366
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
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, rsi
call fcn.140087e60
mov edx, dword [rsp + 0x90]
mov rcx, rsi
call fcn.140087df0
mov rdx, qword [rsi + 0x18]
mov rcx, qword [rdx + 0x50]
test rcx, rcx
je 0x1400d03a9
lea rax, [r14*4 + 4]
sub rcx, rax
mov eax, dword [rsi + 0xb8]
mov dword [rcx], eax
mov edx, dword [rsi + 0xb8]
test ebx, ebx
jns 0x1400d03b6
lea ebx, [rdx - 1]
mov rax, qword [rsi]
cmp byte [rax + 0x61], bpl
je 0x1400d03c8
lea rax, [0x14018a908]
jmp 0x1400d03d7
movsxd rax, ebx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
lea rax, [rax + rcx*8]
movsxd rdi, dword [rsp + 0x88]
mov dword [rax + 8], edx
test edi, edi
je 0x1400d041c
mov r12, qword [rsp + 0x160]
mov rdx, qword [r12 + 0x10]
mov rax, qword [rdx + 0x18]
mov rcx, qword [rax + 0x50]
test rcx, rcx
je 0x1400d042d
mov ebx, dword [rsp + 0xc0]
lea rax, [rdi*4 + 4]
sub rcx, rax
mov eax, dword [rdx + 0xb8]
mov dword [rcx], eax
jmp 0x1400d0434
mov ebx, dword [rsp + 0xc0]
mov r12, qword [rsp + 0x160]
jmp 0x1400d0434
mov ebx, dword [rsp + 0xc0]
mov r13, qword [r13 + 0x28]
inc r15d
mov dword [rsp + 0xb8], r15d
test r13, r13
jne 0x1400d0000
mov r15, qword [rsp + 0xe8]
mov r14, qword [rsp + 0xe0]
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x1400d048e
mov edi, dword [rsp + 0x98]
mov r8d, dword [rsp + 0x70]
mov edx, 5
mov rcx, rsi
mov r9d, edi
mov dword [rsp + 0x20], ebp
call fcn.140087c10
jmp 0x1400d04c9
mov edx, dword [rsp + 0x70]
mov edi, dword [rsp + 0x98]
lea eax, [rcx + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
lea rcx, [rcx + rcx*2]
mov byte [rax + rcx*8], 5
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], edx
mov dword [rax + rcx*8 + 8], edi
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
mov edx, dword [rsi + 0xb8]
lea ecx, [rdi - 1]
test ecx, ecx
jns 0x1400d04d9
lea ecx, [rdx - 1]
mov rax, qword [rsi]
cmp byte [rax + 0x61], bpl
je 0x1400d04eb
lea rax, [0x14018a908]
jmp 0x1400d04fa
movsxd rax, ecx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
lea rax, [rax + rcx*8]
mov dword [rax + 8], edx
test r14, r14
jne 0x1400d070c
lea r8, str.wrong__of_entries_in_index
lea edx, [r14 + 2]
mov rcx, rsi
call fcn.140087e60
mov r12, qword [r15 + 0x10]
test r12, r12
je 0x1400d0704
mov r13d, dword [rsp + 0xa8]
mov rax, qword [rsp + 0xb0]
lea ebx, [r14 + 8]
nop word [rax + rax]
cmp rax, r12
je 0x1400d06ea
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x1400d0579
mov r14d, 3
lea r8d, [r13 + rbx - 8]
mov rcx, rsi
lea edx, [r14 + 0x65]
mov r9d, r14d
mov dword [rsp + 0x20], ebp
call fcn.140087c10
jmp 0x1400d05b5
lea rdx, [rcx + rcx*2]
lea eax, [rcx + 1]
mov rcx, qword [rsi + 0x68]
mov dword [rsi + 0xb8], eax
lea eax, [r13 + rbx - 8]
mov r14d, 3
mov byte [rcx + rdx*8], 0x68
mov word [rcx + rdx*8 + 2], bp
mov dword [rcx + rdx*8 + 0xc], ebp
mov dword [rcx + rdx*8 + 4], eax
mov dword [rcx + rdx*8 + 8], r14d
mov qword [rcx + rdx*8 + 0x10], rbp
mov byte [rcx + rdx*8 + 1], bpl
mov rax, qword [rsi + 0x18]
movsxd rdi, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], edi
jg 0x1400d05e0
xor r9d, r9d
mov r8d, ebx
mov rcx, rsi
lea edx, [r9 + 0x35]
mov dword [rsp + 0x20], r14d
call fcn.140087c10
mov edi, eax
jmp 0x1400d0611
lea rcx, [rdi + rdi*2]
lea eax, [rdi + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x35
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
movsxd rax, dword [rsi + 0xb8]
test eax, eax
jle 0x1400d062e
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
mov edx, 0x90
mov word [rax + rcx*8 - 0x16], dx
mov r8, qword [r12]
mov edx, 4
mov rcx, rsi
call fcn.140087e60
mov rax, qword [rsi + 0x18]
movsxd r11, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], r11d
jg 0x1400d066c
mov edx, 0x65
mov rcx, rsi
mov dword [rsp + 0x20], r14d
lea r9d, [rdx - 0x63]
lea r8d, [rdx - 0x61]
call fcn.140087c10
jmp 0x1400d06a6
lea rcx, [r11 + r11*2]
lea eax, [r11 + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x65
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], 4
mov dword [rax + rcx*8 + 8], 2
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
mov rcx, rsi
call fcn.1400cd6a0
mov r11d, dword [rsi + 0xb8]
test edi, edi
jns 0x1400d06bd
lea edi, [r11 - 1]
mov rax, qword [rsi]
cmp byte [rax + 0x61], bpl
je 0x1400d06cf
lea rax, [0x14018a908]
jmp 0x1400d06de
movsxd rax, edi
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
lea rax, [rax + rcx*8]
mov dword [rax + 8], r11d
mov rax, qword [rsp + 0xb0]
mov r12, qword [r12 + 0x28]
inc ebx
test r12, r12
jne 0x1400d0540
mov r12, qword [rsp + 0x160]
jmp 0x1400d070c
mov r12, qword [rsp + 0x160]
mov r15, qword [rsp + 0xd0]
mov r15, qword [r15]
mov qword [rsp + 0xd0], r15
test r15, r15
jne 0x1400cf9c4
mov rbx, qword [rsp + 0x160]
mov r13, qword [rsp + 0x60]
mov r14d, dword [rsp + 0x80]
mov ecx, dword [rsp + 0x68]
mov rdx, qword [rsp + 0xa0]
mov r15d, 3
jmp 0x1400d0772
mov rbx, qword [rsp + 0x160]
mov r13, qword [rsp + 0x60]
mov r14d, dword [rsp + 0x80]
mov ecx, dword [rsp + 0x68]
mov rdx, qword [rsp + 0xa0]
inc r14d
cmp r14d, dword [r13 + 0x28]
mov dword [rsp + 0x80], r14d
jl 0x1400cf6a7
jmp 0x1400d078e
mov r13, qword [rsp + 0x60]
mov r12d, dword [rsp + 0x74]
lea rdi, [0x14018a908]
xor r9d, r9d
lea r8, [0x14012e968]
mov rcx, rsi
lea edx, [r9 + 7]
call fcn.140088680
test rax, rax
je 0x1400d07ef
mov ecx, 1
mov byte [rax + 0x31], 0xff
mov byte [rax + 0x79], 0xff
sub ecx, r12d
lea rdx, str.unknown_error
mov dword [rax + 8], ecx
lea rcx, [0x140145de8]
mov qword [rax + 0x40], rcx
mov rcx, qword [str.database_disk_image_is_malformed]
test rcx, rcx
cmovne rdx, rcx
mov qword [rax + 0x88], rdx
mov rax, qword [rsi]
mov ecx, dword [rsi + 0xb8]
cmp byte [rax + 0x61], bpl
jne 0x1400d0802
mov rdi, qword [rsi + 0x68]
lea eax, [rcx - 2]
mov dword [rdi + 0xc], eax
jmp 0x1400d10de
test r11, r11
jne 0x1400d084c
mov rdi, qword [rsp + 0x160]
mov rcx, rdi
call fcn.1400d25c0
test eax, eax
jne 0x1400d10d9
mov rax, qword [rdi]
lea rdi, str.UTF8
mov rcx, rsi
movzx edx, byte [rax + 0x5e]
add rdx, rdx
mov rdx, qword [rdi + rdx*8]
call fcn.1400cd430
jmp 0x1400d10d9
mov rax, qword [rsp + 0x60]
mov rbx, qword [rax + 0x20]
mov rax, qword [rbx + 0x18]
movzx ecx, word [rax + 0x72]
test cl, 1
je 0x1400d086b
test cl, 4
je 0x1400d10d9
mov rax, qword [str.UTF8]
lea rdi, str.UTF8
test rax, rax
je 0x1400d08d2
nop
mov rdx, rax
mov rcx, r11
call fcn.140066ab0
test eax, eax
je 0x1400d08a3
mov rax, qword [rdi + 0x10]
mov r11, qword [rsp + 0x78]
add rdi, 0x10
test rax, rax
jne 0x1400d0880
jmp 0x1400d08d2
movzx eax, byte [rdi + 8]
test al, al
je 0x1400d08b0
movzx ecx, al
jmp 0x1400d08b5
mov ecx, 2
mov rax, qword [rsp + 0x60]
mov byte [rax + 0x5e], cl
mov rax, qword [rbx + 0x18]
mov byte [rax + 0x71], cl
cmp qword [rdi], rbp
jne 0x1400d10d9
mov r11, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x160]
lea rdx, str.unsupported_encoding:__s
mov r8, r11
call fcn.1400668e0
jmp 0x1400d10d9
mov ebp, dword [rsp + 0x68]
mov ebx, dword [r14 + 0xc]
mov rcx, rsi
mov edx, ebp
call fcn.1400891b0
test r11, r11
je 0x1400d0940
test byte [r14 + 9], 8
jne 0x1400d0940
xor r9d, r9d
lea r8, [0x14012ea20]
mov rcx, rsi
lea edx, [r9 + 2]
call fcn.140088680
mov rcx, qword [rsp + 0x78]
mov dword [rax + 4], ebp
mov dword [rax + 0x1c], ebp
mov dword [rax + 0x20], ebx
mov rdi, rax
call fcn.140067450
mov dword [rdi + 0x24], eax
jmp 0x1400d10d9
xor r9d, r9d
lea r8, [0x14012ea28]
mov rcx, rsi
lea edx, [r9 + 3]
call fcn.140088680
mov dword [rax + 4], ebp
mov dword [rax + 0x1c], ebp
mov dword [rax + 0x24], ebx
and dword [rsi + 0xc4], 0xffffffbf
jmp 0x1400d10d9
mov rax, qword [rsp + 0x160]
mov ebx, 1
mov rdi, rbp
mov dword [rax + 0x38], ebx
nop
test rdi, rdi
js 0x1400d0995
cmp rdi, 2
jge 0x1400d0995
mov r8, qword [rcx + rdi*8 + 0x12c9f8]
jmp 0x1400d0998
mov r8, rbp
inc rdi
test r8, r8
je 0x1400d095f
mov edx, ebx
mov rcx, rsi
call fcn.140087e60
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x1400d09da
mov r9d, ebx
mov r8d, ebx
mov edx, 0x51
mov rcx, rsi
mov dword [rsp + 0x20], ebp
call fcn.140087c10
lea rcx, [0x140000000]
jmp 0x1400d0980
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x51
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
lea rcx, [0x140000000]
jmp 0x1400d0980
cmp qword [r13], rbp
mov ebx, 0xa
mov r9d, ebp
cmovne ebx, dword [rsp + 0x68]
mov r12d, 3
test r11, r11
je 0x1400d0b4b
mov rdi, r11
movzx r11d, byte [r11]
lea r14, [0x140000000]
movzx edx, byte [r11 + r14 + 0x12ca10]
lea eax, [rdx - 0x66]
test eax, eax
jne 0x1400d0a9e
mov r13, qword [rsp + 0x78]
lea r10, str.full
mov r8b, r11b
sub r10, r13
test r8b, r8b
je 0x1400d0a91
movzx eax, byte [rdi + r10 + 1]
movzx r8d, byte [rdi + 1]
inc rdi
movzx ecx, byte [rax + r14 + 0x12ca10]
movzx eax, byte [r8 + r14 + 0x12ca10]
sub eax, ecx
je 0x1400d0a66
jmp 0x1400d0aa3
test eax, eax
jne 0x1400d0aa3
lea r9d, [rax + 1]
jmp 0x1400d0b4b
mov r13, qword [rsp + 0x78]
lea eax, [rdx - 0x72]
mov rdi, r13
test eax, eax
jne 0x1400d0ae9
lea r10, str.restart
mov r8b, r11b
sub r10, r13
nop word [rax + rax]
test r8b, r8b
je 0x1400d0b3b
movzx eax, byte [rdi + r10 + 1]
movzx r8d, byte [rdi + 1]
inc rdi
movzx ecx, byte [rax + r14 + 0x12ca10]
movzx eax, byte [r8 + r14 + 0x12ca10]
sub eax, ecx
je 0x1400d0ac0
movzx eax, byte [str.truncate]
mov rdi, r13
movzx eax, byte [rax + r14 + 0x12ca10]
sub edx, eax
jne 0x1400d0b4b
lea r10, str.truncate
mov r8b, r11b
sub r10, r13
nop dword [rax]
test r8b, r8b
je 0x1400d0b45
movzx r8d, byte [rdi + 1]
movzx eax, byte [rdi + r10 + 1]
inc rdi
movzx ecx, byte [rax + r14 + 0x12ca10]
movzx edx, byte [r8 + r14 + 0x12ca10]
sub edx, ecx
je 0x1400d0b10
jmp 0x1400d0b4b
test eax, eax
jne 0x1400d0ae9
lea r9d, [rax + 2]
jmp 0x1400d0b4b
test edx, edx
cmove r9d, r12d
mov rax, qword [rsp + 0x160]
mov r8d, ebx
mov edx, 6
mov rcx, rsi
mov dword [rsp + 0x20], 1
mov dword [rax + 0x38], r12d
call fcn.140087c80
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x1400d0b9c
mov edx, 0x51
mov r9d, r12d
mov rcx, rsi
lea r8d, [rdx - 0x50]
mov dword [rsp + 0x20], ebp
call fcn.140087c10
jmp 0x1400d10d9
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x51
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], 1
mov dword [rax + rcx*8 + 8], r12d
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
jmp 0x1400d10d9
test r11, r11
je 0x1400d0bef
mov rcx, r11
call fcn.140067450
mov rcx, qword [rsp + 0x60]
mov edx, eax
call fcn.140107250
mov rax, qword [rsp + 0x60]
lea rcx, [0x1401071f0]
cmp qword [rax + 0x130], rcx
jne 0x1400d0c0a
mov ebp, dword [rax + 0x138]
movsxd rdx, ebp
jmp 0x1400d10d1
mov rcx, qword [rsp + 0x60]
call fcn.140104ff0
jmp 0x1400d10d9
test r11, r11
je 0x1400d0c3b
mov rcx, r11
call fcn.140067450
mov r13d, eax
test al, 2
je 0x1400d10d9
jmp 0x1400d0c41
mov r13d, 0xfffe
mov rcx, qword [rsp + 0x160]
mov eax, dword [rcx + 0x34]
mov dword [rsp + 0x88], eax
inc eax
mov dword [rcx + 0x34], eax
test rdi, rdi
je 0x1400d0c6a
mov ecx, dword [rsp + 0x68]
mov rbx, qword [rsp + 0x60]
mov eax, ecx
jmp 0x1400d0c78
mov rbx, qword [rsp + 0x60]
mov ecx, dword [rsp + 0x68]
mov eax, dword [rbx + 0x28]
dec eax
movsxd rdi, eax
cmp r15, rdi
jg 0x1400d0fcd
mov r14, r15
sub rdi, r15
shl r14, 5
inc rdi
mov qword [rsp + 0xa0], rdi
nop dword [rax]
cmp ecx, 1
je 0x1400d0fac
mov r15, qword [rsp + 0x160]
mov edx, ecx
mov rcx, r15
call fcn.1400ba190
mov rdx, qword [rbx + 0x20]
mov rax, qword [r14 + rdx + 0x18]
mov r12, qword [rax + 0x10]
test r12, r12
je 0x1400d0fa8
nop word [rax + rax]
mov rdi, qword [r12 + 0x10]
bt dword [rdi + 0x40], 8
jae 0x1400d0f8d
movzx ebx, word [rdi + 0x48]
mov rax, qword [rdi + 0x10]
add bx, 0x2e
test rax, rax
je 0x1400d0d10
test byte [rax + 0x64], 0x80
je 0x1400d0d6d
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x1400d0d01
test bx, bx
je 0x1400d0d6d
mov r15d, dword [rsp + 0x88]
mov r8d, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x160]
mov edx, r15d
mov r9, rdi
mov dword [rsp + 0x20], WSAGetLastError
call fcn.1400c5e20
mov eax, dword [rsi + 0xb8]
movsx edx, bx
mov ecx, r13d
mov dword [rsp + 0x20], edx
mov r8d, r15d
and ecx, 1
mov edx, 0x21
lea r9d, [rcx + rax + 2]
mov rcx, rsi
call fcn.140087c80
mov r15, qword [rsp + 0x160]
mov rax, qword [rsp + 0x60]
mov r9, qword [rdi]
lea rdx, str.ANALYZE___w_.__w_
mov r8, qword [rax + 0x20]
mov rcx, rax
mov r8, qword [r14 + r8]
call fcn.140065890
mov rdi, rax
test r13b, 1
je 0x1400d0ed8
movzx eax, byte [r15 + 0x1f]
test al, al
jne 0x1400d0dac
inc dword [r15 + 0x38]
mov ebx, dword [r15 + 0x38]
jmp 0x1400d0dbd
dec al
movzx eax, al
mov byte [r15 + 0x1f], al
mov ebx, dword [r15 + rax*4 + 0xc4]
mov rax, qword [rsi + 0x18]
movsxd rdx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], edx
jg 0x1400d0de7
xor r8d, r8d
mov r9d, ebx
mov rcx, rsi
lea edx, [r8 + 0x6a]
mov dword [rsp + 0x20], ebp
call fcn.140087c10
mov edx, eax
jmp 0x1400d0e17
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x6a
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
mov rcx, qword [rsi]
cmp byte [rcx + 0x61], bpl
je 0x1400d0e2f
mov r8, rdi
mov edx, 0xfffffff9
call fcn.1400889a0
jmp 0x1400d0e71
test edx, edx
jns 0x1400d0e3b
mov edx, dword [rsi + 0xb8]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
cmp byte [rax + rcx*8 + 1], bpl
lea rdx, [rax + rcx*8]
je 0x1400d0e64
mov r9d, 0xfffffff9
mov r8, rdi
mov rcx, rsi
call fcn.140088ba0
jmp 0x1400d0e71
test rdi, rdi
je 0x1400d0e71
mov qword [rdx + 0x10], rdi
mov byte [rdx + 1], 0xf9
mov rax, qword [rsi + 0x18]
movsxd rcx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], ecx
jg 0x1400d0e9f
mov r9d, 1
mov r8d, ebx
mov rcx, rsi
lea edx, [r9 + 0x50]
mov dword [rsp + 0x20], ebp
call fcn.140087c10
jmp 0x1400d0f8d
lea eax, [rcx + 1]
lea rcx, [rcx + rcx*2]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x51
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], ebx
mov dword [rax + rcx*8 + 8], 1
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
jmp 0x1400d0f8d
mov rax, qword [rsi + 0x18]
movsxd rdx, dword [rsi + 0xb8]
cmp dword [rax + 0x3c], edx
jg 0x1400d0f03
xor r9d, r9d
xor r8d, r8d
mov edx, 0x8e
mov rcx, rsi
mov dword [rsp + 0x20], ebp
call fcn.140087c10
mov edx, eax
jmp 0x1400d0f33
lea rcx, [rdx + rdx*2]
lea eax, [rdx + 1]
mov dword [rsi + 0xb8], eax
mov rax, qword [rsi + 0x68]
mov byte [rax + rcx*8], 0x8e
mov word [rax + rcx*8 + 2], bp
mov dword [rax + rcx*8 + 4], ebp
mov dword [rax + rcx*8 + 8], ebp
mov dword [rax + rcx*8 + 0xc], ebp
mov qword [rax + rcx*8 + 0x10], rbp
mov byte [rax + rcx*8 + 1], bpl
mov rcx, qword [rsi]
cmp byte [rcx + 0x61], bpl
je 0x1400d0f4b
mov r8, rdi
mov edx, 0xfffffff9
call fcn.1400889a0
jmp 0x1400d0f8d
test edx, edx
jns 0x1400d0f57
mov edx, dword [rsi + 0xb8]
dec edx
movsxd rax, edx
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x68]
cmp byte [rax + rcx*8 + 1], bpl
lea rdx, [rax + rcx*8]
je 0x1400d0f80
mov r9d, 0xfffffff9
mov r8, rdi
mov rcx, rsi
call fcn.140088ba0
jmp 0x1400d0f8d
test rdi, rdi
je 0x1400d0f8d
mov qword [rdx + 0x10], rdi
mov byte [rdx + 1], 0xf9
mov r12, qword [r12]
test r12, r12
jne 0x1400d0ce0
mov rdi, qword [rsp + 0xa0]
mov ecx, dword [rsp + 0x68]
jmp 0x1400d0fac
mov ecx, dword [rsp + 0x68]
mov rbx, qword [rsp + 0x60]
inc ecx
add r14, 0x20
sub rdi, 1
mov dword [rsp + 0x68], ecx
mov qword [rsp + 0xa0], rdi
jne 0x1400d0ca0
mov edx, 0x9f
mov rcx, rsi
call fcn.140087d10
jmp 0x1400d10d9
test r11, r11
je 0x1400d1005
lea rdx, [rsp + 0x160]
mov rcx, r11
call fcn.1400671e0
test eax, eax
jne 0x1400d1005
mov rcx, qword [rsp + 0x160]
call fcn.140062b70
call fcn.140104680
test eax, eax
je 0x1400d101a
or rax, 0xffffffffffffffff
mov rdx, rax
jmp 0x1400d10d1
mov rcx, qword [0x14018af18]
test rcx, rcx
je 0x1400d1033
call qword [0x14017d320]
mov rcx, qword [0x14018af18]
mov rax, qword [0x14018af20]
mov qword [rsp + 0x160], rax
test rcx, rcx
je 0x1400d1055
call qword [0x14017d330]
mov rax, qword [rsp + 0x160]
mov rdx, rax
jmp 0x1400d10d1
test r11, r11
je 0x1400d109e
lea rdx, [rsp + 0x160]
mov rcx, r11
call fcn.1400671e0
test eax, eax
jne 0x1400d109e
mov rax, qword [rsp + 0x160]
test rax, rax
js 0x1400d109e
btr eax, 0x1f
test eax, eax
js 0x1400d109e
mov r13, qword [rsp + 0x60]
mov ecx, 8
cmp eax, ecx
cmovg eax, ecx
mov dword [r13 + 0xa8], eax
mov rax, qword [rsp + 0x60]
movsxd rdx, dword [rax + 0xa8]
jmp 0x1400d10d1
test r11, r11
je 0x1400d10c5
mov rcx, r11
call fcn.140067450
mov rcx, qword [rsp + 0x60]
mov edx, eax
call fcn.140106510
mov rax, qword [rsp + 0x60]
movsxd rdx, dword [rax + 0x288]
mov rcx, rsi
call fcn.1400cd2c0
mov r13, qword [rsp + 0x60]
mov rdx, qword [rsp + 0xd8]
mov rcx, r13
call fcn.140063110
mov rdx, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x60]
call fcn.140063110
mov r12, qword [rsp + 0x178]
mov rbx, qword [rsp + 0x168]
mov r15, qword [rsp + 0x130]
mov rbp, qword [rsp + 0x170]
add rsp, 0x138
pop r14
pop r13
pop rdi
pop rsi
ret