Function at 0x1401fe488
Capabilities:
Encrypt data using speck
Reference sql statements
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1a8]
sub rsp, 0x2a8
mov rax, qword [rcx + 0x68]
mov r15, rcx
xor ecx, ecx
mov qword [rsp + 0x30], rax
mov rsi, rax
mov byte [rbp + 0x208], cl
mov r14d, ecx
mov dword [rsp + 0x78], ecx
mov rdi, qword [r15]
mov ebx, ecx
mov r12, qword [r15 + 0x70]
mov dword [rbp - 0x70], ecx
mov rcx, r15
mov qword [rsp + 0x38], rdi
mov al, byte [rdi + 0x5e]
mov byte [rbp + 0x1f8], al
mov qword [rsp + 0x40], r12
call fcn.140209214
mov eax, 7
lea r13d, [rax - 6]
cmp dword [r15 + 0x38], eax
je 0x1401feaa7
xor r10d, r10d
mov qword [r15 + 0x48], r10
mov qword [r15 + 0x88], r10
mov eax, dword [rdi + 0x160]
mov dword [rdi + 0x238], r10d
test eax, eax
jne 0x140203904
cmp qword [rdi + 0x1b0], r10
je 0x1401fe548
mov r8d, dword [rdi + 0x1c0]
xor edx, edx
mov eax, dword [r15 + 0xe0]
div r8d
sub r8d, edx
mov dword [rbp - 0x6c], r8d
jmp 0x1401fe54c
or dword [rbp - 0x6c], 0xffffffff
movsxd rax, dword [r15 + 0x34]
mov r11d, 4
mov r9, rsi
mov edx, 0x2400
lea rcx, [rax + rax*2]
lea rsi, [rsi + rcx*8]
lea rcx, [0x140000000]
lea r8d, [r11 - 2]
add ebx, r13d
mov qword [rbp - 0x58], rsi
mov dword [rbp - 0x70], ebx
movzx ebx, byte [rsi]
cmp ebx, 0xa9
ja case.default.0x1401fe597
mov ecx, dword [rcx + rbx*4 + 0x20392c]
lea rax, [0x140000000]
add rcx, rax
jmp rcx
movsxd rax, dword [rsi + 4]
mov rcx, rsi
imul r8, rax, 0x38
sub rcx, r9
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov word [r8 + r12 + 8], r11w
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + r12], rax
jmp 0x1401ff12a
movsxd rax, dword [rsi + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + r12]
lea rcx, [rax + rax*2]
mov eax, 0x80
mov word [rdx + r12 + 8], ax
lea rsi, [r9 + rcx*8]
mov edx, 0x2400
lea rcx, [0x140000000]
mov ebx, dword [rbp - 0x70]
add rsi, 0x18
jmp 0x1401fe571
movsxd rax, dword [rsi + 4]
imul rcx, rax, 0x38
mov eax, dword [rsi + 0xc]
sub eax, r13d
cdqe
mov qword [rcx + r12], rax
mov word [rcx + r12 + 8], r11w
cmp dword [rsi + 8], r10d
jne 0x1401ff12a
jmp case.0x1401fe597.86
movsxd rax, dword [rsi + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + r12]
lea rcx, [rax + rax*2]
mov eax, dword [r9 + rcx*8 + 8]
sub eax, r13d
cdqe
jmp 0x1401fe5df
movsxd rax, dword [rsi + 4]
sub rsi, r9
imul r8, rax, 0x38
movabs rax, 0x2aaaaaaaaaaaaaab
imul rsi
movsxd rcx, dword [r8 + r12]
sar rdx, 2
mov rax, rdx
mov word [r8 + r12 + 8], r11w
shr rax, 0x3f
add rax, rdx
lea rcx, [rcx + rcx*2]
cdqe
lea rsi, [r9 + rcx*8]
mov qword [r8 + r12], rax
mov edx, 0x2400
mov r8d, 2
jmp case.0x1401fe597.86
movsxd rax, dword [rsi + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r12 + 8], r13b
je case.0x1401fe597.86
mov rcx, rsi
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, r9
imul rcx
mov rbx, rdx
sar rbx, 2
mov rax, rbx
shr rax, 0x3f
add rbx, rax
cmp dword [rsi + 4], r10d
jne 0x140203460
mov rcx, qword [r15 + 0x100]
test rcx, rcx
je 0x140203460
mov rax, qword [rcx + 8]
dec dword [r15 + 0x110]
mov qword [r15 + 0x100], rax
mov eax, dword [r15 + 0x3c]
add dword [rdi + 0x78], eax
mov dword [rdi + 0x74], eax
call fcn.1402086dc
mov r11d, 4
cmp dword [rsi + 8], r11d
jne 0x1401fe729
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 0x68]
mov eax, dword [rax + rcx*8 + 8]
sub eax, r13d
mov r9, qword [r15 + 0x68]
mov r12, qword [r15 + 0x70]
cdqe
mov qword [rsp + 0x30], r9
mov qword [rsp + 0x40], r12
lea rcx, [rax + rax*2]
lea rsi, [r9 + rcx*8]
xor r10d, r10d
jmp 0x1401fe68a
mov rdx, rsi
mov rcx, r15
call fcn.140203bdc
mov rcx, rax
movsxd rax, dword [rsi + 4]
mov qword [rcx], rax
mov r9, qword [rsp + 0x30]
xor r10d, r10d
mov edx, 0x2400
mov r8d, 2
mov r11d, 4
jmp case.0x1401fe597.86
mov rdx, rsi
mov rcx, r15
call fcn.140203bdc
mov rdx, rax
mov rax, qword [rsi + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x1401fe762
mov rdx, rsi
mov rcx, r15
call fcn.140203bdc
mov rdx, rax
mov eax, 8
mov word [rdx + 8], ax
jmp 0x1401fe78e
mov rdx, rsi
mov rcx, r15
call fcn.140203bdc
mov rdx, qword [rsi + 0x10]
xor ecx, ecx
mov byte [rsi], 0x48
mov rbx, rax
test rdx, rdx
jne 0x1401fe7d3
mov eax, ecx
jmp 0x1401fe7e4
or rax, 0xffffffffffffffff
inc rax
cmp byte [rdx + rax], cl
jne 0x1401fe7d7
and eax, 0x3fffffff
mov dword [rsi + 4], eax
cmp byte [rbp + 0x1f8], r13b
je 0x1401fe86f
mov qword [rsp + 0x20], rcx
mov r9b, r13b
mov rcx, rbx
or r8d, 0xffffffff
call fcn.14020ae30
movzx ecx, byte [rbp + 0x1f8]
mov r14d, eax
mov eax, 2
test byte [rbx + 8], al
je 0x1401fe82e
movzx eax, byte [rbx + 0xa]
cmp eax, ecx
je 0x1401fe82e
mov dl, cl
mov rcx, rbx
call fcn.140225988
xor ecx, ecx
jmp 0x1401fe832
xor ecx, ecx
mov eax, ecx
test eax, eax
jne 0x1401feaa7
mov eax, 0x800
mov dword [rbx + 0x20], ecx
or word [rbx + 8], ax
cmp byte [rsi + 1], 0xf9
jne 0x1401fe85d
mov rdx, qword [rsi + 0x10]
test rdx, rdx
je 0x1401fe85d
mov rcx, rdi
call fcn.140228168
mov byte [rsi + 1], 0xf9
mov rax, qword [rbx + 0x10]
mov qword [rsi + 0x10], rax
mov eax, dword [rbx + 0xc]
mov dword [rsi + 4], eax
mov eax, dword [rdi + 0x7c]
cmp dword [rsi + 4], eax
jg 0x140202751
mov rdx, rsi
mov rcx, r15
call fcn.140203bdc
mov rdx, rax
xor r10d, r10d
mov eax, 0xa02
mov word [rdx + 8], ax
lea r8d, [r10 + 2]
mov rax, qword [rsi + 0x10]
lea r11d, [r10 + 4]
mov qword [rdx + 0x10], rax
mov eax, dword [rsi + 4]
mov dword [rdx + 0xc], eax
mov al, byte [rbp + 0x1f8]
mov byte [rdx + 0xa], al
cmp dword [rsi + 0xc], r10d
jle 0x1401fe8d5
movsxd rax, dword [rsi + 0xc]
imul rcx, rax, 0x38
movzx eax, word [rsi + 2]
cmp qword [rcx + r12], rax
jne 0x1401fe8d5
mov eax, 0xa10
mov word [rdx + 8], ax
mov r9, qword [rsp + 0x30]
jmp 0x1401fe5f2
mov rdx, rsi
mov rcx, r15
call fcn.140203bdc
mov edi, dword [rsi + 0xc]
mov rcx, rax
sub edi, dword [rsi + 8]
mov eax, dword [rsi + 4]
neg eax
mov eax, VarUI2FromI4
lea rbx, [rcx + 8]
sbb r12w, r12w
xor r10d, r10d
and r12w, ax
mov dword [rcx + 0xc], r10d
add r12w, r13w
mov word [rbx], r12w
test edi, edi
jle 0x1402032a7
mov eax, 0x2400
lea rbx, [rbx + 0x38]
test word [rbx], ax
je 0x1401fe941
lea rcx, [rbx - 8]
call fcn.14020b810
xor r10d, r10d
mov eax, 0x2400
jmp 0x1401fe945
mov word [rbx], r13w
sub edi, r13d
mov word [rbx], r12w
mov dword [rbx + 4], r10d
test edi, edi
jg 0x1401fe925
mov rdi, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
mov r9, qword [rsp + 0x30]
jmp 0x1401fe76a
movsxd rax, dword [rsi + 4]
imul rcx, rax, 0x38
mov eax, 0xff61
add rcx, r12
and word [rcx + 8], ax
or word [rcx + 8], r13w
jmp case.0x1401fe597.86
mov rdx, rsi
mov rcx, r15
call fcn.140203bdc
mov r8d, dword [rsi + 4]
mov rbx, rax
mov rdx, qword [rsi + 0x10]
xor eax, eax
mov rcx, rbx
mov qword [rsp + 0x20], rax
xor r9d, r9d
call fcn.14020ae30
mov al, byte [rbp + 0x1f8]
mov byte [rbx + 0xa], al
jmp 0x1401fe762
mov eax, dword [rsi + 4]
sub eax, r13d
cdqe
imul r9, rax, 0x38
add r9, qword [r15 + 0xa0]
mov rcx, r9
call fcn.14020b1bc
test eax, eax
jne 0x140202751
mov r8d, 0x800
mov rdx, r9
movsxd rax, dword [rsi + 8]
imul rcx, rax, 0x38
add rcx, r12
call fcn.14020b13c
jmp 0x1401fe762
movsxd rax, dword [rsi + 4]
mov r12d, dword [rsi + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rsi + 8]
add rdi, qword [rsp + 0x40]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x40]
mov rdx, rdi
mov rcx, rbx
call fcn.14020b04c
mov eax, 0x1000
test word [rbx + 8], ax
je 0x1401fea3d
mov rcx, rbx
call fcn.14020bb00
test eax, eax
jne 0x1401feaa2
add rdi, 0x38
add rbx, 0x38
sub r12d, r13d
jne 0x1401fea1b
mov rdi, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
jmp 0x1401fe762
movsxd rax, dword [rsi + 4]
mov r12d, dword [rsi + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rsi + 8]
add rdi, qword [rsp + 0x40]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x40]
mov r8d, 0x1000
mov rdx, rdi
mov rcx, rbx
call fcn.14020b13c
mov eax, 0x1000
test word [rbx + 8], ax
je 0x1401feacc
mov rcx, rbx
call fcn.14020bb00
xor r10d, r10d
test eax, eax
je 0x1401feacf
mov rdi, qword [rsp + 0x38]
mov r12d, 7
mov rcx, rdi
call fcn.140227b70
lea rdx, [0x1406eaad8]
mov rcx, r15
call fcn.14020a5f4
mov r14d, r12d
jmp 0x140203656
xor r10d, r10d
mov eax, r12d
sub r12d, r13d
test eax, eax
je 0x1402032a7
add rbx, 0x38
add rdi, 0x38
jmp 0x1401fea77
movsxd rax, dword [rsi + 4]
mov r8d, 0x1000
imul rdx, rax, 0x38
add rdx, r12
jmp 0x1401fe9e8
movsxd rax, dword [rsi + 8]
imul rcx, rax, 0x38
movsxd rax, dword [rsi + 4]
imul rdx, rax, 0x38
add rcx, r12
mov rax, qword [rdx + r12]
mov edx, 0x2400
test word [rcx + 8], dx
je 0x1401feb2c
mov rdx, rax
call fcn.14020b314
jmp 0x1401fe762
mov qword [rcx], rax
mov word [rcx + 8], r11w
jmp case.0x1401fe597.86
movsxd rax, dword [rsi + 4]
mov edx, 1
imul r13, rax, 0x38
movsxd rax, dword [rsi + 8]
imul rdi, rax, 0x38
movsxd rax, dword [rsi + 0xc]
add r13, r12
imul rbx, rax, 0x38
add rdi, r12
add rbx, r12
mov al, byte [rdi + 8]
or al, byte [r13 + 8]
test dl, al
je 0x1401feba2
mov edx, 0x2400
test word [rbx + 8], dx
je 0x1401feb8d
mov rcx, rbx
call fcn.14020b810
mov r13d, 1
mov rdi, qword [rsp + 0x38]
jmp 0x1401fe762
mov r13d, 1
mov word [rbx + 8], r13w
mov rdi, qword [rsp + 0x38]
jmp case.0x1401fe597.86
mov ecx, 0x4000
test word [r13 + 8], cx
je 0x1401febc0
mov rcx, r13
call fcn.14020baa8
xor r10d, r10d
mov ecx, 0x4000
jmp 0x1401febc3
mov eax, r10d
test eax, eax
jne 0x1401feaa2
test word [rdi + 8], cx
je 0x1401febdb
mov rcx, rdi
call fcn.14020baa8
jmp 0x1401febde
mov eax, r10d
test eax, eax
jne 0x1401feaa2
test byte [r13 + 8], 0x12
mov r12b, byte [rbp + 0x1f8]
jne 0x1401fec0e
xor r8d, r8d
mov dl, r12b
mov rcx, r13
call fcn.14020b984
xor ecx, ecx
test eax, eax
jne 0x1401feaa2
jmp 0x1401fec10
xor ecx, ecx
test byte [rdi + 8], 0x12
jne 0x1401fec2e
xor r8d, r8d
mov dl, r12b
mov rcx, rdi
call fcn.14020b984
xor ecx, ecx
test eax, eax
jne 0x1401feaa2
mov eax, dword [rdi + 0xc]
add eax, dword [r13 + 0xc]
mov r10, qword [rsp + 0x38]
movsxd r12, eax
movsxd rax, dword [r10 + 0x7c]
cmp r12, rax
jg 0x140202751
mov r8d, ecx
lea edx, [r12 + 2]
cmp rbx, rdi
mov rcx, rbx
sete r8b
call fcn.14020bbd4
test eax, eax
jne 0x1401feaa2
mov eax, 0x3e00
and word [rbx + 8], ax
mov eax, 2
or word [rbx + 8], ax
cmp rbx, rdi
je 0x1401fec91
movsxd r8, dword [rdi + 0xc]
mov rdx, qword [rdi + 0x10]
mov rcx, qword [rbx + 0x10]
call fcn.14011c9b0
movsxd rcx, dword [rdi + 0xc]
add rcx, qword [rbx + 0x10]
movsxd r8, dword [r13 + 0xc]
mov rdx, qword [r13 + 0x10]
call fcn.14011c9b0
mov rax, qword [rbx + 0x10]
xor r10d, r10d
mov byte [r12 + rax], r10b
mov rax, qword [rbx + 0x10]
mov byte [rax + r12 + 1], r10b
mov eax, 0x200
or word [rbx + 8], ax
mov al, byte [rbp + 0x1f8]
mov byte [rbx + 0xa], al
mov dword [rbx + 0xc], r12d
mov r13d, 1
jmp 0x1401fe954
movsxd rax, dword [rsi + 4]
mov rbx, qword [rsp + 0x40]
imul r12, rax, 0x38
add r12, rbx
movzx ecx, word [r12 + 8]
and cx, 0xc
mov dword [rsp + 0x48], ecx
jne 0x1401fed1e
test byte [r12 + 8], 0x12
je 0x1401fed19
mov rcx, r12
call fcn.140203c68
xor r10d, r10d
mov word [rsp + 0x48], ax
lea r11d, [r10 + 4]
jmp 0x1401fed1e
mov dword [rsp + 0x48], r10d
movsxd rax, dword [rsi + 8]
imul rdi, rax, 0x38
add rdi, rbx
movzx r13d, word [rdi + 8]
and r13w, 0xc
jne 0x1401fed52
test byte [rdi + 8], 0x12
je 0x1401fed4f
mov rcx, rdi
call fcn.140203c68
movzx r13d, ax
mov r11d, 4
jmp 0x1401fed52
mov r13d, r10d
movsxd rax, dword [rsi + 0xc]
movzx ecx, word [rdi + 8]
or cx, word [r12 + 8]
imul rbx, rax, 0x38
mov al, r13b
add rbx, qword [rsp + 0x40]
and al, byte [rsp + 0x48]
test r11b, al
je 0x1401fee52
movzx edx, byte [rsi]
mov r8, qword [rdi]
mov rcx, qword [r12]
mov qword [rsp + 0x60], r8
mov byte [rbp + 0x200], 1
sub edx, 0x60
je 0x1401fee0e
sub edx, 1
je 0x1401fedff
sub edx, 1
je 0x1401fedf0
xor r10d, r10d
cmp edx, 1
je 0x1401fedc8
test rcx, rcx
je 0x1401fef39
cmp rcx, 0xffffffffffffffff
lea r13d, [r10 + 1]
mov rax, r8
cqo
cmove rcx, r13
idiv rcx
mov rax, rdx
jmp 0x1401fee2d
test rcx, rcx
je 0x1401fef39
cmp rcx, 0xffffffffffffffff
jne 0x1401fede6
movabs rax, 0x8000000000000000
cmp r8, rax
je 0x1401fee63
mov rax, r8
cqo
idiv rcx
jmp 0x1401fee27
mov rdx, rcx
lea rcx, [rsp + 0x60]
call fcn.140224544
jmp 0x1401fee1b
mov rdx, rcx
lea rcx, [rsp + 0x60]
call fcn.1402245e0
jmp 0x1401fee1b
mov rdx, rcx
lea rcx, [rsp + 0x60]
call fcn.140224614
xor r10d, r10d
test eax, eax
jne 0x1401fee63
mov rax, qword [rsp + 0x60]
mov r13d, 1
mov qword [rbx], rax
mov eax, 0x3e00
and word [rbx + 8], ax
or word [rbx + 8], r11w
mov rdi, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
mov r9, qword [rsp + 0x30]
jmp 0x1401fe68a
test cl, 1
jne 0x1401fef57
xor eax, eax
mov byte [rbp + 0x200], al
mov rcx, r12
call fcn.14020b6a4
mov rcx, rdi
movaps xmm2, xmm0
call fcn.14020b6a4
movzx ecx, byte [rsi]
movaps xmm3, xmm0
sub ecx, 0x60
je 0x1401feedf
sub ecx, 1
je 0x1401feed9
sub ecx, 1
je 0x1401feed3
cmp ecx, 1
je 0x1401feec1
cvttsd2si rcx, xmm2
xor r10d, r10d
cvttsd2si rax, xmm0
test rcx, rcx
je 0x1401fef33
cmp rcx, 0xffffffffffffffff
lea edx, [r10 + 1]
xorps xmm3, xmm3
cmove rcx, rdx
cqo
idiv rcx
cvtsi2sd xmm3, rdx
jmp 0x1401feee6
ucomisd xmm2, qword [0x1406a0320]
jp 0x1401feecd
je 0x1401fef30
divsd xmm3, xmm2
jmp 0x1401feee3
mulsd xmm3, xmm2
jmp 0x1401feee3
subsd xmm3, xmm2
jmp 0x1401feee3
addsd xmm3, xmm2
xor r10d, r10d
movaps xmm0, xmm3
call fcn.14022572c
test eax, eax
jne 0x1401fef33
or r13b, byte [rsp + 0x48]
mov ecx, 8
mov eax, 0x3e00
movsd qword [rbx], xmm3
and word [rbx + 8], ax
or word [rbx + 8], cx
test cl, r13b
jne 0x1402032cd
cmp byte [rbp + 0x200], r10b
jne 0x1402032cd
mov rcx, rbx
call fcn.14020b610
jmp 0x1401fecd0
xor r10d, r10d
mov r11d, 4
mov edx, 0x2400
test word [rbx + 8], dx
je 0x1401fef5c
mov rcx, rbx
call fcn.14020b810
mov r13d, 1
jmp 0x1401fea4a
xor r10d, r10d
jmp 0x1401fef39
mov rdi, qword [rsp + 0x38]
mov r13d, 1
mov r12, qword [rsp + 0x40]
mov word [rbx + 8], r13w
mov r9, qword [rsp + 0x30]
jmp 0x1401fe68f
cmp dword [rsi + 4], r10d
je case.0x1401fe597.86
movsxd rax, dword [rsi + 4]
imul rcx, rax, 0x38
add rcx, r12
test word [rcx + 8], dx
je 0x1401fef9d
xor edx, edx
jmp 0x1401feb22
mov qword [rcx], r10
jmp 0x1401feb2f
mov rdx, qword [rsp + 0x40]
movsxd rax, dword [rsi + 4]
imul r12, rax, 0x38
movsxd rax, dword [rsi + 8]
imul rcx, rax, 0x38
movsxd rax, dword [rsi + 0xc]
add r12, rdx
imul rdi, rax, 0x38
add rcx, rdx
add rdi, rdx
mov al, byte [rcx + 8]
or al, byte [r12 + 8]
test r13b, al
je 0x1401ff004
mov edx, 0x2400
test word [rdi + 8], dx
je 0x1401feff0
mov rcx, rdi
call fcn.14020b810
jmp 0x1401fea4a
mov word [rdi + 8], r13w
mov rdi, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
jmp case.0x1401fe597.86
call fcn.14020b708
mov rcx, r12
mov rbx, rax
call fcn.14020b708
mov r8b, byte [rsi]
mov rdx, rax
cmp r8b, 0x5c
jne 0x1401ff025
and rbx, rax
jmp 0x1401ff02e
cmp r8b, 0x5d
jne 0x1401ff033
or rbx, rdx
xor r10d, r10d
jmp 0x1401ff0a9
xor r10d, r10d
test rdx, rdx
je 0x1401ff0a9
jns 0x1401ff05d
mov rcx, rdx
mov eax, reloc.OLEAUT32.dll_VarDecFromUI1
sub al, r8b
neg rcx
mov r8b, al
mov rax, rdx
cmp rax, 0xffffffffffffffc0
lea edx, [r10 + 0x40]
cmovg rdx, rcx
cmp rdx, 0x40
jl 0x1401ff079
test rbx, rbx
jns 0x1401ff074
cmp r8b, 0x5e
je 0x1401ff074
or rbx, 0xffffffffffffffff
jmp 0x1401ff0a9
mov rbx, r10
jmp 0x1401ff0a9
mov rcx, rdx
cmp r8b, 0x5e
jne 0x1401ff08a
shl rbx, cl
mov r8, rbx
jmp 0x1401ff0a6
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x1401ff0a6
mov ecx, 0x40
sub cl, dl
or rdx, 0xffffffffffffffff
shl rdx, cl
or r8, rdx
mov rbx, r8
mov eax, 0x3e00
mov qword [rdi], rbx
and word [rdi + 8], ax
mov r11d, 4
or word [rdi + 8], r11w
jmp 0x1401fee3e
movsxd rax, dword [rsi + 4]
imul rbx, rax, 0x38
add rbx, r12
mov rcx, rbx
call fcn.14020b5e0
movsxd rax, dword [rsi + 8]
add qword [rbx], rax
jmp 0x1401fe762
movsxd rax, dword [rsi + 4]
imul rbx, rax, 0x38
add rbx, r12
movzx eax, word [rbx + 8]
test r11b, al
jne 0x1401ff14f
mov r8b, byte [rbp + 0x1f8]
mov dl, 0x43
mov rcx, rbx
call fcn.140203d1c
movzx eax, word [rbx + 8]
mov r11d, 4
xor r10d, r10d
test r11b, al
jne 0x1401ff13f
cmp dword [rsi + 8], r10d
je 0x14020352b
mov r9, qword [rsp + 0x30]
mov eax, dword [rsi + 8]
sub eax, r13d
cdqe
lea rcx, [rax + rax*2]
lea rsi, [r9 + rcx*8]
jmp 0x140201037
mov r9, qword [rsp + 0x30]
mov edx, 0x2400
mov r8d, 2
mov ecx, 0x3e00
and ax, cx
or ax, r11w
mov word [rbx + 8], ax
jmp case.0x1401fe597.86
movsxd rax, dword [rsi + 4]
imul rcx, rax, 0x38
add rcx, r12
test byte [rcx + 8], r11b
je case.0x1401fe597.86
call fcn.14020b5b0
jmp 0x1401fe762
movsxd rax, dword [rsi + 4]
imul rbx, rax, 0x38
mov eax, 0x4000
add rbx, r12
test word [rbx + 8], ax
je 0x1401ff1a6
mov rcx, rbx
call fcn.14020baa8
mov r14d, eax
jmp 0x1401ff1a9
mov r14d, r10d
mov r8b, byte [rbp + 0x1f8]
mov rcx, rbx
mov dl, byte [rsi + 8]
call fcn.14020b408
xor r10d, r10d
test r14d, r14d
je 0x1401fe95e
mov r12d, 7
mov rbx, qword [rsp + 0x38]
mov edi, 0xc0a
cmp byte [rbx + 0x61], r10b
cmovne r14d, r12d
cmp qword [r15 + 0x90], r10
jne 0x1401ff207
cmp r14d, edi
je 0x1401ff207
mov ecx, r14d
call fcn.1401b7df8
mov r8, rax
lea rdx, [0x1406e9354]
mov rcx, r15
call fcn.14020a5f4
mov edx, r14d
mov dword [r15 + 0x38], r14d
mov rcx, rbx
call fcn.14022562c
sub rsi, qword [rsp + 0x30]
movabs rax, 0x2aaaaaaaaaaaaaab
mov r9, qword [r15 + 0xf0]
mov ecx, r14d
imul rsi
mov rax, qword [r15 + 0x90]
sar rdx, 2
mov r8, rdx
mov qword [rsp + 0x20], rax
shr r8, 0x3f
add r8, rdx
lea rdx, str.statement_aborts_at__d:___s___s
call fcn.1402262c8
mov rcx, r15
call fcn.140207c18
cmp r14d, edi
jne 0x1401ff26d
mov rcx, rbx
call fcn.140227b70
mov al, byte [rbp + 0x208]
xor r10d, r10d
mov r14d, 1
test al, al
je 0x1401ff290
movzx edx, al
mov rcx, rbx
dec edx
call fcn.1401ed0c4
xor r10d, r10d
mov eax, dword [rbp - 0x70]
add dword [r15 + 0xe0], eax
cmp dword [r15 + 0xcc], r10d
je 0x1401ff2ab
mov rcx, r15
call fcn.140209194
mov eax, r14d
add rsp, 0x2a8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov rcx, qword [rsp + 0x40]
mov edx, 1
movsxd rax, dword [rsi + 4]
imul r12, rax, 0x38
movsxd rax, dword [rsi + 0xc]
add r12, rcx
imul rdi, rax, 0x38
movzx r13d, word [r12 + 8]
add rdi, rcx
movzx ebx, word [rdi + 8]
movzx ecx, bx
or cx, r13w
test dl, cl
je 0x1401ff373
lea eax, [rdx + 0x7f]
test byte [rsi + 2], al
je 0x1401ff322
mov al, bl
and al, r13b
test dl, al
je 0x1401ff3e6
mov eax, VarUI2FromI4
test ax, bx
jne 0x1401ff3e6
mov edx, r10d
jmp 0x1401ff52b
test byte [rsi + 2], 0x20
mov r13, rdx
je 0x1401ff356
movsxd rax, dword [rsi + 8]
mov r12, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x38]
imul rcx, rax, 0x38
mov eax, 0x3e00
mov dword [rsp + 0x78], edx
add rcx, r12
and word [rcx + 8], ax
or word [rcx + 8], dx
jmp 0x1401fe5f2
mov eax, reloc.WS2_32.dll_recv
test byte [rsi + 2], al
jne 0x1401ff12a
mov rdi, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
jmp 0x1401fe5f2
mov al, byte [rsi + 2]
and al, 0x47
cmp al, 0x43
jb 0x1401ff47b
test r8b, cl
je 0x1401ff3c0
mov al, r13b
and al, 0xe
cmp al, r8b
jne 0x1401ff3a7
xor edx, edx
mov rcx, r12
call fcn.140203d88
movzx ebx, word [rdi + 8]
mov r8d, 2
lea r11d, [r8 + 2]
mov al, bl
and al, 0xe
cmp al, r8b
jne 0x1401ff3c0
xor edx, edx
mov rcx, rdi
call fcn.140203d88
mov r11d, 4
mov al, byte [r12 + 8]
and al, byte [rdi + 8]
test r11b, al
je 0x1401ff4ed
mov rax, qword [r12]
cmp qword [rdi], rax
jle 0x1401ff466
mov edx, 1
xor r10d, r10d
movzx eax, byte [rsi]
sub eax, 0x34
movsxd rcx, eax
lea rax, [0x140000000]
mov al, byte [rcx + rax + 0x697b58]
mov word [r12 + 8], r13w
mov word [rdi + 8], bx
test byte [rsi + 2], 0x20
movzx r8d, al
je 0x1401ff547
movsxd rax, dword [rsi + 8]
mov r12, qword [rsp + 0x40]
imul rcx, rax, 0x38
mov eax, 8
mov dword [rsp + 0x78], edx
add rcx, r12
test byte [rsi + 2], al
je 0x1401ff445
cmp byte [rsi], 0x35
mov eax, r10d
sete al
cmp eax, r8d
je 0x1402032d5
mov rdi, qword [rsp + 0x38]
mov eax, 0x3e00
and word [rcx + 8], ax
mov r13d, 1
or word [rcx + 8], r11w
mov qword [rcx], r8
jmp 0x1401fee48
jge 0x1401ff473
or edx, 0xffffffff
xor r10d, r10d
jmp 0x1401ff509
xor r10d, r10d
jmp 0x1401ff31a
cmp al, 0x42
jne 0x1401ff4ed
mov eax, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
test r8b, r13b
jne 0x1401ff4c1
test al, r13b
je 0x1401ff4c1
mov r8b, dl
mov rcx, r12
mov dl, byte [rbp + 0x1f8]
call fcn.14020b984
movzx eax, r13w
mov edx, 1
xor ax, word [r12 + 8]
mov ecx, 0x3e00
and ax, cx
xor r13w, ax
lea eax, [rdx + 0xb]
lea r8d, [rdx + 1]
test r8b, bl
jne 0x1401ff4ed
test al, bl
je 0x1401ff4ed
mov r8b, dl
mov rcx, rdi
mov dl, byte [rbp + 0x1f8]
call fcn.14020b984
movzx eax, bx
mov ecx, 0x3e00
xor ax, word [rdi + 8]
and ax, cx
xor bx, ax
mov r8, qword [rsi + 0x10]
mov rdx, r12
mov rcx, rdi
call fcn.140206ef4
mov edx, eax
xor r10d, r10d
lea r11d, [r10 + 4]
test eax, eax
jns 0x1401ff525
movzx eax, byte [rsi]
sub eax, 0x34
movsxd rcx, eax
lea rax, [0x140000000]
mov al, byte [rcx + rax + 0x698fb4]
jmp 0x1401ff3fd
jne 0x1401ff3e6
movzx eax, byte [rsi]
sub eax, 0x34
movsxd rcx, eax
lea rax, [0x140000000]
mov al, byte [rcx + rax + 0x697f48]
jmp 0x1401ff3fd
mov r9, qword [rsp + 0x30]
mov r13d, 1
test al, al
jne 0x1401ff12a
mov rdi, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
jmp 0x1401fe68a
cmp dword [rsp + 0x78], r10d
jmp 0x1401fe628
test byte [rsi + 2], r13b
jne 0x1401ff57e
mov rbx, r10
jmp 0x1401ff585
mov rbx, qword [rsi - 8]
add rbx, r11
movsxd rax, dword [rsi + 0xc]
mov r12d, r10d
mov rcx, qword [rsi + 0x10]
mov rdi, r10
mov r9d, dword [rsi + 4]
mov edx, dword [rsi + 8]
mov qword [rbp - 0x50], rcx
mov dword [rbp + 0x200], r9d
mov dword [rsp + 0x58], edx
mov qword [rsp + 0x70], rax
test rax, rax
jle 0x140203449
lea r13, [rcx + 0x20]
test rbx, rbx
je 0x1401ff5c6
mov r8d, dword [rbx + rdi*4]
jmp 0x1401ff5c9
mov r8d, r12d
mov rax, qword [rcx + 0x18]
movzx eax, byte [rax + rdi]
mov dword [rbp - 0x68], eax
lea eax, [r8 + rdx]
movsxd rcx, eax
lea eax, [r8 + r9]
mov r8, qword [r13]
imul rdx, rcx, 0x38
movsxd rcx, eax
add rdx, qword [rsp + 0x40]
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x40]
call fcn.140206ef4
xor r10d, r10d
mov dword [rsp + 0x78], eax
mov edx, eax
test eax, eax
jne 0x1401ff635
mov rcx, qword [rbp - 0x50]
lea eax, [rdx + 1]
mov r9d, dword [rbp + 0x200]
add r12d, eax
mov edx, dword [rsp + 0x58]
add rdi, rax
add r13, 8
cmp rdi, qword [rsp + 0x70]
jl 0x1401ff5bb
mov r13d, eax
jmp 0x1401fe954
mov r13d, 1
mov rdi, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
lea r8d, [r13 + 1]
lea r11d, [r13 + 3]
cmp dword [rbp - 0x68], r10d
je 0x1401fe8d5
neg edx
mov dword [rsp + 0x78], edx
jmp 0x1401fe8d5
mov edx, dword [rsp + 0x78]
test edx, edx
jns 0x1401ff66f
mov eax, dword [rsi + 4]
jmp 0x1401ff679
jne 0x1401ff676
mov eax, dword [rsi + 8]
jmp 0x1401ff679
mov eax, dword [rsi + 0xc]
sub eax, r13d
cdqe
lea rcx, [rax + rax*2]
lea rsi, [r9 + rcx*8]
jmp 0x1401fe5f2
movsxd rax, dword [rsi + 4]
mov edx, r8d
imul rcx, rax, 0x38
add rcx, r12
call fcn.14020b660
movsxd rcx, dword [rsi + 8]
mov edx, 2
imul rcx, rcx, 0x38
mov ebx, eax
add rcx, r12
call fcn.14020b660
lea rcx, [0x140000000]
lea eax, [rax + rbx*2]
add eax, ebx
cmp byte [rsi], 0x2c
cdqe
jne 0x1401ff6d1
mov cl, byte [rax + rcx + 0x699728]
jmp 0x1401ff6d8
mov cl, byte [rax + rcx + 0x699338]
movsxd rax, dword [rsi + 0xc]
mov r8d, 2
mov r9, qword [rsp + 0x30]
movzx edx, cl
imul rcx, rax, 0x38
mov eax, 0x3e00
lea r11d, [r8 + 2]
add rcx, r12
and word [rcx + 8], ax
cmp edx, r8d
jne 0x1401ff710
or word [rcx + 8], r13w
xor r10d, r10d
jmp 0x1401fe5f2
or word [rcx + 8], r11w
mov qword [rcx], rdx
jmp 0x1401ff708
movsxd rax, dword [rsi + 4]
mov edx, dword [rsi + 0xc]
imul rcx, rax, 0x38
add rcx, r12
call fcn.14020b660
movsxd rdx, dword [rsi + 0x10]
movsxd rcx, eax
movsxd rax, dword [rsi + 8]
xor rdx, rcx
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, r12
test word [rcx + 8], ax
jne 0x1401feb22
mov r9, qword [rsp + 0x30]
mov r11d, 4
mov qword [rcx], rdx
xor r10d, r10d
mov word [rcx + 8], r11w
mov edx, eax
jmp 0x1401fe68f
movsxd rax, dword [rsi + 4]
imul rcx, rax, 0x38
movsxd rax, dword [rsi + 8]
imul rbx, rax, 0x38
add rcx, r12
add rbx, r12
test byte [rcx + 8], r13b
jne 0x1401ff7c5
xor edx, edx
call fcn.14020b660
xor r10d, r10d
mov edx, 0x2400
test eax, eax
mov ecx, r10d
sete cl
test word [rbx + 8], dx
je 0x1401ff7b2
mov rdx, rcx
mov rcx, rbx
jmp 0x1401feb22
mov r11d, 4
mov qword [rbx], rcx
mov word [rbx + 8], r11w
jmp 0x1401fef71
test word [rbx + 8], dx
je 0x1401ff7d8
mov rcx, rbx
call fcn.14020b810
jmp 0x1401fe762
mov word [rbx + 8], r13w
jmp case.0x1401fe597.86
movsxd rax, dword [rsi + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rsi + 8]
imul rbx, rax, 0x38
add rdi, r12
add rbx, r12
test word [rbx + 8], dx
je 0x1401ff813
mov rcx, rbx
call fcn.14020b810
xor r10d, r10d
lea r8d, [r10 + 2]
lea r11d, [r10 + 4]
jmp 0x1401ff818
mov word [rbx + 8], r13w
test byte [rdi + 8], r13b
jne 0x140202431
mov rcx, rdi
mov word [rbx + 8], r11w
call fcn.14020b708
not rax
mov qword [rbx], rax
jmp 0x1401feb83
mov r8, qword [r15 + 0x100]
test r8, r8
je 0x1401ff896
mov r9, qword [r8 + 0x30]
mov rcx, rsi
sub rcx, qword [r15 + 0x68]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov ecx, edx
and edx, 7
shr rcx, 3
movzx eax, byte [rcx + r9]
bt eax, edx
jb 0x1401ff125
bts eax, edx
mov edx, 0x2400
mov byte [rcx + r9], al
mov r9, qword [rsp + 0x30]
jmp 0x1401ff8a6
mov rcx, qword [r15 + 0x68]
mov eax, dword [rsi + 4]
cmp dword [rcx + 4], eax
je 0x1401ff12a
mov rax, qword [r15 + 0x68]
mov ecx, dword [rax + 4]
mov dword [rsi + 4], ecx
jmp 0x1401fe68f
movsxd rax, dword [rsi + 4]
mov edx, dword [rsi + 0xc]
imul rcx, rax, 0x38
add rcx, r12
call fcn.14020b660
xor r10d, r10d
test eax, eax
mov r9, qword [rsp + 0x30]
jne 0x1401ff12a
jmp 0x1401fe76a
cmp dword [rsi + 0xc], r10d
mov edx, r10d
movsxd rax, dword [rsi + 4]
sete dl
imul rcx, rax, 0x38
add rcx, r12
call fcn.14020b660
mov r9, qword [rsp + 0x30]
xor r10d, r10d
test eax, eax
je 0x1401ff12a
jmp 0x1401fe76a
movsxd rax, dword [rsi + 4]
imul rcx, rax, 0x38
test byte [rcx + r12 + 8], r13b
jmp 0x1401fe628
movsxd rax, dword [rsi + 4]
imul rcx, rax, 0x38
test byte [rcx + r12 + 8], r13b
je 0x1401ff12a
jmp case.0x1401fe597.86
movsxd rcx, dword [rsi + 4]
mov rax, qword [r15 + 0x98]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 2], r10b
je case.0x1401fe597.86
movsxd rax, dword [rsi + 0xc]
imul rcx, rax, 0x38
add rcx, r12
test word [rcx + 8], dx
je 0x1401ff96d
call fcn.14020b810
xor r10d, r10d
jmp 0x1401ff125
mov word [rcx + 8], r13w
jmp 0x1401ff12a
mov rax, qword [r15 + 0x98]
lea rdx, [rbp + 0x200]
movsxd rcx, dword [rsi + 4]
mov rcx, qword [rax + rcx*8]
mov eax, dword [rsi + 8]
mov qword [rbp - 0x30], rcx
lea rcx, [rbp - 0x30]
mov dword [rbp + 0x200], eax
call fcn.140207740
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
movsxd rax, dword [rsi + 0xc]
mov rdi, qword [rbp - 0x30]
mov rdx, qword [rsp + 0x40]
imul r12, rax, 0x38
mov rbx, qword [rdi + 0x60]
mov eax, dword [r15 + 0x30]
add r12, rdx
mov qword [rbp - 0x50], r12
mov qword [rsp + 0x58], rbx
cmp dword [rdi + 0x28], eax
je 0x1401ffadd
cmp byte [rdi + 2], r10b
je 0x1401ffa3b
cmp byte [rdi], 3
jne 0x1401ffa0c
movsxd rax, dword [rdi + 0x2c]
lea r13, [rdi + 0x74]
imul rcx, rax, 0x38
mov eax, dword [rcx + rdx + 0xc]
mov dword [r13], eax
mov dword [rdi + 0x70], eax
mov rax, qword [rcx + rdx + 0x10]
mov qword [rdi + 0x68], rax
jmp 0x1401ffa7a
mov edx, 0x2400
test word [r12 + 8], dx
je 0x1401ffa21
mov rcx, r12
jmp 0x1401fefe6
mov rdi, qword [rsp + 0x38]
mov word [r12 + 8], r13w
mov r12, qword [rsp + 0x40]
mov r9, qword [rsp + 0x30]
jmp 0x1401fe76f
mov rbx, qword [rdi + 0x38]
mov rcx, rbx
call fcn.140212e28
mov eax, dword [rbx + 0x40]
lea r13, [rdi + 0x74]
mov rdx, r13
mov dword [rdi + 0x70], eax
mov rcx, rbx
call fcn.1402128dc
mov r10, qword [rsp + 0x38]
mov qword [rdi + 0x68], rax
mov eax, dword [r10 + 0x7c]
cmp dword [rdi + 0x70], eax
ja 0x140202751
mov rbx, qword [rsp + 0x58]
xor r10d, r10d
mov eax, dword [r15 + 0x30]
mov dword [rdi + 0x28], eax
mov eax, 0x80
mov rcx, qword [rdi + 0x68]
cmp byte [rcx], al
jae 0x1401ffa9a
movzx eax, byte [rcx]
mov dword [rbx], eax
mov eax, 1
jmp 0x1401ffaa8
mov rdx, rbx
call fcn.14022482c
movzx eax, al
xor r10d, r10d
movzx eax, al
mov dword [rdi + 0x48], eax
mov word [rdi + 0x52], r10w
mov eax, dword [rbx]
cmp dword [r13], eax
jae 0x1401ffb9f
mov qword [rdi + 0x68], r10
mov dword [r13], r10d
mov eax, dword [rbx]
cmp eax, 0x18003
ja 0x1401ffc75
cmp eax, dword [rdi + 0x70]
ja 0x1401ffc75
movzx eax, word [rdi + 0x52]
movsxd rdx, dword [rbp + 0x200]
cmp eax, edx
jg 0x1401ffd3c
mov eax, dword [rbx]
cmp dword [rdi + 0x48], eax
jae 0x1401ffd17
mov r9, qword [rdi + 0x68]
mov qword [rsp + 0x60], r9
test r9, r9
jne 0x1401ffb4a
xor edx, edx
lea r8d, [r9 + 0x38]
lea rcx, [rbp + 0xc8]
call fcn.14011d670
mov r8d, dword [rbx]
lea r9, [rbp + 0xc8]
mov rcx, qword [rdi + 0x38]
xor edx, edx
call fcn.14020ad00
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
mov r9, qword [rbp + 0xd8]
mov qword [rsp + 0x60], r9
movzx edx, word [rdi + 0x52]
lea rsi, [0x140000000]
mov rax, qword [rsp + 0x58]
mov r15d, 1
mov dword [rsp + 0x7c], edx
mov ecx, dword [rbx + rdx*4]
mov ebx, dword [rdi + 0x48]
lea r12d, [r15 + 0x7f]
mov r8d, dword [rax]
add rbx, r9
add r8, r9
mov qword [rbp - 0x78], rcx
mov qword [rsp + 0x70], r8
mov r9, rax
movzx r13d, byte [rbx]
mov dword [rsp + 0x50], r13d
cmp r13d, r12d
jae 0x1401ffba5
movzx eax, byte [r13 + rsi + 0x6998a0]
add rbx, r15
jmp 0x1401ffbe5
mov r9, qword [rdi + 0x68]
jmp 0x1401ffb45
lea rdx, [rsp + 0x50]
mov rcx, rbx
call fcn.14022482c
mov r13d, dword [rsp + 0x50]
movzx eax, al
add rbx, rax
cmp r13d, r12d
jb 0x1401ffbca
lea eax, [r13 - 0xc]
shr eax, 1
jmp 0x1401ffbd3
movzx eax, byte [r13 + rsi + 0x6998a0]
mov rcx, qword [rbp - 0x78]
mov edx, dword [rsp + 0x7c]
mov r8, qword [rsp + 0x70]
mov r9, qword [rsp + 0x58]
add rcx, rax
movsxd rax, edx
add edx, r15d
mov qword [rbp - 0x78], rcx
mov dword [rsp + 0x7c], edx
mov dword [rdi + rax*4 + 0x78], r13d
movsxd rax, edx
mov dword [r9 + rax*4], ecx
cmp edx, dword [rbp + 0x200]
jg 0x1401ffc13
cmp rbx, r8
jb 0x1401ffb83
mov rsi, qword [rbp - 0x58]
mov r15, qword [rbp + 0x1f0]
mov r12, qword [rbp - 0x50]
cmp rbx, r8
jb 0x1401ffc31
ja 0x1401ffc39
mov eax, dword [rdi + 0x70]
cmp rcx, rax
jne 0x1401ffc39
mov eax, dword [rdi + 0x70]
cmp rcx, rax
jbe 0x1401ffcad
xor r10d, r10d
cmp dword [r9], r10d
jne 0x1401ffc49
mov edx, r10d
mov rbx, r8
jmp 0x1401ffcb0
cmp qword [rdi + 0x68], r10
jne 0x1401ffc75
mov edx, 0x2400
test word [rbp + 0xd0], dx
jne 0x1401ffc66
cmp dword [rbp + 0xe8], r10d
je 0x1401ffc7a
lea rcx, [rbp + 0xc8]
call fcn.14020b7cc
xor r10d, r10d
mov edx, 0x2400
mov r9, qword [rsp + 0x30]
mov eax, dword [r9 + 0xc]
test eax, eax
jle 0x140203536
mov rdi, qword [rsp + 0x38]
dec eax
mov r12, qword [rsp + 0x40]
mov r13d, 1
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea rsi, [r9 + rax*8]
jmp 0x1401fe76f
xor r10d, r10d
sub ebx, dword [rsp + 0x60]
mov word [rdi + 0x52], dx
mov dword [rdi + 0x48], ebx
cmp qword [rdi + 0x68], r10
jne 0x1401ffce7
mov eax, 0x2400
test word [rbp + 0xd0], ax
jne 0x1401ffcd8
cmp dword [rbp + 0xe8], r10d
je 0x1401ffce7
lea rcx, [rbp + 0xc8]
call fcn.14020b7cc
xor r10d, r10d
mov rbx, qword [rsp + 0x58]
mov edx, dword [rbp + 0x200]
movzx eax, word [rdi + 0x52]
cmp eax, edx
jg 0x1401ffd41
cmp byte [rsi + 1], 0xf5
jne 0x1401ffd1c
mov rdx, qword [rsi + 0x10]
mov r8d, 0x800
mov rcx, r12
call fcn.14020b13c
jmp 0x1401fef4c
mov r13d, r10d
jmp 0x1401ffcf2
mov edx, 0x2400
test word [r12 + 8], dx
je 0x1401ffd31
mov rcx, r12
jmp 0x1401fef47
mov r13d, 1
jmp 0x1401ffa21
mov r13d, dword [rdi + rdx*4 + 0x78]
mov eax, 0x2400
test word [r12 + 8], ax
je 0x1401ffd5c
mov rcx, r12
call fcn.14020b810
mov edx, dword [rbp + 0x200]
lea eax, [rdx + 1]
movsxd rcx, eax
mov eax, dword [rbx + rcx*4]
cmp dword [rdi + 0x74], eax
jb 0x1401ffe55
movsxd rax, edx
mov ecx, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
mov eax, dword [rbx + rax*4]
add rax, qword [rdi + 0x68]
mov qword [rbp + 0x200], rax
cmp r13d, ecx
jae 0x1401ffd9c
mov rcx, rax
mov edx, r13d
mov r8, r12
call fcn.1402073b0
jmp 0x1401fef4c
mov al, byte [rbp + 0x1f8]
lea edi, [r13 - 0xc]
shr edi, 1
mov dword [r12 + 0xc], edi
mov byte [r12 + 0xa], al
lea edx, [rdi + 2]
cmp dword [r12 + 0x20], edx
jge 0x1401ffddc
mov eax, 1
xor r8d, r8d
mov rcx, r12
mov word [r12 + 8], ax
call fcn.14020bbd4
test eax, eax
jne 0x1401feaa2
jmp 0x1401ffde6
mov rax, qword [r12 + 0x18]
mov qword [r12 + 0x10], rax
mov rdx, qword [rbp + 0x200]
mov rcx, qword [r12 + 0x10]
mov r8d, edi
call fcn.14011c9b0
mov rax, qword [r12 + 0x10]
xor r10d, r10d
mov r9, qword [rsp + 0x30]
mov edx, 0x2400
mov byte [rdi + rax], r10b
lea r8d, [r10 + 2]
lea eax, [rdi + 1]
mov rdi, qword [rsp + 0x38]
movsxd rcx, eax
lea r11d, [r10 + 4]
mov rax, qword [r12 + 0x10]
mov byte [rcx + rax], r10b
mov eax, r13d
lea r13d, [r10 + 1]
and rax, r13
lea rcx, [0x140000000]
movzx eax, word [rcx + rax*2 + 0x695dd4]
mov word [r12 + 8], ax
mov r12, qword [rsp + 0x40]
jmp case.default.0x1401fe597
mov al, byte [rbp + 0x1f8]
mov byte [r12 + 0xa], al
test byte [rsi + 2], 0xc0
je 0x1401ffe82
mov eax, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
cmp r13d, eax
jb 0x1401ffe76
test r13b, 1
je 0x1401ffead
mov eax, 0x80
test byte [rsi + 2], al
jne 0x1401ffead
jmp 0x1401ffe87
mov eax, 0x80
cmp r13d, eax
jb 0x1401ffe95
lea r8d, [r13 - 0xc]
shr r8d, 1
jmp 0x1401ffea8
mov eax, r13d
lea rcx, [0x140000000]
movzx r8d, byte [rax + rcx + 0x6998a0]
test r8d, r8d
jne 0x1401ffeb9
lea rcx, [0x1406f8058]
jmp 0x1401ffd8c
mov rcx, qword [rdi + 0x38]
mov r9, r12
movsxd rax, edx
mov edx, dword [rbx + rax*4]
call fcn.14020ad00
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
mov rcx, qword [r12 + 0x10]
mov r8, r12
mov edx, r13d
call fcn.1402073b0
mov r8d, 0xefff
and word [r12 + 8], r8w
jmp 0x1401fef4c
movsxd rax, dword [rsi + 4]
mov rdi, qword [rsi + 0x10]
mov r15b, byte [rbp + 0x1f8]
imul rbx, rax, 0x38
mov al, byte [rdi]
add rbx, r12
mov r8b, r15b
mov dl, al
mov rcx, rbx
call fcn.140203d1c
add rdi, r13
add rbx, 0x38
xor r10d, r10d
mov al, byte [rdi]
test al, al
jne 0x1401fff12
mov r15, qword [rbp + 0x1f0]
mov rdi, qword [rsp + 0x38]
jmp 0x1401fe95e
movsxd rax, dword [rsi + 4]
mov rbx, qword [rsi + 0x10]
movzx edx, byte [r15 + 0xbf]
imul r11, rax, 0x38
mov eax, dword [rsi + 8]
add r11, r12
mov qword [rsp + 0x58], r10
mov dword [rbp + 0x200], r10d
mov qword [rsp + 0x60], r10
mov r10d, 1
sub eax, r10d
mov qword [rbp - 0x80], r11
cdqe
imul r12, rax, 0x38
movsxd rax, dword [rsi + 0xc]
imul rcx, rax, 0x38
add r12, r11
mov dword [rsp + 0x50], edx
add rcx, qword [rsp + 0x40]
xor eax, eax
mov qword [rbp - 0x30], r12
mov qword [rbp - 0x78], rcx
test rbx, rbx
je 0x1401fffde
mov al, byte [rbx]
mov rdi, r11
mov r15b, byte [rbp + 0x1f8]
mov r8b, r15b
mov dl, al
mov rcx, rdi
call fcn.140203d1c
mov r10d, 1
add rdi, 0x38
add rbx, r10
mov al, byte [rbx]
test al, al
jne 0x1401fffad
mov r15, qword [rbp + 0x1f0]
xor eax, eax
mov edx, dword [rsp + 0x50]
mov r12, qword [rbp - 0x30]
mov r13, r12
movzx edi, word [r13 + 8]
test r10b, dil
je 0x1401ffff2
mov ebx, eax
mov dword [rbp - 0x64], eax
jmp 0x140200004
mov r9d, edi
lea r8, [rbp - 0x64]
mov rcx, r13
call fcn.140207670
mov ebx, dword [rbp - 0x64]
mov r12d, eax
mov eax, 0x4000
test ax, di
je 0x14020001c
test r12d, r12d
jne 0x14020003c
mov r12d, 0xa
mov r9, qword [rsp + 0x60]
mov eax, ebx
mov r10d, 1
add qword [rsp + 0x58], rax
mov ecx, r10d
cmp r12d, 0x7f
jbe 0x14020007e
mov eax, r12d
jmp 0x140200075
mov rax, qword [rsp + 0x58]
test rax, rax
je 0x140200058
mov rcx, r13
call fcn.14020baa8
test eax, eax
jne 0x1401feaa2
jmp 0x14020001c
mov r9, qword [rsp + 0x60]
movsxd rax, dword [r13]
add r9, rax
sub ebx, dword [r13]
mov dword [rbp - 0x64], ebx
mov qword [rsp + 0x60], r9
jmp 0x140200021
add ecx, r10d
shr rax, 7
test rax, rax
jne 0x140200072
mov r8d, dword [rbp + 0x200]
mov r11, qword [rbp - 0x80]
add r8d, ecx
mov dword [rbp + 0x200], r8d
mov dword [r13 + 0x24], r12d
cmp r13, r11
je 0x1402000ab
mov edx, dword [rsp + 0x50]
sub r13, 0x38
xor eax, eax
jmp 0x1401fffe1
mov r13d, 1
cmp r8d, 0x7e
jle 0x1402000ed
mov edx, r13d
movsxd rax, r8d
jmp 0x1402000c2
add edx, r13d
shr rax, 7
test rax, rax
jne 0x1402000bf
add r8d, edx
mov ecx, r13d
mov dword [rbp + 0x200], r8d
movsxd rax, r8d
jmp 0x1402000e0
add ecx, r13d
shr rax, 7
test rax, rax
jne 0x1402000dd
cmp edx, ecx
jge 0x1402000f7
add r8d, r13d
mov dword [rbp + 0x200], r8d
mov r12, qword [rsp + 0x58]
movsxd rbx, r8d
add r12, rbx
mov qword [rsp + 0x70], r12
lea rcx, [r12 + r9]
mov r9, qword [rbp - 0x78]
movsxd rax, dword [r9 + 0x20]
cmp rcx, rax
jg 0x140200122
mov rax, qword [r9 + 0x18]
mov qword [r9 + 0x10], rax
jmp 0x140200175
mov rdi, qword [rsp + 0x38]
movsxd rax, dword [rdi + 0x7c]
cmp rcx, rax
jg 0x140202751
cmp dword [r9 + 0x20], r12d
jge 0x140200159
xor r8d, r8d
mov edx, r12d
mov rcx, r9
call fcn.14020bbd4
mov r8d, dword [rbp + 0x200]
mov r9, qword [rbp - 0x78]
mov r11, qword [rbp - 0x80]
jmp 0x14020016d
mov rax, qword [r9 + 0x18]
mov qword [r9 + 0x10], rax
mov eax, reloc.WS2_32.dll_listen
and word [r9 + 8], ax
xor eax, eax
test eax, eax
jne 0x1401feaa7
mov rdi, qword [r9 + 0x10]
mov esi, 0x80
cmp r8d, esi
jae 0x14020018b
mov byte [rdi], r8b
mov eax, r13d
jmp 0x1402001c9
cmp rbx, 0x7f
ja 0x140200198
and bl, 0x7f
mov byte [rdi], bl
jmp 0x140200186
cmp rbx, 0x3fff
ja 0x1402001be
mov rax, rbx
mov r12d, 2
shr rax, 7
or al, sil
and bl, 0x7f
mov byte [rdi], al
mov byte [rdi + 1], bl
mov eax, r12d
jmp 0x1402001cf
mov rdx, rbx
mov rcx, rdi
call fcn.140224a94
mov r12d, 2
mov r13d, dword [rbp + 0x200]
mov r15d, 1
movzx ebx, al
mov r11d, dword [r11 + 0x24]
cmp r11d, esi
jae 0x1402001f1
movsxd rax, ebx
mov byte [rax + rdi], r11b
jmp 0x140200205
movsxd rcx, ebx
mov rdx, r11
add rcx, rdi
cmp r11, 0x7f
ja 0x14020020a
and dl, 0x7f
mov byte [rcx], dl
mov eax, r15d
jmp 0x14020022f
cmp rdx, 0x3fff
ja 0x14020022a
mov rax, rdx
shr rax, 7
or al, sil
and dl, 0x7f
mov byte [rcx], al
mov byte [rcx + 1], dl
mov eax, r12d
jmp 0x14020022f
call fcn.140224a94
mov rdx, qword [rbp - 0x80]
mov r8d, r11d
movzx eax, al
movsxd rcx, r13d
add ebx, eax
add rcx, rdi
call fcn.1402075d8
mov r11, qword [rbp - 0x80]
add r13d, eax
add r11, 0x38
mov qword [rbp - 0x80], r11
cmp r11, qword [rbp - 0x30]
jbe 0x1402001df
mov rcx, qword [rbp - 0x78]
xor r10d, r10d
mov r12, qword [rsp + 0x70]
mov eax, reloc.WS2_32.dll_recv
mov rsi, qword [rbp - 0x58]
mov r15, qword [rbp + 0x1f0]
mov rdi, qword [rsp + 0x38]
lea r13d, [r10 + 1]
mov word [rcx + 8], ax
lea r8d, [r10 + 2]
mov rax, qword [rsp + 0x60]
lea r11d, [r10 + 4]
mov dword [rcx + 0xc], r12d
mov r12, qword [rsp + 0x40]
test rax, rax
je 0x1401fe8d5
mov dword [rcx], eax
mov eax, 0x4010
mov word [rcx + 8], ax
jmp 0x1401fe8d5
movsxd rcx, dword [rsi + 4]
lea rdx, [rbp - 0x50]
mov rax, qword [r15 + 0x98]
mov qword [rbp - 0x50], r10
mov rcx, qword [rax + rcx*8]
mov rcx, qword [rcx + 0x38]
call fcn.14020db30
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
mov rdx, rsi
mov rcx, r15
call fcn.140203bdc
mov rcx, qword [rbp - 0x50]
mov qword [rax], rcx
jmp 0x1401fe762
mov ebx, dword [rsi + 4]
mov r12, qword [rsi + 0x10]
mov dword [rsp + 0x48], ebx
test ebx, ebx
jne 0x1402003da
cmp dword [rdi + 0xc4], r10d
jg 0x140203557
test r12, r12
jne 0x140200322
mov ebx, r10d
jmp 0x140200335
or rbx, 0xffffffffffffffff
inc rbx
cmp byte [r12 + rbx], r10b
jne 0x140200326
and ebx, 0x3fffffff
mov r8d, dword [rdi + 0x290]
xor edx, edx
add r8d, dword [rdi + 0x28c]
mov rcx, rdi
call fcn.1401cadb0
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
mov edx, ebx
mov rcx, rdi
add rdx, 0x21
call fcn.140227e28
xor r10d, r10d
mov rdi, rax
test rax, rax
je 0x1402032a7
lea rcx, [rax + 0x20]
mov rdx, r12
lea r8d, [rbx + 1]
mov qword [rax], rcx
call fcn.14011c9b0
mov rcx, qword [rsp + 0x38]
xor r10d, r10d
cmp byte [rcx + 0x5f], r10b
je 0x1402003a3
mov byte [rcx + 0x5f], r10b
mov byte [rcx + 0x67], r13b
jmp 0x1402003aa
add dword [rcx + 0x28c], r13d
mov rax, qword [rcx + 0x280]
mov qword [rdi + 0x18], rax
mov rax, qword [rcx + 0x298]
mov qword [rcx + 0x280], rdi
mov qword [rdi + 8], rax
mov rax, qword [rcx + 0x2a0]
mov qword [rdi + 0x10], rax
mov rdi, rcx
jmp 0x1401fe959
mov edi, r10d
mov r10, qword [rsp + 0x38]
mov r13, qword [r10 + 0x280]
test r13, r13
je 0x1402035ae
mov rcx, qword [r13]
mov rdx, r12
call fcn.140225414
xor r10d, r10d
test eax, eax
je 0x140200410
mov r13, qword [r13 + 0x18]
inc edi
test r13, r13
jne 0x1402003f2
test r13, r13
je 0x1402035ae
mov r9, qword [rsp + 0x38]
mov ecx, 1
cmp dword [r9 + 0xc4], r10d
jle 0x140200434
cmp ebx, ecx
je 0x14020356e
cmp qword [r13 + 0x18], r10
jne 0x140200494
cmp byte [r9 + 0x67], r10b
je 0x140200494
mov dword [rsp + 0x68], ecx
mov r12d, ecx
cmp ebx, ecx
jne 0x140200499
mov edx, ecx
mov rcx, r15
call fcn.140207f18
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff290
mov r14, qword [rsp + 0x38]
mov rcx, r15
mov byte [r14 + 0x5f], 1
call fcn.140207c18
mov ecx, 5
cmp eax, ecx
je 0x140203577
xor eax, eax
mov r9, r14
mov byte [r14 + 0x67], al
mov r14d, dword [r15 + 0x38]
jmp 0x1402005c5
mov dword [rsp + 0x68], r10d
mov eax, dword [r9 + 0x28c]
mov r12d, r10d
sub eax, edi
sub eax, ecx
mov dword [rbp + 0x200], eax
cmp ebx, 2
jne 0x140200512
mov eax, dword [r9 + 0x2c]
and eax, ecx
mov dword [rsp + 0x50], eax
cmp dword [r9 + 0x28], r10d
jle 0x140200509
mov edi, eax
mov rbx, r10
xor edi, ecx
mov rcx, qword [r9 + 0x20]
mov r8d, edi
mov edx, 0x204
mov rcx, qword [rbx + rcx + 8]
call fcn.1402132ec
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
mov r9, qword [rsp + 0x38]
lea ecx, [rax + 1]
add r12d, ecx
add rbx, 0x20
cmp r12d, dword [r9 + 0x28]
jl 0x1402004c9
mov r12d, dword [rsp + 0x50]
jmp 0x14020050c
mov r12d, eax
mov eax, dword [rbp + 0x200]
mov edi, r10d
cmp dword [r9 + 0x28], r10d
jle 0x14020055b
mov rbx, r10
mov rcx, qword [r9 + 0x20]
mov r8d, eax
mov edx, dword [rsp + 0x48]
mov rcx, qword [rbx + rcx + 8]
call fcn.14021309c
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
mov r9, qword [rsp + 0x38]
lea ecx, [rax + 1]
mov eax, dword [rbp + 0x200]
add edi, ecx
add rbx, 0x20
cmp edi, dword [r9 + 0x28]
jl 0x14020051e
test r12d, r12d
je 0x14020058e
mov rax, qword [r9 + 8]
jmp 0x140200577
and dword [rax + 0xc4], 0xfffffffd
or dword [rax + 0xc4], ecx
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140200566
mov rcx, r9
call fcn.1401ed034
mov r9, qword [rsp + 0x38]
or dword [r9 + 0x2c], 1
mov r12d, dword [rsp + 0x68]
mov edi, dword [rbp + 0x200]
mov ebx, dword [rsp + 0x48]
jmp 0x1402005c5
mov rdx, qword [r9 + 0x280]
mov rcx, r9
mov rax, qword [rdx + 0x18]
mov qword [r9 + 0x280], rax
call fcn.140228168
mov r9, qword [rsp + 0x38]
dec dword [r9 + 0x28c]
cmp qword [r9 + 0x280], r13
jne 0x14020059f
cmp ebx, 1
jne 0x1402005ff
mov rax, qword [r13 + 0x18]
mov rdx, r13
mov rcx, r9
mov qword [r9 + 0x280], rax
call fcn.140228168
xor r10d, r10d
test r12d, r12d
jne 0x140200641
mov r9, qword [rsp + 0x38]
dec dword [r9 + 0x28c]
jmp 0x140200626
mov rax, qword [r13 + 8]
xor r10d, r10d
mov qword [r9 + 0x298], rax
mov rax, qword [r13 + 0x10]
mov qword [r9 + 0x2a0], rax
test r12d, r12d
je 0x140200626
lea r8d, [r10 + 2]
cmp ebx, r8d
jne 0x140200647
mov r8d, edi
mov edx, ebx
mov rcx, r9
call fcn.1401cadb0
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
mov r8d, 2
test r14d, r14d
jne 0x1401ff1c7
mov r13d, 1
mov r12, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x38]
mov r9, qword [rsp + 0x30]
mov edx, 0x2400
jmp 0x1401fe775
mov edx, dword [rsi + 8]
mov ebx, r10d
mov dword [rsp + 0x68], ebx
test edx, edx
je 0x14020068b
mov eax, dword [rdi + 0x30]
bt rax, 0x14
jb 0x1402035c8
movsxd rcx, dword [rsi + 4]
mov rax, qword [rdi + 0x20]
shl rcx, 5
mov rdi, qword [rcx + rax + 8]
test rdi, rdi
je 0x140200750
lea r8, [rsp + 0x68]
mov rcx, rdi
call fcn.140213e8c
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1402035d3
cmp dword [rsi + 8], r10d
je 0x14020074c
mov eax, 0x80
test byte [r15 + 0xc4], al
je 0x14020074c
mov rbx, qword [rsp + 0x38]
cmp byte [rbx + 0x5f], r10b
je 0x1402006ec
cmp dword [rbx + 0xc0], r13d
jle 0x14020074c
cmp dword [r15 + 0x40], r10d
jne 0x140200709
add dword [rbx + 0x290], r13d
mov edx, dword [rbx + 0x290]
add edx, dword [rbx + 0x28c]
mov dword [r15 + 0x40], edx
mov r8d, dword [r15 + 0x40]
xor edx, edx
sub r8d, r13d
mov rcx, rbx
call fcn.1401cadb0
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x140200736
mov edx, dword [r15 + 0x40]
mov rcx, rdi
call fcn.140213178
mov r14d, eax
xor r10d, r10d
mov rax, qword [rbx + 0x298]
mov qword [r15 + 0x58], rax
mov rax, qword [rbx + 0x2a0]
mov qword [r15 + 0x60], rax
mov ebx, dword [rsp + 0x68]
cmp word [rsi + 2], r10w
je 0x1402007e0
mov rdi, qword [rsp + 0x38]
cmp ebx, dword [rsi + 0xc]
jne 0x14020077e
mov rax, qword [rdi + 0x20]
movsxd rcx, dword [rsi + 4]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rsi + 0x10]
cmp dword [rcx + 4], eax
je 0x1402007e0
mov rdx, qword [r15 + 0x90]
test rdx, rdx
je 0x140200792
mov rcx, rdi
call fcn.140228168
lea rdx, [0x1406ea9a8]
mov rcx, rdi
call fcn.140227c94
mov qword [r15 + 0x90], rax
movsxd rdx, dword [rsi + 4]
mov rax, qword [rdi + 0x20]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
cmp dword [rcx], ebx
je 0x1402007c8
mov rcx, rdi
call fcn.1401ed0c4
and dword [r15 + 0xc4], 0xfffffffd
mov r14d, reloc.WS2_32.dll_recvfrom
or dword [r15 + 0xc4], r13d
xor r10d, r10d
test r14d, r14d
jne 0x1401ff1c7
jmp 0x1401fff36
movsxd rax, dword [rsi + 4]
lea r8, [rbp - 0xc]
mov rcx, qword [rdi + 0x20]
mov edx, dword [rsi + 0xc]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14020dcb8
mov rdx, rsi
mov rcx, r15
call fcn.140203bdc
movsxd rcx, dword [rbp - 0xc]
jmp 0x1402002f0
movsxd rbx, dword [rsi + 4]
mov r8d, dword [rsi + 0xc]
mov edx, dword [rsi + 8]
shl rbx, 5
add rbx, qword [rdi + 0x20]
mov rcx, qword [rbx + 8]
call fcn.14020dc14
mov r14d, eax
mov r8d, 2
cmp dword [rsi + 8], r13d
jne 0x140200859
mov rcx, qword [rbx + 0x18]
mov eax, dword [rsi + 0xc]
mov dword [rcx], eax
or dword [rdi + 0x2c], r13d
jmp 0x140200869
cmp dword [rsi + 8], r8d
jne 0x140200869
mov rcx, qword [rbx + 0x18]
mov al, byte [rsi + 0xc]
mov byte [rcx + 0x70], al
xor r10d, r10d
cmp dword [rsi + 4], r13d
jne 0x140200897
mov rax, qword [rdi + 8]
jmp 0x14020088a
and dword [rax + 0xc4], 0xfffffffd
or dword [rax + 0xc4], r13d
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140200878
and dword [r15 + 0xc4], 0xfffffffc
test r14d, r14d
jne 0x1401ff1c7
jmp 0x140200660
movsxd rcx, dword [rsi + 4]
mov rax, qword [r15 + 0x98]
mov rdi, qword [rax + rcx*8]
test rdi, rdi
je case.0x1401fe597.109
mov eax, dword [rsi + 8]
cmp dword [rdi + 0x4c], eax
je 0x1402009f6
mov eax, dword [r15 + 0xc4]
and al, 3
cmp al, r13b
je 0x14020360e
movsxd rdx, dword [rsi + 0xc]
mov edi, r10d
movsxd r13, dword [rsi + 8]
mov r12, r10
mov r10, qword [rsp + 0x38]
mov rax, rdx
shl rax, 5
mov dword [rbp + 0x200], edx
add rax, qword [r10 + 0x20]
mov rcx, qword [rax + 8]
mov qword [rsp + 0x70], rcx
cmp bl, 0x6e
jne 0x140200932
mov rax, qword [rax + 0x18]
mov ecx, 8
movzx r14d, word [rsi + 2]
and r14d, ecx
or r14d, r11d
mov cl, byte [rax + 0x70]
cmp cl, byte [r15 + 0xbf]
jae 0x140200937
mov byte [r15 + 0xbf], cl
jmp 0x140200937
xor eax, eax
mov r14d, eax
mov eax, reloc.WS2_32.dll_recv
test byte [rsi + 2], al
je 0x14020095e
imul rbx, r13, 0x38
mov rax, r13
add rbx, qword [rsp + 0x40]
mov rcx, rbx
call fcn.14020b5e0
mov edx, dword [rbp + 0x200]
mov r13d, dword [rbx]
mov al, byte [rsi + 1]
cmp al, 0xf7
jne 0x140200971
mov r12, qword [rsi + 0x10]
movzx edi, word [r12 + 8]
jmp 0x140200978
cmp al, 0xfd
jne 0x140200978
mov edi, dword [rsi + 0x10]
mov r9d, edx
xor ebx, ebx
mov edx, dword [rsi + 4]
mov r8d, edi
mov rcx, r15
mov byte [rsp + 0x20], bl
call fcn.140203e1c
mov rdi, rax
test rax, rax
je 0x1401feaa2
mov r8, qword [rax + 0x38]
lea r11d, [rbx + 4]
mov rcx, qword [rsp + 0x70]
mov r9, r12
or dword [rax + 8], r11d
mov edx, r13d
mov qword [rsp + 0x20], r8
mov r8d, r14d
mov byte [rax + 2], 1
mov dword [rax + 0x4c], r13d
call fcn.140212f2c
mov r9, qword [rsp + 0x30]
lea r13d, [rbx + 1]
mov qword [rdi + 0x40], r12
lea r8d, [rbx + 2]
cmp byte [rsi + 1], 0xf7
lea r11d, [rbx + 4]
mov r12, qword [rsp + 0x40]
mov r14d, eax
setne al
mov edx, 0x2400
mov byte [rdi + 4], al
xor r10d, r10d
mov cl, byte [rsi + 2]
mov rax, qword [rdi + 0x38]
and cl, 3
mov byte [rax + 3], cl
test r14d, r14d
jne 0x1401ff1c7
jmp 0x1401feb98
movsxd rcx, dword [rsi + 8]
or r9d, 0xffffffff
mov rax, qword [r15 + 0x98]
mov edx, dword [rsi + 4]
mov byte [rsp + 0x20], r10b
mov rbx, qword [rax + rcx*8]
mov rcx, r15
movsx r8d, word [rbx + 0x50]
call fcn.140203e1c
test rax, rax
je 0x1401feaa7
or dword [rax + 8], r13d
mov r8d, 4
mov byte [rax + 2], r13b
mov r9, qword [rbx + 0x40]
mov qword [rax + 0x40], r9
mov dl, byte [rbx + 4]
mov byte [rax + 4], dl
mov edx, r13d
mov rax, qword [rax + 0x38]
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
call fcn.140212f2c
mov r14d, eax
jmp 0x1401fe762
mov r8d, dword [rsi + 8]
or r9d, 0xffffffff
mov edx, dword [rsi + 4]
mov rcx, r15
mov byte [rsp + 0x20], r10b
call fcn.140203e1c
mov rbx, rax
test rax, rax
je 0x1401feaa7
or dword [rax + 8], r13d
lea rdi, [rax + 0x10]
mov byte [rax + 2], r13b
mov r9, rdi
movzx ecx, word [rsi + 2]
xor edx, edx
mov rax, qword [rsp + 0x38]
or ecx, 5
mov dword [rsp + 0x28], 0x41e
mov r8, rax
mov dword [rsp + 0x20], ecx
mov rcx, qword [rax]
call fcn.140214c24
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
mov rcx, qword [rdi]
xor r8d, r8d
mov edx, r13d
call fcn.140213e8c
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
mov r12, qword [rsi + 0x10]
mov rcx, qword [rdi]
mov qword [rbx + 0x40], r12
test r12, r12
je 0x140200b50
movzx r8d, word [rsi + 2]
lea rdx, [rbp - 0x10]
or r8d, 2
call fcn.14020e240
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x140200b4a
mov rax, qword [rbx + 0x38]
lea r8d, [r14 + 4]
mov edx, dword [rbp - 0x10]
mov r9, r12
mov rcx, qword [rdi]
mov qword [rsp + 0x20], rax
call fcn.140212f2c
mov r14d, eax
xor r10d, r10d
mov byte [rbx + 4], r10b
jmp 0x140200b72
mov rax, qword [rbx + 0x38]
xor r9d, r9d
mov edx, r13d
mov qword [rsp + 0x20], rax
lea r8d, [r9 + 4]
call fcn.140212f2c
mov r14d, eax
mov byte [rbx + 4], r13b
xor r10d, r10d
test r14d, r14d
jne 0x1401ff1c7
movzx eax, word [rsi + 2]
lea r11d, [r14 + 4]
sub ax, 8
neg ax
mov eax, dword [rbx + 8]
sbb ecx, ecx
and eax, 0xfffffffb
and ecx, r11d
or ecx, eax
mov dword [rbx + 8], ecx
jmp 0x1401fee3e
mov r8d, dword [rsi + 8]
or r9d, 0xffffffff
mov edx, dword [rsi + 4]
mov rcx, r15
mov byte [rsp + 0x20], r13b
call fcn.140203e1c
test rax, rax
je 0x1401feaa7
mov rcx, qword [rsi + 0x10]
mov r8, rax
mov qword [rax + 0x40], rcx
mov rcx, rdi
mov edx, dword [rsi + 0xc]
call fcn.1401fd13c
xor r10d, r10d
mov r14d, eax
test eax, eax
jmp 0x1401ff1c1
movsxd rcx, dword [rsi + 4]
mov rax, qword [r15 + 0x98]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rdx + 0x18]
lea rax, [rcx + 1]
mov qword [rdx + 0x18], rax
test rcx, rcx
je 0x1401ff12a
jmp 0x1401fe5f2
mov r8d, dword [rsi + 0xc]
or r9d, 0xffffffff
mov edx, dword [rsi + 4]
mov rcx, r15
mov byte [rsp + 0x20], 3
call fcn.140203e1c
xor r10d, r10d
test rax, rax
je 0x1401feaa7
mov byte [rax + 2], r13b
mov ecx, dword [rsi + 8]
mov dword [rax + 0x2c], ecx
lea rcx, [0x1406f7dfb]
mov qword [rax + 0x38], rcx
mov byte [rax + 4], r13b
jmp 0x1401fe95e
movsxd rax, dword [rsi + 4]
mov rcx, r15
mov rdx, qword [r15 + 0x98]
mov rdx, qword [rdx + rax*8]
call fcn.1402087f0
movsxd rcx, dword [rsi + 4]
xor r10d, r10d
mov rax, qword [r15 + 0x98]
mov qword [rax + rcx*8], r10
jmp 0x1401fe95e
movsxd rcx, dword [rsi + 4]
mov rax, qword [r15 + 0x98]
mov dword [rbp + 0x200], r10d
mov r13, qword [rax + rcx*8]
mov byte [r13 + 2], r10b
cmp byte [r13 + 4], r10b
je 0x140200d79
movsxd rax, dword [rsi + 0xc]
imul rdi, rax, 0x38
add rdi, r12
mov al, byte [rdi + 8]
and al, 0xe
cmp al, r8b
jne 0x140200cbf
xor edx, edx
mov rcx, rdi
call fcn.140203d88
mov rcx, rdi
call fcn.14020b708
mov r11d, 4
mov r12, rax
test byte [rdi + 8], r11b
jne 0x140200d13
lea eax, [r11 + 4]
test byte [rdi + 8], al
je 0x140202cfa
movsd xmm1, qword [rdi]
xorps xmm0, xmm0
cvtsi2sd xmm0, r12
comisd xmm0, xmm1
jbe 0x140200d02
test bl, 1
lea eax, [rbx - 1]
cmove eax, ebx
mov ebx, eax
jmp 0x140200d13
comisd xmm1, xmm0
jbe 0x140200d13
mov eax, 1
test al, bl
jne 0x140200d13
add ebx, eax
mov rcx, qword [r13 + 0x38]
lea rax, [rsp + 0x4c]
xor r9d, r9d
mov qword [rsp + 0x20], rax
mov r8, r12
xor edx, edx
call fcn.1402120dc
xor r10d, r10d
mov qword [r13 + 0x58], r12
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
mov r12d, dword [rbp + 0x200]
mov eax, dword [rsp + 0x4c]
mov byte [r13 + 3], r10b
mov dword [r13 + 0x28], r10d
cmp ebx, 0x18
jl 0x140200e44
test eax, eax
js 0x140200e10
jne 0x140200d6f
cmp ebx, 0x19
je 0x140200e10
mov dword [rsp + 0x4c], r10d
jmp 0x140200e9d
mov rax, qword [r13 + 0x38]
mov edx, 1
mov r12d, r10d
mov dil, byte [rax + 3]
mov rax, qword [r13 + 0x40]
and dil, r8b
mov qword [rbp + 0x10], rax
movzx eax, word [rsi + 0x10]
setne r12b
mov word [rbp + 0x20], ax
mov eax, ebx
and al, dl
mov byte [rbp + 0x26], r10b
neg al
movsxd rax, dword [rsi + 0xc]
sbb cl, cl
xor r9d, r9d
and cl, 0xfe
xor r8d, r8d
add cl, dl
lea rdx, [rbp + 0x10]
mov byte [rbp + 0x22], cl
imul rcx, rax, 0x38
lea rax, [rsp + 0x4c]
add rcx, qword [rsp + 0x40]
mov qword [rbp + 0x18], rcx
mov rcx, qword [r13 + 0x38]
mov qword [rsp + 0x20], rax
call fcn.1402120dc
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
test dil, dil
je 0x140200d47
cmp byte [rbp + 0x26], r10b
jne 0x140200d47
mov ecx, dword [rsp + 0x4c]
lea r13d, [rax + 1]
jmp 0x140200e95
mov rcx, qword [r13 + 0x38]
xor edx, edx
mov dword [rsp + 0x4c], r10d
call fcn.140211f2c
xor r10d, r10d
mov r14d, eax
test eax, eax
je 0x140200e9d
cmp eax, 0x65
jne 0x1401ff1c7
lea r13d, [rax - 0x64]
mov r14d, r10d
mov dword [rsp + 0x4c], r13d
jmp 0x1401ff125
test eax, eax
jg 0x140200e64
jne 0x140200e4f
cmp ebx, 0x16
je 0x140200e64
mov rax, qword [r13 + 0x38]
mov ecx, r10d
mov r13d, 1
cmp byte [rax], r10b
setne cl
jmp 0x140200e91
mov rcx, qword [r13 + 0x38]
xor edx, edx
mov dword [rsp + 0x4c], r10d
call fcn.140211e04
xor r10d, r10d
mov r14d, eax
test eax, eax
je 0x140200e9d
cmp eax, 0x65
jne 0x1401ff1c7
lea r13d, [rax - 0x64]
mov r14d, r10d
mov ecx, r13d
mov dword [rsp + 0x4c], ecx
test ecx, ecx
jne 0x1401ff125
lea rax, [rsi + 0x18]
test r12d, r12d
cmove rax, rsi
mov rsi, rax
jmp 0x1401fecd0
mov rax, qword [r15 + 0x98]
movsxd rcx, dword [rsi + 4]
mov rdx, qword [rax + rcx*8]
mov eax, dword [rsi + 8]
shl eax, 3
xor eax, dword [rdx + 8]
and eax, 8
xor dword [rdx + 8], eax
jmp 0x1401fe5f2
mov rax, qword [r15 + 0x98]
movsxd rcx, dword [rsi + 4]
mov rcx, qword [rax + rcx*8]
mov eax, 8
test byte [rcx + 8], al
jne case.0x1401fe597.86
mov rax, qword [r15 + 0x98]
movsxd rcx, dword [rsi + 4]
mov r13, qword [rax + rcx*8]
movsxd rax, dword [rsi + 0xc]
imul rdi, rax, 0x38
add rdi, r12
cmp dword [rsi + 0x10], r10d
jle 0x140200f39
mov rax, qword [r13 + 0x40]
lea rbx, [rbp + 0xb0]
mov qword [rbp + 0xb0], rax
mov r12, r10
movzx eax, word [rsi + 0x10]
mov word [rbp + 0xc0], ax
mov qword [rbp + 0xb8], rdi
jmp 0x140200f87
mov eax, 0x4000
test word [rdi + 8], ax
je 0x140200f4e
mov rcx, rdi
call fcn.14020baa8
jmp 0x140200f51
mov eax, r10d
test eax, eax
jne 0x1401feaa2
mov rcx, qword [r13 + 0x40]
call fcn.140207354
mov rbx, rax
mov r12, rax
test rax, rax
je 0x1401feaa2
mov r8, qword [rdi + 0x10]
mov r9, rax
mov edx, dword [rdi + 0xc]
mov rcx, qword [r13 + 0x40]
call fcn.140207248
xor r10d, r10d
mov byte [rbx + 0x12], r10b
mov edi, r10d
cmp byte [rsi], 0x1b
jne 0x140200fc1
movzx edx, word [rbx + 0x10]
mov ecx, r10d
test edx, edx
je 0x140200fc1
mov rax, qword [rbx + 8]
mov r8d, 1
add rax, 8
test byte [rax], r8b
jne 0x140200fbe
add ecx, r8d
add rax, 0x38
cmp ecx, edx
jl 0x140200fac
jmp 0x140200fc1
mov edi, r8d
mov rcx, qword [r13 + 0x38]
lea rax, [rbp - 8]
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, rbx
call fcn.1402120dc
xor r10d, r10d
mov r14d, eax
test r12, r12
je 0x140200ff7
mov rcx, qword [rsp + 0x38]
mov rdx, r12
call fcn.140228168
xor r10d, r10d
test r14d, r14d
jne 0x1401ff1c7
mov eax, dword [rbp - 8]
mov ecx, r10d
mov r9, qword [rsp + 0x30]
test eax, eax
mov dword [r13 + 0x2c], eax
lea eax, [r14 + 1]
sete cl
mov byte [r13 + 3], r10b
sub al, cl
mov dword [r13 + 0x28], r10d
mov byte [r13 + 2], al
lea r13d, [r14 + 1]
cmp byte [rsi], 0x1d
jne 0x140201046
test ecx, ecx
jne 0x1401ff12a
mov rdi, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
jmp 0x1401fe76a
test edi, edi
jne 0x1401ff12a
test ecx, ecx
je 0x1401ff12a
jmp 0x140201037
movsxd rax, dword [rsi + 0xc]
imul rbx, rax, 0x38
add rbx, r12
movzx edi, word [rbx + 8]
test r11b, dil
jne case.0x1401fe597.31
mov r8b, byte [rbp + 0x1f8]
mov dl, 0x43
mov rcx, rbx
call fcn.140203d1c
movzx eax, word [rbx + 8]
shr eax, 2
not eax
mov word [rbx + 8], di
and eax, r13d
jne 0x1401ff965
xor r10d, r10d
movsxd rcx, dword [rsi + 4]
xor r9d, r9d
mov rax, qword [r15 + 0x98]
mov dword [rbp - 0x48], r10d
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [rsi + 0xc]
imul rdx, rax, 0x38
mov rcx, qword [rdi + 0x38]
lea rax, [rbp - 0x48]
mov qword [rsp + 0x20], rax
mov rbx, qword [rdx + r12]
xor edx, edx
mov r8, rbx
call fcn.1402120dc
xor r10d, r10d
mov qword [rdi + 0x58], rbx
mov r14d, eax
mov word [rdi + 2], r10w
mov eax, dword [rbp - 0x48]
mov dword [rdi + 0x28], r10d
mov dword [rdi + 0x2c], eax
test eax, eax
je 0x1402007e0
cmp dword [rsi + 8], r10d
jne 0x1401ff125
lea r8, str.database_corruption
mov edx, 0x15523
lea ecx, [r10 + 0xb]
call fcn.1401b5c8c
mov r14d, eax
jmp 0x1402007dd
mov rdx, rsi
mov rcx, r15
call fcn.140203bdc
mov rcx, qword [r15 + 0x98]
movsxd rdx, dword [rsi + 4]
mov rdx, qword [rcx + rdx*8]
mov rcx, qword [rdx + 0x18]
mov qword [rax], rcx
movsxd rcx, dword [rsi + 4]
mov rax, qword [r15 + 0x98]
mov rdx, qword [rax + rcx*8]
add qword [rdx + 0x18], r13
jmp 0x1401fe762
mov rbx, r10
mov dword [rsp + 0x48], r10d
mov rdx, rsi
mov qword [rbp - 0x80], rbx
mov rcx, r15
call fcn.140203bdc
movsxd rdx, dword [rsi + 4]
mov r8d, 2
mov rcx, qword [r15 + 0x98]
mov r12, rax
mov r13, qword [rcx + rdx*8]
test byte [r13 + 8], r8b
jne 0x1402011eb
mov rcx, qword [r13 + 0x38]
lea rdx, [rsp + 0x48]
call fcn.1402124ec
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
cmp dword [rsp + 0x48], r10d
je 0x1402011b5
lea ebx, [rax + 1]
mov qword [rbp - 0x80], rbx
lea r8d, [rax + 2]
jmp 0x1402011ee
mov rbx, qword [r13 + 0x38]
mov rcx, rbx
call fcn.140212e28
mov rbx, qword [rbx + 0x30]
movabs rax, 0x7fffffffffffffff
mov qword [rbp - 0x80], rbx
mov r8d, 2
cmp rbx, rax
jl 0x1402011e4
or dword [r13 + 8], r8d
jmp 0x1402011eb
inc rbx
mov qword [rbp - 0x80], rbx
xor r10d, r10d
movsxd rdx, dword [rsi + 0xc]
test edx, edx
je 0x140201269
mov rcx, qword [r15 + 0x100]
test rcx, rcx
je 0x14020121e
mov rax, qword [rcx + 8]
jmp 0x14020120f
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x140201208
imul rdi, rdx, 0x38
add rdi, qword [rcx + 0x20]
jmp 0x140201227
imul rdi, rdx, 0x38
add rdi, qword [rsp + 0x40]
mov rcx, rdi
call fcn.14020b5e0
mov rax, qword [rdi]
movabs rcx, 0x7fffffffffffffff
cmp rax, rcx
je 0x140203619
mov r8d, 2
test byte [r13 + 8], r8b
jne 0x140203619
inc rax
cmp rbx, rax
cmovl rbx, rax
xor r10d, r10d
mov qword [rbp - 0x80], rbx
mov qword [rdi], rbx
test byte [r13 + 8], r8b
je 0x1402012de
mov edi, r10d
lea rdx, [rbp - 0x80]
mov ecx, 8
call fcn.140226118
mov rbx, qword [rbp - 0x80]
movabs rax, 0x3fffffffffffffff
mov rcx, qword [r13 + 0x38]
and rbx, rax
inc rbx
lea rax, [rsp + 0x48]
mov r8, rbx
mov qword [rbp - 0x80], rbx
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor edx, edx
call fcn.1402120dc
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
cmp dword [rsp + 0x48], r10d
jne 0x1402012d8
inc edi
cmp edi, 0x64
jl 0x140201272
lea r14d, [rax + 0xd]
jmp 0x1401ff1c7
mov r8d, 2
mov byte [r13 + 3], r10b
mov dword [r13 + 0x28], r10d
mov qword [r12], rbx
jmp 0x140200650
movsxd rax, dword [rsi + 8]
movsxd rcx, dword [rsi + 4]
imul r8, rax, 0x38
mov rax, qword [r15 + 0x98]
add r8, r12
mov rdi, qword [rax + rcx*8]
cmp bl, 0x7a
jne 0x14020131c
movsxd rax, dword [rsi + 0xc]
imul rcx, rax, 0x38
mov rdx, qword [rcx + r12]
jmp 0x140201320
movsxd rdx, dword [rsi + 0xc]
cmp byte [rsi + 1], 0xfa
mov r9, qword [rsp + 0x38]
mov qword [rbp + 0x88], rdx
jne 0x140201352
cmp qword [r9 + 0x128], r10
je 0x140201352
movsx rcx, byte [rdi + 1]
mov rax, qword [r9 + 0x20]
mov rbx, qword [rsi + 0x10]
shl rcx, 5
mov r12, qword [rcx + rax]
jmp 0x140201358
mov rbx, r10
mov r12, r10
test byte [rsi + 2], r13b
je 0x140201362
add dword [r15 + 0x3c], r13d
test byte [rsi + 2], 0x20
je 0x14020136c
mov qword [r9 + 0x38], rdx
mov rax, qword [r8 + 0x10]
movzx ecx, word [rsi + 2]
mov qword [rbp + 0x90], rax
mov eax, dword [r8 + 0xc]
mov dword [rbp + 0xa4], eax
mov eax, reloc.WS2_32.dll_recv
test al, cl
je 0x140201394
mov r9d, dword [rdi + 0x2c]
jmp 0x140201397
mov r9d, r10d
mov eax, 0x4000
test word [r8 + 8], ax
je 0x1402013ae
mov eax, dword [r8]
mov dword [rbp + 0xa8], eax
jmp 0x1402013b5
mov dword [rbp + 0xa8], r10d
and ecx, 0xa
mov qword [rbp + 0x80], r10
mov r8d, ecx
lea rdx, [rbp + 0x80]
mov rcx, qword [rdi + 0x38]
call fcn.14020e878
xor r10d, r10d
mov r14d, eax
mov byte [rdi + 3], r10b
mov dword [rdi + 0x28], r10d
test eax, eax
jne 0x1401ff1c7
mov rdi, qword [rsp + 0x38]
test rbx, rbx
je 0x1402032ac
mov al, byte [rsi + 2]
mov r8, r12
mov r9, qword [rbx]
and al, 4
mov rcx, qword [rdi + 0x120]
neg al
mov rax, qword [rbp + 0x88]
sbb edx, edx
mov qword [rsp + 0x20], rax
and edx, 5
add edx, 0x12
call qword [rdi + Ordinal_301]
jmp 0x1401fea4f
cmp byte [rsi + 1], 0xfa
movsxd rcx, dword [rsi + 4]
mov rax, qword [r15 + 0x98]
mov ebx, dword [rsi + 8]
mov dword [rbp + 0x200], ebx
mov rdi, qword [rax + rcx*8]
jne 0x140201492
mov rax, qword [rsp + 0x38]
cmp qword [rax + 0x128], r10
je 0x140201492
movsx rcx, byte [rdi + 1]
mov rax, qword [rax + 0x20]
mov r12, qword [rsi + 0x10]
shl rcx, 5
mov r13, qword [rcx + rax]
test byte [rsi + 2], r8b
je 0x140201498
cmp byte [rdi + 4], r10b
je 0x140201498
mov rbx, qword [rdi + 0x38]
mov rcx, rbx
call fcn.140212e28
mov rax, qword [rbx + 0x30]
mov ebx, dword [rbp + 0x200]
mov qword [rdi + 0x58], rax
jmp 0x140201498
mov r13, r10
mov r12, r10
mov dl, byte [rsi + 2]
mov rcx, qword [rdi + 0x38]
call fcn.14020e4f8
xor r10d, r10d
mov r14d, eax
mov qword [rdi + 0x28], r10
test eax, eax
jne 0x1401ff1c7
lea eax, [r14 + 1]
test al, bl
je 0x1402032a4
add dword [r15 + 0x3c], eax
mov r10, qword [rsp + 0x38]
mov r10, qword [r10 + 0x128]
test r10, r10
je 0x1402032c2
test byte [r12 + 0x40], 0x20
jne 0x1402032c2
mov rax, qword [rdi + 0x58]
lea edx, [r14 + 9]
mov rdi, qword [rsp + 0x38]
mov r8, r13
mov r9, qword [r12]
mov qword [rsp + 0x20], rax
mov rcx, qword [rdi + 0x120]
call r10
lea r13d, [r14 + 1]
jmp 0x1401fea4f
mov eax, dword [r15 + 0x3c]
add dword [rdi + 0x78], eax
mov dword [rdi + 0x74], eax
mov dword [r15 + 0x3c], r10d
jmp case.0x1401fe597.86
mov rax, qword [r15 + 0x98]
lea r9, [rbp - 0x44]
movsxd rcx, dword [rsi + 4]
mov r8d, dword [rsi + 0x10]
mov dword [rbp - 0x44], r10d
mov rcx, qword [rax + rcx*8]
movsxd rax, dword [rsi + 0xc]
imul rdx, rax, 0x38
add rdx, r12
call fcn.1401fb468
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
cmp dword [rbp - 0x44], r10d
jmp 0x1401ff8cd
movsxd rax, dword [rsi + 8]
movsxd rcx, dword [rsi + 4]
imul rdx, rax, 0x38
mov rax, qword [r15 + 0x98]
add rdx, r12
mov rcx, qword [rax + rcx*8]
call fcn.1401fb52c
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
movsxd rcx, dword [rsi + 0xc]
mov rax, qword [r15 + 0x98]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x28], r10d
jmp 0x1401fe95e
mov rdx, rsi
mov rcx, r15
call fcn.140203bdc
mov rcx, qword [r15 + 0x98]
mov rbx, rax
movsxd rdx, dword [rsi + 4]
mov rdx, qword [rcx + rdx*8]
mov rdi, qword [rdx + 0x38]
mov rcx, rdi
call fcn.140212e28
mov r10, qword [rsp + 0x38]
mov r8d, dword [rdi + 0x40]
cmp r8d, dword [r10 + 0x7c]
ja 0x140202751
mov r9, rbx
xor edx, edx
mov rcx, rdi
call fcn.14020ad00
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
cmp dword [rsi + 0xc], r10d
jne 0x140203308
mov eax, 0x1000
test word [rbx + 8], ax
je 0x140203308
mov rcx, rbx
call fcn.14020bb00
mov rdi, qword [rsp + 0x38]
xor r10d, r10d
test eax, eax
jne 0x1401feaa7
jmp 0x1401fe95e
mov rdx, rsi
mov rcx, r15
call fcn.140203bdc
movsxd rdx, dword [rsi + 4]
xor r10d, r10d
mov rcx, qword [r15 + 0x98]
mov rdi, rax
mov rbx, qword [rcx + rdx*8]
cmp byte [rbx + 2], r10b
je 0x14020166a
mov word [rax + 8], r13w
jmp 0x1401fff36
cmp byte [rbx + 3], r10b
je 0x140201679
mov rax, qword [rbx + 0x58]
jmp 0x140201701
mov r8d, 2
cmp byte [rbx], r8b
jne 0x1402016b5
mov rcx, qword [rbx + 0x38]
lea rdx, [rbp - 0x18]
mov rbx, qword [rcx]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rcx, r15
mov r14d, eax
call fcn.140206264
xor r10d, r10d
test r14d, r14d
jne 0x1401ff1c7
mov rax, qword [rbp - 0x18]
jmp 0x140201705
mov rax, qword [rbx + 0x38]
cmp byte [rax], r10b
je 0x1402016d2
mov rcx, rbx
call fcn.1402077a8
xor r10d, r10d
mov r14d, eax
lea r8d, [r10 + 2]
jmp 0x1402016d5
mov r14d, r10d
test r14d, r14d
jne 0x1401ff1c7
cmp byte [rbx + 2], r10b
je 0x1402016ee
mov word [rdi + 8], r13w
jmp 0x14020065b
mov rbx, qword [rbx + 0x38]
mov rcx, rbx
call fcn.140212e28
mov rax, qword [rbx + 0x30]
xor r10d, r10d
mov qword [rbp - 0x18], rax
mov qword [rdi], rax
jmp 0x1401fff36
movsxd rcx, dword [rsi + 4]
mov rax, qword [r15 + 0x98]
mov rbx, qword [rax + rcx*8]
mov byte [rbx + 2], r13b
mov dword [rbx + 0x28], r10d
cmp byte [rbx], r10b
jne 0x1401fe8d5
mov rbx, qword [rbx + 0x38]
mov rcx, qword [rbx + 0x18]
call fcn.14022b424
xor r10d, r10d
mov byte [rbx], r13b
mov qword [rbx + 0x18], r10
jmp 0x1401fe95e
movsxd rcx, dword [rsi + 4]
mov rax, qword [r15 + 0x98]
mov dword [rbp - 0x40], r10d
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rdi + 0x38]
cmp bl, 0x83
jne 0x140201772
or dword [rdi + 0x2c], 0xffffffff
cmp byte [rcx], r10b
je 0x140202431
lea rdx, [rbp - 0x40]
call fcn.1402124ec
xor r10d, r10d
mov r14d, eax
mov eax, dword [rbp - 0x40]
mov byte [rdi + 2], al
mov byte [rdi + 3], r10b
mov dword [rdi + 0x28], r10d
test r14d, r14d
jne 0x1401ff1c7
cmp dword [rsi + 8], r10d
jle 0x140203308
mov r9, qword [rsp + 0x30]
test eax, eax
jne 0x1401ff12a
mov rdi, qword [rsp + 0x38]
jmp 0x1401fe76a
movsxd rcx, dword [rsi + 4]
lea rdx, [rbp - 0x3c]
mov rax, qword [r15 + 0x98]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x38]
mov rcx, rbx
call fcn.140212560
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
cmp dword [rbp - 0x3c], r10d
jne 0x1401ff125
mov rcx, rbx
call fcn.14021207c
xor r10d, r10d
test rax, rax
js 0x1402032b1
mov rcx, rax
call fcn.140224444
movsx ecx, ax
cmp ecx, dword [rsi + 0xc]
jge 0x1402032b1
mov dword [rbp - 0x3c], r13d
jmp 0x1401ff125
add dword [r15 + 0xd8], r13d
movsxd rcx, dword [rsi + 4]
lea rdx, [rbp - 0x60]
mov rax, qword [r15 + 0x98]
mov dword [rbp - 0x60], r13d
mov rbx, qword [rax + rcx*8]
cmp byte [rbx], r13b
jne 0x140201854
mov rcx, rbx
call fcn.1401fb698
mov r14d, eax
xor r10d, r10d
jmp 0x140201889
mov rdi, qword [rbx + 0x38]
mov rcx, rdi
call fcn.140212560
xor r10d, r10d
mov r14d, eax
cmp word [rsi + 2], r10w
je 0x14020187c
cmp byte [rdi], r10b
jne 0x14020187c
lea eax, [r10 + 2]
mov dword [rdi + 4], r13d
mov byte [rdi], al
mov rdi, qword [rsp + 0x38]
mov byte [rbx + 3], r10b
mov dword [rbx + 0x28], r10d
test r14d, r14d
jne 0x1401ff1c7
mov eax, dword [rbp - 0x60]
mov byte [rbx + 2], al
jmp 0x1401ff8cb
movsxd rcx, dword [rsi + 4]
mov rax, qword [r15 + 0x98]
mov rbx, qword [rax + rcx*8]
mov rcx, rdi
mov rdx, rbx
call fcn.1401fb608
jmp 0x1402018d2
movsxd rcx, dword [rsi + 4]
mov rax, qword [r15 + 0x98]
mov edx, dword [rsi + 0xc]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x38]
call qword [rsi + reloc.WS2_32.dll_recv]
mov r14d, eax
xor r10d, r10d
mov dword [rbx + 0x28], r10d
test eax, eax
jne 0x1402018f5
mov byte [rbx + 2], r10b
movzx eax, word [rsi + 2]
add dword [r15 + rax*4 + 0xd0], r13d
jmp case.0x1401fe597.11
cmp r14d, 0x65
jne 0x1401ff1c7
mov r14d, r10d
mov byte [rbx + 2], r13b
jmp 0x140202ea4
mov rax, qword [r15 + 0x98]
movsxd rcx, dword [rsi + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [rsi + 8]
imul rbx, rax, 0x38
add rbx, r12
test byte [rsi + 2], r13b
je 0x14020192f
add dword [r15 + 0x3c], r13d
mov eax, 0x4000
test word [rbx + 8], ax
je 0x14020194a
mov rcx, rbx
call fcn.14020baa8
mov r14d, eax
xor r10d, r10d
jmp 0x14020194d
mov r14d, r10d
test r14d, r14d
jne 0x1401ff1c7
cmp byte [rsi], 0x84
jne 0x14020196b
mov rdx, rbx
mov rcx, rdi
call fcn.1401fc224
xor r10d, r10d
jmp 0x1402019d1
movsxd rax, dword [rbx + 0xc]
movzx r8d, word [rsi + 2]
mov qword [rbp + 0x140], rax
mov rax, qword [rbx + 0x10]
mov qword [rbp + 0x138], rax
movsxd rax, dword [rsi + 0xc]
imul rcx, rax, 0x38
movzx eax, word [rsi + 0x10]
add rcx, r12
mov word [rbp + 0x158], ax
mov eax, reloc.WS2_32.dll_recv
mov qword [rbp + 0x150], rcx
test al, r8b
je 0x1402019b3
mov r9d, dword [rdi + 0x2c]
jmp 0x1402019b6
mov r9d, r10d
mov rcx, qword [rdi + 0x38]
lea rdx, [rbp + 0x138]
and r8d, 0xa
call fcn.14020e878
xor r10d, r10d
mov dword [rdi + 0x28], r10d
mov r14d, eax
jmp 0x1402007e0
movsxd rcx, dword [rsi + 4]
lea rdx, [rbp + 0x50]
mov rax, qword [r15 + 0x98]
xor r9d, r9d
xor r8d, r8d
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x40]
mov rdi, qword [rbx + 0x38]
mov qword [rbp + 0x50], rax
movzx eax, word [rsi + 0xc]
mov word [rbp + 0x60], ax
movsxd rax, dword [rsi + 8]
imul rcx, rax, 0x38
lea rax, [rbp - 4]
mov byte [rbp + 0x62], r10b
add rcx, r12
mov qword [rsp + 0x20], rax
mov qword [rbp + 0x58], rcx
mov rcx, rdi
call fcn.1402120dc
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
cmp dword [rbp - 4], r10d
jne 0x140201a57
lea edx, [rax + 4]
mov rcx, rdi
call fcn.14020e4f8
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
and qword [rbx + 0x28], 0
jmp 0x1401fff36
mov rax, qword [r15 + 0x98]
movsxd rcx, dword [rsi + 4]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x38]
cmp byte [rax], r10b
je 0x140201a9b
mov rcx, rbx
call fcn.1402077a8
mov r9, qword [rsp + 0x30]
xor r10d, r10d
mov r14d, eax
mov edx, 0x2400
lea r8d, [r10 + 2]
lea r11d, [r10 + 4]
jmp 0x140201a9e
mov r14d, r10d
test r14d, r14d
jne 0x1401ff1c7
cmp byte [rbx + 2], r10b
jne 0x140201b16
mov rdx, qword [rbx + 0x38]
lea r8, [rbp - 0x58]
mov rcx, rdi
mov qword [rbp - 0x58], r10
call fcn.1402064f4
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
cmp byte [rsi], 0x87
jne 0x140201b02
mov rax, qword [r15 + 0x98]
movsxd rcx, dword [rsi + 0xc]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rbp - 0x58]
mov word [rdx + 2], VarUI2FromI4
mov qword [rdx + 0x58], rax
mov rax, qword [rsi + 0x10]
mov qword [rdx + 0x20], rax
mov qword [rdx + 0x30], rbx
jmp 0x1401fe95e
mov rdx, rsi
mov rcx, r15
call fcn.140203bdc
mov rcx, qword [rbp - 0x58]
jmp 0x1402002f0
movsxd rax, dword [rsi + 8]
imul rcx, rax, 0x38
add rcx, r12
test word [rcx + 8], dx
jne 0x1401ff7ce
mov word [rcx + 8], r13w
jmp case.0x1401fe597.86
movsxd rcx, dword [rsi + 4]
lea r9, [rsp + 0x7c]
mov rax, qword [r15 + 0x98]
lea r8, [rbp + 0x68]
cmp bl, 0x27
mov dword [rsp + 0x7c], r10d
mov rdx, qword [rax + rcx*8]
mov rax, qword [rdx + 0x40]
mov qword [rbp + 0x68], rax
movzx eax, word [rsi + 0x10]
mov word [rbp + 0x78], ax
sbb al, al
mov byte [rbp + 0x7a], al
movsxd rax, dword [rsi + 0xc]
imul rcx, rax, 0x38
add rcx, r12
mov qword [rbp + 0x70], rcx
mov rcx, rdi
call fcn.140206420
mov r14d, eax
mov eax, dword [rsp + 0x7c]
test byte [rsi], r13b
je 0x140201b91
neg eax
jmp 0x140201b94
add eax, r13d
xor r10d, r10d
test r14d, r14d
jne 0x1401ff1c7
mov r9, qword [rsp + 0x30]
test eax, eax
jg 0x1401ff12a
jmp 0x1401fe76a
mov rdx, rsi
mov rcx, r15
call fcn.140203bdc
mov rbx, rax
mov word [rax + 8], r13w
mov ecx, dword [rdi + 0xcc]
add ecx, r13d
cmp dword [rdi + 0xc0], ecx
jg 0x140203624
movsxd rdi, dword [rsi + 0xc]
lea r8, [rbp - 0x38]
mov r12, qword [rsp + 0x38]
xor eax, eax
mov edx, dword [rsi + 4]
mov r9, rdi
shl r9, 5
mov dword [rbp - 0x38], eax
mov rcx, qword [r12 + 0x20]
mov rcx, qword [r9 + rcx + 8]
call fcn.14020dd4c
movsxd r8, dword [rbp - 0x38]
xor r10d, r10d
mov qword [rbx], r8
mov r11d, 4
mov word [rbx + 8], r11w
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
test r8d, r8d
je 0x1402032fe
mov r9d, dword [rsi + 4]
mov edx, edi
mov rcx, r12
call fcn.1401ea914
mov r9, qword [rsp + 0x30]
lea eax, [rdi + r13]
mov rdi, r12
mov byte [rbp + 0x208], al
mov r12, qword [rsp + 0x40]
jmp 0x1401fe745
mov eax, dword [rsi + 0xc]
mov rcx, qword [rdi + 0x20]
neg eax
mov edx, dword [rsi + 4]
lea rax, [rbp - 0x68]
sbb r8, r8
mov dword [rbp - 0x68], r10d
and r8, rax
movsxd rax, dword [rsi + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14020dfa0
xor r10d, r10d
mov r14d, eax
cmp dword [rsi + 0xc], r10d
je 0x1401ff1be
movsxd rdx, dword [rbp - 0x68]
add dword [r15 + 0x3c], edx
cmp dword [rsi + 0xc], r10d
jle 0x1401ff1be
movsxd rax, dword [rsi + 0xc]
imul rcx, rax, 0x38
add qword [rcx + r12], rdx
jmp 0x1401ff1be
movsxd rcx, dword [rsi + 4]
mov rax, qword [r15 + 0x98]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], r13b
jne 0x140201cdc
mov rdx, qword [rcx + 0x38]
mov rcx, rdi
call fcn.1401fce04
jmp 0x1401fe762
mov rcx, qword [rcx + 0x38]
xor r8d, r8d
mov edx, dword [rcx + 0x50]
mov rcx, qword [rcx + 8]
call fcn.14020dfa0
jmp 0x140200bd6
mov rdx, rsi
mov rcx, r15
call fcn.140203bdc
movsxd rcx, dword [rsi + 4]
lea rdx, [rsp + 0x58]
mov r8d, dword [rsi + 0xc]
mov rbx, rax
shl rcx, 5
xor eax, eax
add rcx, qword [rdi + 0x20]
mov dword [rsp + 0x58], eax
mov rcx, qword [rcx + 8]
call fcn.14020e240
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
movsxd rax, dword [rsp + 0x58]
mov qword [rbx], rax
jmp 0x1401fe95e
add byte [rdi + 0x6a], r13b
xor r9d, r9d
mov rdx, qword [rsi + 0x10]
xor r8d, r8d
mov rcx, rdi
mov qword [rsp + 0x20], r10
call fcn.14022b0f4
dec byte [rdi + 0x6a]
jmp 0x140200bd6
mov rcx, qword [rsi + 0x10]
movsxd rbx, dword [rsi + 4]
test rcx, rcx
jne 0x140201db5
mov rcx, qword [rdi + 0x20]
mov rax, rbx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.1401e6c60
and dword [rdi + 0x2c], 0xfffffff7
lea r8, [r15 + 0x90]
mov r9d, r13d
mov edx, ebx
mov rcx, rdi
call fcn.1401d9324
or dword [rdi + 0x2c], r13d
mov r14d, eax
and dword [r15 + 0xc4], 0xfffffffc
xor r10d, r10d
jmp 0x140201e47
mov r8, qword [rdi + 0x20]
lea rax, [r15 + 0x90]
mov qword [rbp + 0x38], rax
lea r9, [0x1406ea9c8]
mov qword [rbp + 0x30], rdi
lea rdx, str.SELECT_name__rootpage__sql_FROM__q._s_WHERE__s_ORDER_BY_rowid
mov dword [rbp + 0x40], ebx
mov rax, rbx
shl rax, 5
mov dword [rbp + 0x48], r10d
mov qword [rsp + 0x20], rcx
mov rcx, rdi
mov r8, qword [rax + r8]
call fcn.1402264f8
mov rbx, rax
xor eax, eax
test rbx, rbx
je 0x140203639
lea r9, [rbp + 0x30]
mov byte [rdi + 0xb5], r13b
lea r8, [fcn.1401d9694]
mov dword [rbp + 0x44], eax
mov rdx, rbx
mov qword [rsp + 0x20], rax
mov rcx, rdi
call fcn.14022b0f4
test eax, eax
mov r14d, eax
mov rdx, rbx
mov rcx, rdi
cmove r14d, dword [rbp + 0x44]
call fcn.140228168
xor r10d, r10d
mov byte [rdi + 0xb5], r10b
test r14d, r14d
jne 0x14020363f
jmp 0x1401fe95e
mov edx, dword [rsi + 4]
mov rcx, rdi
call fcn.1401eeb80
jmp 0x140200bd6
mov r8, qword [rsi + 0x10]
mov rcx, rdi
mov edx, dword [rsi + 4]
call fcn.1401ece00
jmp 0x1401fe762
mov r8, qword [rsi + 0x10]
mov rcx, rdi
mov edx, dword [rsi + 4]
call fcn.1401ed244
jmp 0x1401fe762
mov r8, qword [rsi + 0x10]
mov rcx, rdi
mov edx, dword [rsi + 4]
call fcn.1401cf160
jmp 0x1401fe762
movsxd rax, dword [rsi + 0xc]
lea r8, [rbp]
mov r10, qword [rsp + 0x38]
mov rdx, qword [rsi + 0x10]
imul rdi, rax, 0x38
movsxd rax, dword [rsi + 4]
add rdx, 4
mov rcx, qword [r10 + 0x20]
add rdi, r12
imul rbx, rax, 0x38
movzx eax, word [rsi + 2]
mov r9d, dword [rdi]
add rbx, r12
shl rax, 5
add r9d, r13d
mov qword [rsp + 0x20], r8
mov r8d, dword [rsi + 8]
mov rcx, qword [rax + rcx + 8]
call fcn.14020cdd8
mov r12, rax
mov eax, 0x2400
test word [rbx + 8], ax
je 0x140201f05
mov rcx, rbx
call fcn.14020b810
jmp 0x140201f0a
mov word [rbx + 8], r13w
mov eax, dword [rbp]
xor r10d, r10d
test eax, eax
je 0x140201f46
test r12, r12
je 0x1401feaa2
dec eax
mov r9b, r13b
movsxd rcx, eax
or r8d, 0xffffffff
sub qword [rdi], rcx
lea rax, [fcn.14022b424]
mov rcx, rbx
mov qword [rsp + 0x20], rax
mov rdx, r12
call fcn.14020ae30
xor r10d, r10d
movzx ecx, byte [rbp + 0x1f8]
mov r8d, 2
test byte [rbx + 8], r8b
je 0x1402032f2
movzx eax, byte [rbx + 0xa]
cmp eax, ecx
je 0x1402032f2
mov dl, cl
mov rcx, rbx
call fcn.140225988
jmp 0x1401fea4a
movsxd rax, dword [rsi + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rsi + 8]
imul rdi, rax, 0x38
add rbx, r12
mov eax, reloc.WS2_32.dll_recv
test byte [rbx + 8], al
jne 0x140201fa5
mov rcx, rbx
call fcn.14020b1e8
test eax, eax
jne 0x1401feaa2
mov rdx, qword [rdi + r12]
mov rcx, qword [rbx + 0x10]
call fcn.14021ee04
jmp 0x1401feb83
movsxd rax, dword [rsi + 4]
imul rbx, rax, 0x38
mov eax, reloc.WS2_32.dll_recv
add rbx, r12
test byte [rbx + 8], al
je 0x140202023
mov rcx, qword [rbx + 0x10]
lea rdx, [rbp + 8]
call fcn.14021eb64
xor r10d, r10d
test eax, eax
je 0x14020201e
movsxd rax, dword [rsi + 0xc]
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, r12
test word [rcx + 8], ax
je 0x140202007
mov rdx, qword [rbp + 8]
call fcn.14020b314
xor r10d, r10d
jmp 0x140202ea4
mov rax, qword [rbp + 8]
mov r11d, 4
mov qword [rcx], rax
mov word [rcx + 8], r11w
jmp 0x140202eaa
mov edx, 0x2400
test word [rbx + 8], dx
je 0x140202039
mov rcx, rbx
call fcn.14020b810
xor r10d, r10d
jmp case.0x1401fe597.11
mov word [rbx + 8], r13w
jmp case.0x1401fe597.11
movsxd rax, dword [rsi + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rsi + 0xc]
imul rdi, rax, 0x38
add rbx, r12
mov eax, reloc.WS2_32.dll_recv
add rdi, r12
mov r12d, dword [rsi + 0x10]
test byte [rbx + 8], al
jne 0x14020207a
mov rcx, rbx
call fcn.14020b1e8
xor r10d, r10d
test eax, eax
jne 0x1401feaa2
test r12d, r12d
je 0x14020209c
mov r8, qword [rdi]
mov edx, r12d
mov rcx, qword [rbx + 0x10]
call fcn.14021ea60
xor r10d, r10d
test eax, eax
jne 0x1401ff125
test r12d, r12d
js 0x1401fe954
mov rdx, qword [rdi]
mov rcx, qword [rbx + 0x10]
call fcn.14021ee04
jmp 0x1401fea4a
movsxd rax, dword [rsi + 0xc]
mov r12, qword [rsi + 0x10]
imul rbx, rax, 0x38
mov qword [rbp + 0x200], r12
add rbx, qword [rsp + 0x40]
cmp word [rsi + 2], r10w
je 0x1402020fb
mov rax, qword [r15 + 0x100]
mov rcx, qword [r12 + 0x20]
test rax, rax
je 0x1402020fb
cmp qword [rax + 0x38], rcx
je 0x1402020f2
mov rax, qword [rax + 8]
test rax, rax
jne 0x1402020e3
test rax, rax
jne 0x1401feffa
mov eax, dword [rdi + 0xa4]
cmp dword [r15 + 0x110], eax
jge 0x14020365e
mov eax, reloc.WS2_32.dll_recv
test byte [rbx + 8], al
jne 0x14020231a
mov edx, dword [r12 + 0x10]
mov ecx, dword [r12 + 0xc]
add ecx, edx
test edx, edx
lea r13d, [rcx + 1]
cmovne r13d, ecx
lea eax, [r13 + 2]
imul ecx, eax, 7
mov eax, dword [r12 + 8]
add ecx, edx
mov edx, 7
add eax, edx
jns 0x14020214b
add eax, edx
sar eax, 3
lea r12d, [rax + rcx*8]
mov rcx, rdi
movsxd rdx, r12d
call fcn.140227ee0
mov rdi, rax
xor eax, eax
test rdi, rdi
je 0x1401feaa2
mov ecx, 0x2400
test word [rbx + 8], cx
jne 0x14020217b
cmp dword [rbx + 0x20], eax
je 0x140202183
mov rcx, rbx
call fcn.14020b7cc
sub rsi, qword [rsp + 0x30]
mov eax, 0x410
mov r10, qword [rsp + 0x38]
mov word [rbx + 8], ax
lea rax, [0x140209074]
mov qword [rbx + 0x30], rax
mov dword [rbx + 0xc], r12d
mov r12, qword [rbp + 0x200]
mov qword [rbx + 0x10], rdi
mov qword [rdi], r15
mov dword [rdi + 0x60], r13d
mov eax, dword [r12 + 0x10]
mov dword [rdi + 0x64], eax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rsi
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rdi + 0x54], edx
mov rax, qword [r15 + 0x70]
mov qword [rdi + 0x20], rax
mov eax, dword [r15 + 0x28]
mov dword [rdi + 0x5c], eax
mov rax, qword [r15 + 0x98]
mov qword [rdi + 0x28], rax
mov eax, dword [r15 + 0x2c]
mov dword [rdi + 0x50], eax
mov rax, qword [r15 + 0x68]
mov qword [rdi + 0x10], rax
mov eax, dword [r15 + 0xb8]
mov dword [rdi + 0x58], eax
mov rax, qword [r12 + 0x20]
mov qword [rdi + 0x38], rax
movsxd rax, r13d
add rax, 2
imul rcx, rax, 0x38
lea rax, [rdi + 0x70]
add rcx, rdi
cmp rax, rcx
je 0x140202246
mov edx, 0x80
mov word [rax + 8], dx
mov qword [rax + 0x28], r10
add rax, 0x38
cmp rax, rcx
jne 0x140202235
mov r13d, 1
add dword [r15 + 0x110], r13d
lea rdx, [rdi + 0x70]
mov rax, qword [r15 + 0x100]
mov r8d, 7
mov qword [rdi + 8], rax
mov rax, qword [r10 + 0x38]
mov qword [rdi + 0x40], rax
mov eax, dword [r15 + 0x3c]
mov dword [rdi + 0x68], eax
mov rax, qword [r15]
mov qword [rsp + 0x40], rdx
mov ecx, dword [rax + 0x74]
mov dword [rdi + 0x6c], ecx
mov rax, qword [r15 + 0x120]
mov qword [rdi + 0x48], rax
xor eax, eax
mov qword [r15 + 0x120], rax
mov dword [r15 + 0x3c], eax
mov qword [r15 + 0x70], rdx
mov qword [r15 + 0x100], rdi
movsxd rcx, dword [rdi + 0x60]
mov dword [r15 + 0x28], ecx
movzx eax, word [rdi + 0x64]
mov dword [r15 + 0x2c], eax
imul rcx, rcx, 0x38
add rdx, rcx
mov qword [r15 + 0x98], rdx
movsxd rax, dword [r12 + 0x10]
lea rcx, [rdx + rax*8]
mov qword [rdi + 0x30], rcx
mov eax, dword [r12 + 8]
add eax, r8d
cdq
and edx, r8d
add eax, edx
xor edx, edx
sar eax, 3
movsxd r8, eax
call fcn.14011d670
mov r9, qword [r12]
mov rdi, qword [rsp + 0x38]
mov qword [r15 + 0x68], r9
mov eax, dword [r12 + 8]
mov r12, qword [rsp + 0x40]
lea rsi, [r9 - 0x18]
mov qword [rsp + 0x30], r9
mov dword [r15 + 0xb8], eax
jmp 0x1401fe767
mov rdi, qword [rbx + 0x10]
mov r10, qword [rsp + 0x38]
jmp 0x14020224c
mov rdx, rsi
mov rcx, r15
call fcn.140203bdc
mov r9, qword [r15 + 0x100]
movsxd rcx, dword [r9 + 0x54]
lea rdx, [rcx + rcx*2]
mov rcx, qword [r9 + 0x10]
mov r8d, dword [rcx + rdx*8 + 4]
add r8d, dword [rsi + 4]
movsxd rcx, r8d
mov r8d, 0x1000
imul rdx, rcx, 0x38
mov rcx, rax
add rdx, qword [r9 + 0x20]
jmp 0x1401fe9f3
mov eax, dword [rdi + 0x30]
bt rax, 0x13
movsxd rax, dword [rsi + 8]
jae 0x140202382
add qword [rdi + 0x2a0], rax
jmp case.0x1401fe597.86
lea rcx, [0x140000000]
cmp dword [rsi + 4], r10d
je 0x14020239b
add qword [rdi + 0x298], rax
jmp case.default.0x1401fe597
add qword [r15 + 0x50], rax
jmp case.default.0x1401fe597
cmp dword [rsi + 4], r10d
je 0x1402023c3
cmp qword [rdi + 0x298], r10
jne case.0x1401fe597.86
cmp qword [rdi + 0x2a0], r10
jmp 0x1401ff92b
cmp qword [r15 + 0x50], r10
jmp 0x1402023b1
mov rcx, qword [r15 + 0x100]
test rcx, rcx
je 0x1402023f5
mov rax, qword [rcx + 8]
jmp 0x1402023e2
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x1402023db
movsxd rax, dword [rsi + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x20]
jmp 0x140202400
movsxd rax, dword [rsi + 4]
imul rdi, rax, 0x38
add rdi, r12
mov rcx, rdi
call fcn.14020b5e0
movsxd rax, dword [rsi + 8]
imul rbx, rax, 0x38
add rbx, r12
mov rcx, rbx
call fcn.14020b5e0
mov rax, qword [rbx]
xor r10d, r10d
lea r8d, [r10 + 2]
lea r11d, [r10 + 4]
cmp qword [rdi], rax
jge 0x140202431
mov qword [rdi], rax
mov rdi, qword [rsp + 0x38]
jmp 0x1401fe8d5
movsxd rax, dword [rsi + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + r12]
test rdx, rdx
jle 0x1401fe5f2
movsxd rax, dword [rsi + 0xc]
sub rdx, rax
mov qword [rcx + r12], rdx
jmp 0x1401ff12a
movsxd rax, dword [rsi + 4]
mov rdx, rsi
imul rbx, rax, 0x38
movsxd rax, dword [rsi + 0xc]
mov rcx, r15
imul rdi, rax, 0x38
call fcn.140203bdc
mov rcx, qword [rbx + r12]
xor r11d, r11d
mov qword [rsp + 0x70], rcx
mov r10, rax
test rcx, rcx
jle 0x1402024b6
cmp qword [rdi + r12], r11
lea rcx, [rsp + 0x70]
mov edx, r11d
cmovg rdx, qword [rdi + r12]
call fcn.140224614
test eax, eax
jne 0x1402024b6
mov rax, qword [rsp + 0x70]
mov qword [r10], rax
jmp 0x1401feb83
or qword [r10], 0xffffffffffffffff
jmp 0x1401feb83
movsxd rax, dword [rsi + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r12]
test rax, rax
je case.0x1401fe597.86
jle 0x1401ff12a
dec rax
mov qword [rcx + r12], rax
jmp 0x1401ff12a
movsxd rax, dword [rsi + 4]
movabs rbx, 0x8000000000000000
imul rcx, rax, 0x38
mov rax, qword [rcx + r12]
cmp rax, rbx
jle 0x140202508
dec rax
mov qword [rcx + r12], rax
cmp qword [rcx + r12], r10
jmp 0x1401ff92b
movzx ebx, word [rsi + 2]
mov rcx, qword [rsp + 0x38]
mov edi, ebx
lea rdx, [rbx*8 + 0x68]
call fcn.140227e28
xor r10d, r10d
mov r8, rax
test rax, rax
je 0x1401feaa2
mov qword [rax + 0x10], r10
add rdi, 6
lea rcx, [rax + rdi*8]
mov rdi, qword [rsp + 0x38]
mov qword [rax], rcx
mov word [rcx + 8], r13w
mov qword [rcx + 0x28], rdi
mov dword [rcx + 0x20], r10d
mov rcx, qword [rsi + 0x10]
mov qword [rax + 8], rcx
mov rcx, rsi
sub rcx, qword [rsp + 0x30]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov qword [r8 + 0x18], r15
sar rdx, 2
mov rax, rdx
mov byte [r8 + 0x28], r10b
mov dword [r8 + 0x24], r10d
mov byte [r8 + 0x29], bl
shr rax, 0x3f
add rdx, rax
mov dword [r8 + 0x20], edx
mov word [rsi], 0xf09c
mov qword [rsi + 0x10], r8
movsxd rax, dword [rsi + 0xc]
mov rbx, qword [rsi + 0x10]
imul rdx, rax, 0x38
add rdx, r12
cmp qword [rbx + 0x10], rdx
je 0x1402025f6
movzx r8d, byte [rbx + 0x29]
sub r8d, r13d
mov qword [rbx + 0x10], rdx
movsxd r9, r8d
js 0x1402025f6
lea r10, [r9 + 6]
mov edi, 8
lea r10, [rbx + r10*8]
mov eax, dword [rsi + 8]
add eax, r8d
sub r8d, r13d
cdqe
imul rcx, rax, 0x38
add rcx, r12
mov qword [r10], rcx
sub r10, rdi
sub r9, r13
jns 0x1402025d4
mov rdi, qword [rsp + 0x38]
add dword [rdx + 0xc], r13d
lea r8, [rbx + 0x30]
cmp dword [rsi + 4], 0
mov rcx, rbx
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x29]
je 0x140202614
call qword [rax + Ordinal_50]
jmp 0x140202617
call qword [rax + Ordinal_26]
mov eax, dword [rbx + 0x24]
xor r10d, r10d
test eax, eax
je 0x1402032b1
jle 0x14020264b
mov rcx, qword [rbx]
mov dl, r13b
call fcn.14020ac0c
mov r8, rax
lea rdx, [0x1406e92ec]
mov rcx, r15
call fcn.14020a5f4
mov r14d, dword [rbx + 0x24]
xor r10d, r10d
cmp byte [rbx + 0x28], r10b
je 0x14020268c
cmp dword [rsi - 0x14], r10d
je 0x140202688
movsxd rax, dword [rsi - 0x14]
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, r12
test word [rcx + 8], ax
je 0x14020267a
mov rdx, r13
call fcn.14020b314
xor r10d, r10d
jmp 0x140202688
mov r11d, 4
mov qword [rcx], r13
mov word [rcx + 8], r11w
mov byte [rbx + 0x28], r10b
mov rcx, qword [rbx]
mov edx, 0x2400
test word [rcx + 8], dx
jne 0x1402026a0
cmp dword [rcx + 0x20], r10d
je 0x1402026ad
call fcn.14020b7cc
xor r10d, r10d
mov edx, 0x2400
mov rax, qword [rbx]
mov word [rax + 8], r13w
mov dword [rbx + 0x24], r10d
test r14d, r14d
jne 0x1401ff1c7
jmp 0x1401ffa31
movsxd rax, dword [rsi + 4]
imul rbx, rax, 0x38
add rbx, r12
mov rcx, rbx
cmp dword [rsi + 0xc], r10d
je 0x1402026ff
movsxd rax, dword [rsi + 0xc]
mov r8, qword [rsi + 0x10]
imul rdx, rax, 0x38
add rdx, r12
call fcn.14020b854
mov r14d, eax
movsxd rax, dword [rsi + 0xc]
imul rbx, rax, 0x38
add rbx, r12
jmp 0x14020270b
mov rdx, qword [rsi + 0x10]
call fcn.14020b8cc
mov r14d, eax
xor r10d, r10d
test r14d, r14d
jne 0x140203675
movzx ecx, byte [rbp + 0x1f8]
lea r8d, [r10 + 2]
test byte [rbx + 8], r8b
je 0x140202741
movzx eax, byte [rbx + 0xa]
cmp eax, ecx
je 0x140202741
mov dl, cl
mov rcx, rbx
call fcn.140225988
xor r10d, r10d
lea r8d, [r14 + 2]
mov rcx, rbx
call fcn.14020b1bc
test eax, eax
je 0x140200660
lea rdx, [0x1406eaac0]
mov rcx, r15
call fcn.14020a5f4
mov r14d, reloc.WS2_32.dll_select
jmp 0x14020354f
mov r8d, dword [rsi + 8]
lea rax, [rbp - 0x20]
mov edx, dword [rsi + 4]
lea r9, [rbp - 0x24]
or dword [rbp - 0x20], 0xffffffff
mov rcx, rdi
or dword [rbp - 0x24], 0xffffffff
mov qword [rsp + 0x20], rax
mov dword [rbp - 0x28], r10d
call fcn.1401b6e88
xor r10d, r10d
mov r14d, eax
test eax, eax
je 0x1402027b1
lea eax, [r10 + 5]
cmp r14d, eax
jne 0x1401ff1c7
mov r14d, r10d
mov dword [rbp - 0x28], r13d
movsxd rax, dword [rsi + 0xc]
mov rdi, r10
imul rbx, rax, 0x38
mov edx, 0x2400
mov r15d, 4
add rbx, r12
movsxd rax, dword [rbp + rdi*4 - 0x28]
test word [rbx + 8], dx
je 0x1402027e7
mov rdx, rax
mov rcx, rbx
call fcn.14020b314
mov edx, 0x2400
jmp 0x1402027ef
mov qword [rbx], rax
mov word [rbx + 8], r15w
add rdi, r13
add rbx, 0x38
cmp rdi, 3
jl 0x1402027ca
mov r15, qword [rbp + 0x1f0]
xor r10d, r10d
mov rdi, qword [rsp + 0x38]
mov r9, qword [rsp + 0x30]
jmp 0x1401fe76f
mov rdx, rsi
mov rcx, r15
call fcn.140203bdc
mov rcx, qword [rdi + 0x20]
mov r13, rax
mov r8d, dword [rsi + 0xc]
movsxd rdx, dword [rsi + 4]
shl rdx, 5
cmp r8d, 0xffffffff
mov rax, qword [rdx + rcx + 8]
mov qword [rsp + 0x70], rax
mov rcx, qword [rax + 8]
mov rdi, qword [rcx]
movzx r12d, byte [rdi + 9]
cmove r8d, r12d
xor edx, edx
cmp byte [rdi + 0x14], 3
jb 0x14020285d
mov eax, edx
jmp 0x140202873
mov rax, qword [rdi + 0x50]
cmp qword [rax], rdx
je 0x14020286e
mov eax, edx
cmp qword [rdi + 0x60], rdx
jg 0x140202873
mov eax, 1
test eax, eax
lea rcx, [0x1406f7bda]
mov ebx, r12d
cmovne ebx, r8d
cmp byte [rdi + 0x13], dl
jne 0x14020288f
mov rcx, qword [rdi + 0xd0]
mov r9d, 5
cmp ebx, r9d
jne 0x1402028c6
test rcx, rcx
je 0x1402028c3
or rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], dl
jne 0x1402028a3
and eax, 0x3fffffff
je 0x1402028c3
mov rcx, rdi
mov ebx, r9d
call fcn.14021a134
xor edx, edx
test eax, eax
jne 0x1402028c6
mov ebx, r12d
cmp ebx, r12d
je 0x140202950
cmp r12d, r9d
je 0x1402028d9
cmp ebx, r9d
jne 0x140202950
mov rax, qword [rsp + 0x38]
cmp byte [rax + 0x5f], dl
je 0x140203697
cmp dword [rax + 0xc0], 1
jg 0x140203697
cmp r12d, r9d
jne 0x140202919
mov rdx, rax
mov rcx, rdi
call fcn.140219f30
mov r14d, eax
test eax, eax
jne 0x140202950
mov edx, ebx
mov rcx, rdi
call fcn.14021a284
xor edx, edx
jmp 0x140202937
mov r11d, 4
cmp r12d, r11d
jne 0x140202932
lea edx, [r11 - 2]
mov rcx, rdi
call fcn.14021a284
xor edx, edx
test r14d, r14d
jne 0x140202953
mov rcx, qword [rsp + 0x70]
mov eax, 5
cmp ebx, eax
sete dl
inc edx
call fcn.14020ca0c
mov r14d, eax
test r14d, r14d
cmove r12d, ebx
mov rcx, rdi
mov edx, r12d
call fcn.14021a284
xor r10d, r10d
mov ecx, 0xa02
mov word [r13 + 8], cx
cmp eax, 6
jne 0x140202979
mov ecx, r10d
jmp 0x14020298a
cdqe
lea rcx, [0x140000000]
mov rcx, qword [rcx + rax*8 + 0x697f18]
mov qword [r13 + 0x10], rcx
test rcx, rcx
jne 0x140202998
mov eax, r10d
jmp 0x1402029aa
or rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], r10b
jne 0x14020299c
and eax, 0x3fffffff
mov dword [r13 + 0xc], eax
movzx eax, byte [rbp + 0x1f8]
mov byte [r13 + 0xa], 1
cmp eax, 1
je 0x1402029cc
mov dl, al
mov rcx, r13
call fcn.140225988
xor r10d, r10d
test r14d, r14d
jne 0x1401ff1c7
jmp 0x1401fecd0
mov r8d, dword [rsi + 4]
lea rcx, [r15 + 0x90]
mov rdx, rdi
call fcn.1401cc214
jmp 0x140200bd6
movsxd rcx, dword [rsi + 4]
mov rax, qword [rdi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
call fcn.140213748
xor r10d, r10d
mov r14d, eax
test eax, eax
je 0x1402032b1
cmp eax, 0x65
jne 0x1401ff1c7
mov r14d, r10d
jmp 0x1401ff125
cmp dword [rsi + 4], r10d
jne 0x140202a5d
mov rax, qword [rdi + 8]
mov ecx, dword [rsi + 8]
test rax, rax
je case.0x1401fe597.86
inc ecx
and ecx, 3
and dword [rax + 0xc4], 0xfffffffc
or dword [rax + 0xc4], ecx
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140202a42
jmp case.0x1401fe597.86
mov eax, dword [rsi + 8]
add eax, r13d
xor eax, dword [r15 + 0xc4]
and eax, 3
xor dword [r15 + 0xc4], eax
jmp case.0x1401fe597.86
mov r8b, byte [rsi + 0xc]
test r8b, r8b
jne 0x140202a90
mov eax, dword [rdi + 0x30]
bt rax, 0xa
jb 0x1401fe68f
movsxd rax, dword [rsi + 4]
mov rcx, qword [rdi + 0x20]
mov edx, dword [rsi + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14020cb60
xor r10d, r10d
mov r14d, eax
test eax, eax
je 0x1401fe95e
cmp al, 6
jne 0x1401ff1c7
mov r8, qword [rsi + 0x10]
lea rdx, str.database_table_is_locked:__s
jmp 0x14020368a
mov rbx, qword [rsi + 0x10]
mov rcx, rdi
mov rdx, rbx
call fcn.1401cae78
xor r10d, r10d
mov r14d, eax
test rbx, rbx
je 0x1401ff1be
mov rdx, qword [rbx + 0x10]
mov rcx, r15
call fcn.140206264
jmp 0x1401ff1bb
xor edx, edx
lea rcx, [rbp + 0x100]
lea r8d, [rdx + 0x38]
call fcn.14011d670
movsxd rax, dword [rsi + 8]
lea rcx, [rbp + 0x100]
imul rdx, rax, 0x38
mov qword [rbp + 0x128], rdi
add rdx, r12
call fcn.14020b0b0
mov dl, r13b
lea rcx, [rbp + 0x100]
mov r14d, eax
call fcn.14020ac0c
xor r10d, r10d
test rax, rax
je 0x140202b63
mov edx, dword [rsi + 4]
lea r9, [r15 + 0x90]
mov r8, rax
mov rcx, rdi
call fcn.1401cb3dc
mov r14d, eax
xor r10d, r10d
mov edx, 0x2400
test word [rbp + 0x108], dx
jne 0x140202b7e
cmp dword [rbp + 0x120], r10d
je 0x1402026b9
lea rcx, [rbp + 0x100]
call fcn.14020b7cc
xor r10d, r10d
mov edx, 0x2400
jmp 0x1402026b9
add dword [rdi + 0xcc], r13d
mov rcx, rdi
mov r8, qword [rsi + 0x10]
mov edx, dword [rsi + 4]
call fcn.1401cb0ec
dec dword [rdi + 0xcc]
jmp 0x140200bd6
mov rax, qword [rsi + 0x10]
mov qword [rbp - 0x78], r10
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x1402036c3
mov rdi, qword [rbx]
test rdi, rdi
je 0x1402036c3
lea rdx, [rbp - 0x78]
mov rcx, rbx
call qword [rdi + Ordinal_50]
mov rdx, rbx
mov rcx, r15
mov r14d, eax
call fcn.140206264
xor r10d, r10d
test r14d, r14d
jne 0x1401ff1c7
mov rax, qword [rbp - 0x78]
or r9d, 0xffffffff
xor r8d, r8d
mov rcx, r15
mov qword [rax], rbx
lea eax, [r10 + 2]
mov edx, dword [rsi + 4]
mov byte [rsp + 0x20], al
call fcn.140203e1c
mov rcx, qword [rbp - 0x78]
xor r10d, r10d
test rax, rax
je 0x1402036bb
mov qword [rax + 0x38], rcx
add dword [rbx + 8], r13d
jmp 0x1401fff36
movsxd rax, dword [rsi + 0xc]
mov r8, r10
movsxd rcx, dword [rsi + 4]
mov r14, qword [r15 + 0x78]
imul rdx, rax, 0x38
mov rax, qword [r15 + 0x98]
add rdx, r12
mov rax, qword [rax + rcx*8]
lea r11, [rdx + 0x38]
mov qword [rsp + 0x70], rax
movsxd r9, dword [r11]
mov edx, dword [rdx]
mov rbx, qword [rax + 0x38]
mov r13, qword [rbx]
mov qword [rbp + 0x200], r13
mov r12, qword [r13]
test r9d, r9d
jle 0x140202caa
mov r13d, 1
mov r10d, r13d
movsxd rax, r10d
add r10d, r13d
imul rcx, rax, 0x38
add rcx, r11
mov qword [r14 + r8*8], rcx
add r8, r13
cmp r8, r9
jl 0x140202c8a
mov r13, qword [rbp + 0x200]
mov r8, qword [rsi + 0x10]
mov rcx, rbx
mov qword [rsp + 0x20], r14
call qword [r12 + 0x40]
mov rdx, r13
mov rcx, r15
mov r14d, eax
call fcn.140206264
xor r10d, r10d
test r14d, r14d
jne 0x1401ff1c7
mov rcx, rbx
call qword [r12 + 0x50]
mov rcx, qword [rsp + 0x70]
xor r10d, r10d
mov byte [rcx + 2], r10b
test eax, eax
je 0x1401fecd0
lea r13d, [r14 + 1]
jmp 0x1401ff125
mov r13d, 1
jmp 0x1401ff965
mov rax, qword [r15 + 0x98]
movsxd rcx, dword [rsi + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [rsi + 0xc]
imul rbx, rax, 0x38
add rbx, r12
cmp byte [rdi + 2], r10b
je 0x140202d3c
test word [rbx + 8], dx
je 0x1401feb93
mov rcx, rbx
call fcn.14020b810
jmp 0x1401feb83
mov rax, qword [rdi + 0x38]
lea rcx, [rbp + 0x168]
xor edx, edx
mov r12, qword [rax]
lea r8d, [rdx + 0x38]
mov r14, qword [r12]
call fcn.14011d670
mov qword [rbp + 0x168], rbx
test byte [rsi + 2], r13b
je 0x140202d8f
mov eax, 0x2400
test word [rbx + 8], ax
je 0x140202d7b
mov rcx, rbx
call fcn.14020b810
jmp 0x140202d80
mov word [rbx + 8], r13w
mov eax, 0x4001
mov word [rbx + 8], ax
xor eax, eax
mov dword [rbx], eax
jmp 0x140202d9d
mov eax, 0x3e00
and word [rbx + 8], ax
or word [rbx + 8], r13w
mov r8d, dword [rsi + 8]
lea rdx, [rbp + 0x168]
mov rcx, qword [rdi + 0x38]
call qword [r14 + 0x58]
mov rdx, r12
mov rcx, r15
mov r14d, eax
call fcn.140206264
xor eax, eax
cmp dword [rbp + 0x18c], eax
jle 0x140202dec
mov dl, r13b
mov rcx, rbx
call fcn.14020ac0c
mov r8, rax
lea rdx, [0x1406e9314]
mov rcx, r15
call fcn.14020a5f4
mov r14d, dword [rbp + 0x18c]
movzx ecx, byte [rbp + 0x1f8]
mov r8d, 2
test byte [rbx + 8], r8b
je 0x140202e17
movzx eax, byte [rbx + 0xa]
cmp eax, ecx
je 0x140202e17
mov dl, cl
mov rcx, rbx
call fcn.140225988
mov r8d, 2
mov rcx, rbx
call fcn.14020b1bc
xor r10d, r10d
test eax, eax
jne 0x140202751
test r14d, r14d
jne 0x1401ff1c7
jmp 0x140200656
movsxd rcx, dword [rsi + 4]
mov rax, qword [r15 + 0x98]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], r10b
jne 0x1401feb98
mov rcx, qword [rdi + 0x38]
mov rbx, qword [rcx]
mov r12, qword [rbx]
call qword [r12 + 0x48]
mov rdx, rbx
mov rcx, r15
mov r14d, eax
call fcn.140206264
xor r10d, r10d
test r14d, r14d
jne 0x1401ff1c7
mov rcx, qword [rdi + 0x38]
call qword [r12 + 0x50]
mov rdi, qword [rsp + 0x38]
xor r10d, r10d
test eax, eax
jne 0x140202ea4
mov eax, dword [rsi + 8]
sub eax, r13d
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [rsp + 0x30]
lea rsi, [rax + rcx*8]
mov r11d, 4
mov eax, dword [rdi + 0x160]
test eax, eax
jne 0x140203904
mov r9d, dword [rbp - 0x70]
cmp r9d, dword [rbp - 0x6c]
jb 0x140203301
mov r8, qword [rdi + 0x1b0]
test r8, r8
je 0x140203301
mov ecx, dword [rdi + 0x1c0]
xor edx, edx
mov eax, r9d
div ecx
sub ecx, edx
add ecx, r9d
mov dword [rbp - 0x6c], ecx
mov rcx, qword [rdi + reloc.OLEAUT32.dll_VarUI8FromDec]
call r8
xor r10d, r10d
test eax, eax
je 0x1401fe959
mov r14d, 9
jmp 0x1401ff1c7
mov r12d, dword [rdi + 0x30]
mov ecx, 0x4000000
or qword [rdi + 0x30], rcx
and r12d, ecx
mov rax, qword [rsi + 0x10]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rsi + 4]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x40]
test byte [rbx + 8], r8b
je 0x140202f4f
cmp byte [rbx + 0xa], r13b
je 0x140202f4f
mov dl, r13b
mov rcx, rbx
call fcn.140225988
mov r14d, eax
xor r10d, r10d
jmp 0x140202f52
mov r14d, r10d
test r14d, r14d
jne 0x1401ff1c7
mov rax, qword [rdi]
mov rcx, rdi
mov rdx, qword [rbx + 0x10]
call qword [rax + 0x98]
mov r14d, eax
test r12d, r12d
jne 0x140202f7e
mov rax, qword [rsp + 0x38]
btr qword [rax + 0x30], 0x1a
mov rdx, rdi
mov rcx, r15
call fcn.140206264
and dword [r15 + 0xc4], 0xfffffffc
xor r10d, r10d
test r14d, r14d
jne 0x1401ff1c7
jmp 0x1401fe954
cmp byte [rdi + 0x61], r10b
jne 0x1401feaa7
mov rax, qword [rsi + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x1402036c3
mov r10, qword [rbx]
xor r11d, r11d
test r10, r10
je 0x1402036c3
movsxd rdx, dword [rsi + 8]
cmp qword [r10 + 0x68], r11
je 0x140203458
movsxd rax, dword [rsi + 0xc]
mov dil, byte [rdi + 0x66]
mov r8, qword [r15 + 0x78]
imul rcx, rax, 0x38
mov eax, r11d
add rcx, r12
test edx, edx
jle 0x140203004
mov qword [r8 + rax*8], rcx
add rcx, 0x38
add rax, r13
cmp rax, rdx
jl 0x140202ff4
mov al, byte [rsi + 2]
lea r9, [rbp + 0x28]
mov r12, qword [rsp + 0x38]
mov rcx, rbx
mov byte [r12 + 0x66], al
call qword [r10 + 0x68]
mov rdx, rbx
mov byte [r12 + 0x66], dil
mov rcx, r15
mov r14d, eax
call fcn.140206264
xor r10d, r10d
mov rdi, r12
test r14d, r14d
jne 0x140203049
cmp dword [rsi + 4], r10d
je 0x140203049
mov rax, qword [rbp + 0x28]
mov qword [r12 + 0x38], rax
cmp r14b, 0x13
jne 0x14020308d
mov rax, qword [rsi + 0x10]
cmp byte [rax + 0x1c], r10b
je 0x14020308d
mov r11d, 4
cmp word [rsi + 2], r11w
jne 0x14020306e
mov r14d, r10d
jmp 0x1401fee43
mov eax, 5
cmp word [rsi + 2], ax
jne 0x140203080
mov eax, 2
jmp 0x140203084
movzx eax, word [rsi + 2]
mov byte [r15 + 0xbe], al
jmp 0x140203097
add dword [r15 + 0x3c], r13d
mov r11d, 4
test r14d, r14d
jne 0x1401ff1c7
jmp 0x1401fee43
mov rdx, rsi
mov rcx, r15
call fcn.140203bdc
mov rcx, qword [rdi + 0x20]
movsxd rdx, dword [rsi + 4]
shl rdx, 5
mov rdx, qword [rdx + rcx + 8]
mov rcx, qword [rdx + 8]
mov edx, dword [rcx + 0x3c]
mov qword [rax], rdx
jmp 0x1401fe762
mov rdx, rsi
mov rcx, r15
call fcn.140203bdc
movsxd rdx, dword [rsi + 4]
mov rbx, rax
mov rcx, qword [rdi + 0x20]
xor eax, eax
mov r8d, dword [rsi + 0xc]
shl rdx, 5
mov rcx, qword [rdx + rcx + 8]
mov edx, eax
test r8d, r8d
je 0x14020310a
mov rdx, qword [rcx + 8]
mov edx, dword [rdx + 0x3c]
cmp edx, r8d
cmovb edx, r8d
call fcn.14021467c
movsxd rcx, eax
mov qword [rbx], rcx
jmp 0x1401fe762
movzx ebx, word [rsi + 2]
mov rcx, rdi
lea eax, [rbx - 1]
movsxd rdx, eax
lea rdx, [rdx*8 + 0x38]
call fcn.140227e28
xor r10d, r10d
mov r8, rax
test rax, rax
je 0x1401feaa7
mov qword [rax], r10
mov rcx, qword [rsi + 0x10]
mov qword [rax + 8], rcx
mov rcx, rsi
sub rcx, qword [rsp + 0x30]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov qword [r8 + 0x18], r15
sar rdx, 2
mov dword [r8 + 0x24], r10d
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov byte [r8 + 0x29], bl
mov dword [r8 + 0x20], edx
lea eax, [r10 + 2]
add byte [rsi], al
mov byte [rsi + 1], 0xf0
mov qword [rsi + 0x10], r8
movsxd rax, dword [rsi + 0xc]
mov rdi, qword [rsi + 0x10]
imul rbx, rax, 0x38
add rbx, r12
cmp qword [rdi], rbx
je 0x1402031e3
movzx edx, byte [rdi + 0x29]
sub edx, r13d
mov qword [rdi], rbx
movsxd r8, edx
js 0x1402031e3
lea r9, [r8 + 6]
mov r15d, 8
lea r9, [rdi + r9*8]
mov eax, dword [rsi + 8]
add eax, edx
sub edx, r13d
cdqe
imul rcx, rax, 0x38
add rcx, r12
mov qword [r9], rcx
sub r9, r15
sub r8, r13
jns 0x1402031c0
mov r15, qword [rbp + 0x1f0]
mov eax, 0x3e00
lea r8, [rdi + 0x30]
and word [rbx + 8], ax
mov rcx, rdi
or word [rbx + 8], r13w
mov rax, qword [rdi + 8]
movzx edx, byte [rdi + 0x29]
call qword [rax + Ordinal_26]
mov eax, dword [rdi + 0x24]
xor r10d, r10d
test eax, eax
je 0x140203259
jle 0x140203230
mov dl, r13b
mov rcx, rbx
call fcn.14020ac0c
mov r8, rax
lea rdx, [0x1406e9334]
mov rcx, r15
call fcn.14020a5f4
mov r14d, dword [rdi + 0x24]
mov r9d, dword [rsi + 4]
lea rdx, [r15 + 0x120]
mov r8d, dword [rdi + 0x20]
mov rcx, qword [rsp + 0x38]
call fcn.1402079a4
xor r10d, r10d
mov dword [rdi + 0x24], r10d
test r14d, r14d
jne 0x1401ff1c7
test byte [rbx + 8], 0x12
mov r8d, 2
je 0x1402032eb
movzx ecx, byte [rbp + 0x1f8]
test byte [rbx + 8], r8b
je 0x14020328f
movzx eax, byte [rbx + 0xa]
cmp eax, ecx
je 0x14020328f
mov dl, cl
mov rcx, rbx
call fcn.140225988
xor r10d, r10d
lea r8d, [r10 + 2]
mov rcx, rbx
call fcn.14020b1bc
test eax, eax
jne 0x140202751
jmp 0x14020065b
mov r13, rax
mov rdi, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
mov r8d, 2
mov r11d, 4
jmp 0x1401fe8d5
mov r13d, 1
xor r10d, r10d
jmp 0x1402032a7
mov r13d, 1
jmp 0x1402032a7
mov rdi, qword [rsp + 0x38]
mov r13d, 1
mov r8d, 2
jmp 0x1401fe8d5
mov rdi, qword [rsp + 0x38]
jmp 0x1402032b7
mov rdi, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
jmp 0x1402032b7
mov rdi, r12
mov r12, qword [rsp + 0x40]
jmp 0x1402032e0
mov rdi, qword [rsp + 0x38]
jmp 0x1402032b1
mov al, byte [rdi + 0x68]
test al, 0x81
je 0x1402033f1
mov ecx, reloc.WS2_32.dll_recv
test byte [r15 + 0xc4], cl
jne 0x1402033f1
mov r9, qword [rsi + 0x10]
test r9, r9
jne 0x140203345
mov r9, qword [r15 + 0xf0]
test r9, r9
je 0x1402033ec
test al, al
jns 0x14020337e
mov rdi, qword [rdi + 0xe0]
mov rdx, r9
mov rcx, r15
call fcn.140203f40
mov r10, qword [rsp + 0x38]
mov rdx, rax
mov rbx, rax
mov rcx, qword [r10 + 0xe8]
call rdi
mov rcx, rbx
call fcn.14022b424
mov rdi, qword [rsp + 0x38]
jmp 0x1402033da
cmp dword [rdi + 0xc8], r13d
jle 0x1402033c7
mov r8, r9
lea rdx, [0x1406e96e4]
mov rcx, rdi
call fcn.1402264f8
mov rdx, qword [rdi + 0xe8]
mov r9, rax
mov r8, r15
mov ecx, r13d
mov rbx, rax
call qword [rdi + 0xe0]
xor r10d, r10d
test rbx, rbx
je 0x1402033dd
mov rdx, rbx
mov rcx, rdi
call fcn.140228168
jmp 0x1402033da
mov rdx, qword [rdi + 0xe8]
mov r8, r15
mov ecx, r13d
call qword [rdi + 0xe0]
xor r10d, r10d
mov r11d, 4
mov edx, 0x2400
lea r8d, [r11 - 2]
mov r9, qword [rsp + 0x30]
mov eax, dword [0x1406f02f8]
cmp dword [rsi + 4], eax
jl 0x140203439
cmp byte [rsi], 0xa9
je case.0x1401fe597.86
mov edx, r13d
cmp dword [r15 + 0xb8], r13d
jle 0x140203435
mov eax, Ordinal_27
mov rcx, qword [r15 + 0x68]
cmp byte [rax + rcx], 0x11
jne 0x140203425
mov dword [rax + rcx + 4], r10d
add edx, r13d
add rax, 0x18
cmp edx, dword [r15 + 0xb8]
jl 0x140203416
mov dword [rsi + 4], r10d
add dword [rsi + 4], r13d
add dword [r15 + 0xe8], r13d
jmp 0x1401ff12a
mov rdi, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
jmp 0x1401fe8d5
xor r10d, r10d
jmp 0x140200665
mov ecx, dword [rsi + 4]
mov dword [r15 + 0x38], ecx
mov al, byte [rsi + 8]
mov byte [r15 + 0xbe], al
mov dword [r15 + 0x34], ebx
test ecx, ecx
je 0x140203509
mov rcx, r15
cmp word [rsi + 2], r10w
je 0x1402034d4
movzx eax, word [rsi + 2]
lea rdx, [0x1406ea818]
sub eax, r13d
movsxd r8, eax
lea rax, [0x140000000]
mov r8, qword [rax + r8*8 + 0x697c58]
call fcn.14020a5f4
mov r9, qword [rsi + 0x10]
test r9, r9
je 0x1402034e4
mov r8, qword [r15 + 0x90]
lea rdx, str._z:__s
mov rcx, rdi
call fcn.1402264f8
mov qword [r15 + 0x90], rax
jmp 0x1402034e4
mov r8, qword [rsi + 0x10]
lea rdx, [0x1406e92c4]
call fcn.14020a5f4
mov rax, qword [r15 + 0x90]
lea rdx, str.abort_at__d_in___s_:__s
mov r9, qword [r15 + 0xf0]
mov r8d, ebx
mov ecx, dword [rsi + 4]
mov qword [rsp + 0x20], rax
call fcn.1402262c8
mov rcx, r15
call fcn.140207c18
mov r14d, eax
mov eax, 5
cmp r14d, eax
jne 0x1402038bd
mov dword [r15 + 0x38], eax
jmp 0x1401ff28d
mov r14d, reloc.WS2_32.dll_sendto
jmp 0x1401ff1c7
lea r8, str.database_corruption
mov edx, 0x14ebe
mov ecx, reloc.WS2_32.dll_inet_addr
call fcn.1401b5c8c
mov r14d, eax
xor r10d, r10d
jmp 0x1401ff1c7
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, r15
call fcn.14020a5f4
mov r14d, 5
jmp 0x14020354f
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
jmp 0x14020355e
sub rsi, qword [rsp + 0x30]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rsi
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
xor r10d, r10d
mov dword [r15 + 0x34], edx
mov byte [r14 + 0x5f], r10b
mov r14d, ecx
mov dword [r15 + 0x38], ecx
jmp 0x1401ff290
mov r8, r12
lea rdx, str.no_such_savepoint:__s
mov rcx, r15
call fcn.14020a5f4
mov r14d, 1
jmp 0x14020354f
mov r14d, 8
jmp 0x1401ff1c7
mov eax, 5
cmp r14b, al
jne 0x1401ff1c7
sub rsi, qword [rsp + 0x30]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rsi
mov dword [r15 + 0x38], r14d
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r15 + 0x34], edx
jmp 0x1401ff290
mov r14d, 0x204
jmp 0x1401ff1c7
mov r14d, reloc.WS2_32.dll_listen
jmp 0x14020354f
mov eax, 2
mov byte [r15 + 0xbe], al
lea r14d, [rax + 4]
jmp 0x14020354f
mov r14d, 7
mov rcx, rdi
call fcn.1401ed034
mov r12d, 7
cmp r14d, r12d
je 0x1401feaad
xor r10d, r10d
jmp 0x1401ff1cd
lea rdx, str.too_many_levels_of_trigger_recursion
mov rcx, r15
mov r14d, r13d
call fcn.14020a5f4
jmp 0x14020354f
mov dl, r13b
mov rcx, rbx
call fcn.14020ac0c
lea rdx, [0x1406e9304]
mov r8, rax
mov rcx, r15
call fcn.14020a5f4
jmp 0x14020354f
cmp ebx, r9d
lea rax, str.into
lea r8, str.out_of
mov r14d, 1
cmove r8, rax
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
jmp 0x14020368a
call qword [rdi + gethostname]
jmp 0x1401feaa2
mov r14d, 6
jmp 0x1401ff1c7
mov rax, qword [rdi + 0x1b0]
test rax, rax
je 0x1402036f6
mov ecx, dword [rbp - 0x70]
cmp ecx, dword [rbp - 0x6c]
jb 0x1402036f6
mov rcx, qword [rdi + reloc.OLEAUT32.dll_VarUI8FromDec]
call rax
xor r10d, r10d
test eax, eax
jne 0x140202f00
xor edx, edx
mov rcx, r15
call fcn.140207f18
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff1c7
mov rax, qword [r15]
cmp dword [rax + 0x290], r10d
je 0x14020372e
cmp dword [r15 + 0x40], r10d
je 0x14020372e
mov edx, r13d
mov rcx, r15
call fcn.140207f8c
xor r10d, r10d
mov eax, dword [r15 + 0x30]
mov edi, r10d
add eax, 2
or eax, r13d
mov dword [r15 + 0x30], eax
movsxd rax, dword [rsi + 4]
imul r14, rax, 0x38
add r14, r12
mov qword [r15 + 0x88], r14
cmp dword [rsi + 8], r10d
jle 0x1402037a9
lea rbx, [r14 + 8]
mov eax, 0x1000
test word [rbx], ax
je 0x14020377c
movsxd rax, edi
imul rcx, rax, 0x38
add rcx, r14
call fcn.14020bb00
test eax, eax
jne 0x1401feaa2
movzx eax, word [rbx]
mov ecx, 0x202
and ax, cx
mov ecx, 2
cmp ax, cx
jne 0x14020379a
lea rcx, [rbx - 8]
call fcn.14020bb64
add edi, r13d
add rbx, 0x38
cmp edi, dword [rsi + 8]
jl 0x14020375b
xor r10d, r10d
mov rdi, qword [rsp + 0x38]
cmp byte [rdi + 0x61], r10b
jne 0x1401feaa7
mov r11d, 4
test byte [rdi + 0x68], r11b
je 0x1402037dd
mov rdx, qword [rdi + 0xe8]
xor r9d, r9d
mov r8, r15
mov ecx, r11d
call qword [rdi + 0xe0]
xor r10d, r10d
sub rsi, qword [rsp + 0x30]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rsi
mov r14d, 0x64
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
add edx, r13d
mov dword [r15 + 0x34], edx
jmp 0x1401ff290
movzx eax, byte [rdi + 0x5f]
mov ebx, dword [rsi + 4]
mov ecx, dword [rsi + 8]
cmp ebx, eax
je 0x1402038d3
test ecx, ecx
je 0x140203838
mov edx, 0x204
mov rcx, rdi
call fcn.1401b7e58
mov byte [rdi + 0x5f], r13b
jmp 0x14020386d
test ebx, ebx
je 0x140203851
cmp dword [rdi + 0xc4], r10d
jle 0x140203851
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
jmp 0x14020355e
mov edx, r13d
mov rcx, r15
call fcn.140207f18
xor r10d, r10d
mov r14d, eax
test eax, eax
jne 0x1401ff290
mov byte [rdi + 0x5f], bl
mov rcx, r15
call fcn.140207c18
mov ecx, 5
cmp eax, ecx
jne 0x1402038b5
sub rsi, qword [rsp + 0x30]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rsi
mov r14d, ecx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
sub r13b, bl
mov dword [r15 + 0x34], edx
mov byte [rdi + 0x5f], r13b
mov dword [r15 + 0x38], ecx
jmp 0x1401ff28d
mov rcx, rdi
call fcn.1401b844c
mov eax, dword [r15 + 0x38]
neg eax
sbb r14d, r14d
and r14d, 0xffffff9c
add r14d, 0x65
jmp 0x1401ff28d
test ecx, ecx
lea rax, str.cannot_rollback___no_transaction_is_active
lea rdx, str.cannot_commit___no_transaction_is_active
mov rcx, r15
cmovne rdx, rax
test ebx, ebx
lea rax, str.cannot_start_a_transaction_within_a_transaction
cmove rdx, rax
call fcn.14020a5f4
mov r14d, r13d
jmp 0x14020354f
mov al, byte [rdi + 0x61]
neg al
sbb r14d, r14d
and r14d, 0xfffffffe
add r14d, 9
mov ecx, r14d
mov dword [r15 + 0x38], r14d
call fcn.1401b7df8
lea rdx, [0x1406e936c]
jmp 0x140203687