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

Disassembly:
mov r11, rsp
push rbp
push r13
lea rbp, [r11 - 0x368]
sub rsp, 0x458
mov rax, qword [0x1401b26d0]
xor rax, rsp
mov qword [rbp + 0x310], rax
mov rax, qword [rcx + 0x68]
mov r13, rcx
mov qword [r11 + 0x10], rbx
mov qword [r11 + 0x18], rsi
mov qword [r11 + 0x20], rdi
mov qword [r11 - 0x18], r12
mov r12, qword [rcx]
mov qword [r11 - 0x20], r14
mov r14, qword [rcx + 0x70]
mov qword [r11 - 0x28], r15
xor r15d, r15d
mov rbx, qword [r12 + 0x30]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x30], rax
movzx eax, byte [r12 + 0x52]
movaps xmmword [r11 - 0x38], xmm6
mov byte [rsp + 0x48], al
mov qword [rsp + 0x40], rbx
movaps xmmword [r11 - 0x48], xmm7
mov qword [rbp - 0x80], rcx
mov dword [rsp + 0x3c], r15d
mov qword [rsp + 0x58], r12
mov byte [rsp + 0x78], r15b
mov dword [rbp - 0x70], r15d
mov dword [rsp + 0x38], r15d
mov dword [rbp - 0x3c], r15d
mov qword [rsp + 0x60], r14
mov qword [rbp + 0x10], r15
call fcn.1400443c0
cmp dword [r13 + 0x38], 7
lea r10d, [r15 + 1]
je 0x14004eb3b
mov dword [r13 + 0x38], r15d
mov qword [r13 + 0x48], r15
mov qword [r13 + 0x88], r15
mov eax, dword [r12 + 0x150]
mov dword [r12 + 0x228], r15d
test eax, eax
jne 0x1400524cb
cmp qword [r12 + 0x1a0], r15
je 0x14004d1df
mov r8d, dword [r12 + 0x1b0]
xor edx, edx
mov eax, dword [r13 + 0xdc]
div r8d
sub r8d, edx
mov dword [rbp - 0x3c], r8d
movsxd rax, dword [r13 + 0x34]
mov edx, 0x2460
mov r9, qword [rsp + 0x50]
xorps xmm7, xmm7
mov r11d, r15d
lea rcx, [rax + rax*2]
lea rdi, [r9 + rcx*8]
mov qword [rsp + 0x30], rdi
lea rcx, [0x140000000]
mov rsi, rdi
inc r11d
mov rdi, rbx
movzx ebx, byte [rsi]
mov r8d, 0x1000
mov dword [rsp + 0x38], r11d
cmp ebx, 0x9f
ja case.default.0x14004d23b
mov ecx, dword [rcx + rbx*4 + 0x5252c]
lea rax, [0x140000000]
add rcx, rax
jmp rcx
mov rcx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
sub rcx, r9
imul r8, rax, 0x38
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov word [r8 + r14 + 8], 4
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + r14], rax
jmp 0x140051f30
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + r14]
lea rcx, [rax + rax*2]
mov word [rdx + r14 + 8], 0x80
lea rsi, [r9 + rcx*8]
mov edx, 0x2460
jmp case.0x14004d23b.112
mov rax, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0xc]
dec eax
mov word [rcx + r14 + 8], 4
cdqe
mov qword [rcx + r14], rax
cmp dword [rsi + 8], 0
jne 0x140051f30
jmp case.0x14004d23b.112
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + r14]
lea rcx, [rax + rax*2]
mov eax, dword [r9 + rcx*8 + 8]
dec eax
cdqe
jmp 0x14004d291
mov rbx, qword [rsp + 0x30]
movsxd rax, dword [rbx + 4]
sub rbx, r9
imul r8, rax, 0x38
movabs rax, 0x2aaaaaaaaaaaaaab
imul rbx
movsxd rcx, dword [r8 + r14]
sar rdx, 2
mov rax, rdx
mov word [r8 + r14 + 8], 4
shr rax, 0x3f
add rax, rdx
lea rcx, [rcx + rcx*2]
cdqe
lea rsi, [r9 + rcx*8]
mov qword [r8 + r14], rax
mov edx, 0x2460
jmp case.0x14004d23b.112
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r14 + 8], 1
je 0x14004d6f0
mov rcx, qword [rsp + 0x30]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, r9
imul rcx
mov rbx, rdx
mov rdx, qword [rsp + 0x30]
sar rbx, 2
mov rax, rbx
shr rax, 0x3f
mov ecx, dword [rdx + 4]
add rbx, rax
test ecx, ecx
jne 0x140051f70
mov rdi, qword [r13 + 0xf0]
test rdi, rdi
je 0x140051f70
mov rax, qword [rdi + 8]
mov rcx, r12
mov edx, dword [r13 + 0x3c]
dec dword [r13 + 0x100]
mov qword [r13 + 0xf0], rax
call fcn.140048e40
mov rcx, rdi
call fcn.140045330
mov rcx, qword [rsp + 0x30]
mov rbx, qword [r12 + 0x30]
mov qword [rsp + 0x40], rbx
cmp dword [rcx + 8], 4
jne 0x14004d3fd
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r13 + 0x68]
mov eax, dword [rax + rcx*8 + 8]
dec eax
mov r9, qword [r13 + 0x68]
mov r14, qword [r13 + 0x70]
cdqe
mov qword [rsp + 0x50], r9
mov qword [rsp + 0x60], r14
lea rcx, [rax + rax*2]
lea rsi, [r9 + rcx*8]
mov r11d, dword [rsp + 0x38]
mov r10d, 1
mov edx, 0x2460
lea rcx, [0x140000000]
mov r13, qword [rbp - 0x80]
add rsi, 0x18
mov qword [rsp + 0x30], rsi
jmp 0x14004d20a
mov rdx, qword [rsp + 0x30]
mov rcx, r13
call fcn.14004d0b0
mov rcx, rax
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
mov qword [rcx], rax
mov rsi, qword [rsp + 0x30]
mov r9, qword [rsp + 0x50]
mov r10d, 1
mov r11d, dword [rsp + 0x38]
mov edx, 0x2460
jmp case.0x14004d23b.112
mov rdx, qword [rsp + 0x30]
mov rcx, r13
call fcn.14004d0b0
mov rdx, rax
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x14004d45e
mov rdx, qword [rsp + 0x30]
mov rcx, r13
call fcn.14004d0b0
mov rdx, rax
mov word [rax + 8], 8
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x14004d45e
mov rdi, qword [rsp + 0x30]
mov rcx, r13
mov rdx, rdi
call fcn.14004d0b0
mov rcx, qword [rdi + 0x10]
mov rbx, rax
mov byte [rdi], Ordinal_79
call fcn.140020ff0
mov rcx, rdi
mov dword [rdi + 4], eax
movzx edi, byte [rsp + 0x48]
cmp dil, 1
je 0x14004d560
mov rdx, qword [rcx + 0x10]
mov r9b, 1
mov rcx, rbx
mov qword [rsp + 0x20], r15
mov r8d, 0xffffffff
call fcn.140041f10
mov edx, edi
mov dword [rsp + 0x3c], eax
mov rcx, rbx
call fcn.140040e60
test eax, eax
jne 0x14004eb3b
mov rcx, qword [rsp + 0x30]
mov eax, 0x800
or word [rbx + 8], ax
mov dword [rbx + 0x20], r15d
cmp byte [rcx + 1], 0xff
jne 0x14004d54e
mov rdx, qword [rcx + 0x10]
mov rcx, r12
call fcn.14001e040
mov rcx, qword [rsp + 0x30]
mov byte [rcx + 1], 0xff
mov rax, qword [rbx + 0x10]
mov qword [rcx + 0x10], rax
mov eax, dword [rbx + 0xc]
mov dword [rcx + 4], eax
cmp eax, dword [r12 + 0x70]
jg 0x14005224c
jmp 0x14004d572
movzx edi, byte [rsp + 0x48]
mov rbx, qword [rsp + 0x30]
movsxd rax, dword [rbx + 8]
imul rdx, rax, 0x38
mov eax, 0x2460
add rdx, qword [r13 + 0x70]
test word [rdx + 8], ax
je 0x14004d599
mov rcx, rdx
call fcn.14004d080
mov rdx, rax
mov word [rdx + 8], 0xa02
mov rax, qword [rbx + 0x10]
mov qword [rdx + 0x10], rax
mov eax, dword [rbx + 4]
mov dword [rdx + 0xc], eax
mov byte [rdx + 0xa], dil
movsxd rax, dword [rbx + 0xc]
test eax, eax
jle 0x14004f578
mov r9, qword [rsp + 0x50]
mov rsi, rbx
mov r11d, dword [rsp + 0x38]
mov r10d, 1
imul rcx, rax, 0x38
movzx eax, byte [rbx + 3]
mov rbx, qword [rsp + 0x40]
cmp qword [rcx + r14], rax
lea rcx, [0x140000000]
jne 0x14004d5f0
mov word [rdx + 8], 0xa10
mov edx, 0x2460
mov r13, qword [rbp - 0x80]
add rsi, 0x18
mov qword [rsp + 0x30], rsi
jmp 0x14004d20a
mov rbx, qword [rsp + 0x30]
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x70]
test word [rcx + 8], dx
je 0x14004d63d
call fcn.14004d080
mov r9, qword [rsp + 0x50]
mov rcx, rax
mov r11d, dword [rsp + 0x38]
mov r10d, 1
mov edx, 0x2460
jmp 0x14004d643
mov word [rcx + 8], 4
cmp dword [rbx + 4], 0
mov esi, r10d
mov edi, dword [rbx + 0xc]
mov r8d, 0x101
mov eax, dword [rbx + 8]
cmovne si, r8w
sub edi, eax
mov word [rcx + 8], si
mov dword [rcx + 0xc], r15d
lea rbx, [rcx + 8]
test edi, edi
jle 0x14004d6f0
test word [rbx + 0x38], dx
lea rbx, [rbx + 0x38]
je 0x14004d689
lea rcx, [rbx - 8]
call fcn.140041630
mov edx, 0x2460
dec edi
mov word [rbx], si
mov dword [rbx + 4], r15d
test edi, edi
jg 0x14004d671
mov rsi, qword [rsp + 0x30]
mov r10d, 1
mov r11d, dword [rsp + 0x38]
mov r9, qword [rsp + 0x50]
lea rcx, [0x140000000]
mov rbx, qword [rsp + 0x40]
mov r13, qword [rbp - 0x80]
add rsi, 0x18
mov qword [rsp + 0x30], rsi
jmp 0x14004d20a
mov rax, qword [rsp + 0x30]
mov r8d, 0xff7f
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
movzx eax, word [rcx + r14 + 8]
and ax, r8w
or ax, 1
mov word [rcx + r14 + 8], ax
mov rsi, qword [rsp + 0x30]
jmp case.0x14004d23b.112
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
add rbx, qword [r13 + 0x70]
test word [rbx + 8], dx
je 0x14004d71b
mov rcx, rbx
call fcn.14004d080
mov rbx, rax
jmp 0x14004d721
mov word [rbx + 8], 4
mov rax, qword [rsp + 0x30]
xor r9d, r9d
mov rcx, rbx
mov qword [rsp + 0x20], r15
mov r8d, dword [rax + 4]
mov rdx, qword [rax + 0x10]
call fcn.140041f10
movzx eax, byte [rsp + 0x48]
mov byte [rbx + 0xa], al
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 4]
dec eax
cdqe
imul rbx, rax, 0x38
add rbx, qword [r13 + 0xa0]
mov rcx, rbx
call fcn.140041dc0
test eax, eax
jne 0x14005224c
mov rdx, qword [rsp + 0x30]
mov rcx, r13
call fcn.14004d0b0
mov r8d, 0x800
mov rdx, rbx
mov rcx, rax
call fcn.140041e30
jmp 0x14004d45e
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r14
add rbx, r14
test word [rbx + 8], dx
jne 0x14004d7bf
cmp dword [rbx + 0x20], 0
je 0x14004d7d3
mov rcx, rbx
call fcn.1400416b0
mov r10d, 1
mov r8d, 0x1000
movups xmm0, xmmword [rdi]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [rbx + 0x20], xmm0
movsd xmm1, qword [rdi + 0x30]
movsd qword [rbx + 0x30], xmm1
mov word [rdi + 8], r10w
mov dword [rdi + 0x20], r15d
test word [rbx + 8], r8w
je 0x14004d81d
mov rcx, rbx
call fcn.1400411f0
test eax, eax
jne 0x14004eb3b
lea r10d, [rax + 1]
mov r8d, 0x1000
add rdi, 0x38
add rbx, 0x38
mov edx, 0x2460
sub esi, 1
jne 0x14004d7b3
mov rsi, qword [rsp + 0x30]
jmp 0x14004d6a1
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r14
add rbx, r14
nop word [rax + rax]
mov rdx, rdi
mov rcx, rbx
call fcn.140041e30
mov r8d, 0x1000
test word [rbx + 8], r8w
je 0x14004d88e
mov rcx, rbx
call fcn.1400411f0
test eax, eax
jne 0x14004eb3b
mov r8d, 0x1000
mov eax, esi
dec esi
test eax, eax
je 0x14004d45e
add rbx, 0x38
add rdi, 0x38
jmp 0x14004d860
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rdx, r14
add rcx, r14
call fcn.140041e30
jmp 0x14004d45e
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 8]
imul r8, rax, 0x38
movsxd rax, dword [rcx + 4]
imul rcx, rax, 0x38
add r8, r14
mov rax, qword [rcx + r14]
test word [r8 + 8], dx
je 0x14004d8fc
mov rdx, rax
mov rcx, r8
call fcn.140041c70
jmp 0x14004d45e
mov rsi, qword [rsp + 0x30]
mov qword [r8], rax
mov word [r8 + 8], 4
jmp case.0x14004d23b.112
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
imul rsi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add rsi, r14
imul rdi, rax, 0x38
movzx ecx, word [rsi + 8]
add rbx, r14
movzx eax, cl
add rdi, r14
or al, byte [rbx + 8]
test al, 1
je 0x14004d951
mov rcx, rdi
call fcn.140041c50
jmp 0x14004d45e
mov r14d, 0x4000
test r14w, cx
je 0x14004d96d
mov rcx, rsi
call fcn.1400412f0
test eax, eax
jne 0x14004eb3b
test word [rbx + 8], r14w
je 0x14004d984
mov rcx, rbx
call fcn.1400412f0
test eax, eax
jne 0x14004eb3b
test byte [rsi + 8], 0x12
movzx r14d, byte [rsp + 0x48]
jne 0x14004d9a7
xor r8d, r8d
movzx edx, r14b
mov rcx, rsi
call fcn.1400413b0
test eax, eax
jne 0x14004eb3b
test byte [rbx + 8], 0x12
jne 0x14004d9c4
xor r8d, r8d
movzx edx, r14b
mov rcx, rbx
call fcn.1400413b0
test eax, eax
jne 0x14004eb3b
mov r14d, dword [rsi + 0xc]
add r14d, dword [rbx + 0xc]
movsxd rax, dword [r12 + 0x70]
movsxd r15, r14d
cmp r15, rax
jg 0x14005224c
xor r8d, r8d
lea edx, [r14 + 2]
cmp rdi, rbx
mov rcx, rdi
sete r8b
call fcn.140040e80
test eax, eax
jne 0x14004eb3b
movzx eax, word [rdi + 8]
mov ecx, 0x3e00
and ax, cx
or ax, 2
mov word [rdi + 8], ax
cmp rdi, rbx
je 0x14004da25
movsxd r8, dword [rbx + 0xc]
mov rdx, qword [rbx + 0x10]
mov rcx, qword [rdi + 0x10]
call fcn.140132f60
movsxd rcx, dword [rbx + 0xc]
add rcx, qword [rdi + 0x10]
movsxd r8, dword [rsi + 0xc]
mov rdx, qword [rsi + 0x10]
call fcn.140132f60
mov rax, qword [rdi + 0x10]
mov byte [r15 + rax], 0
mov rax, qword [rdi + 0x10]
mov byte [rax + r15 + 1], 0
mov eax, 0x200
or word [rdi + 8], ax
movzx eax, byte [rsp + 0x48]
mov byte [rdi + 0xa], al
mov dword [rdi + 0xc], r14d
mov r14, qword [rsp + 0x60]
xor r15d, r15d
jmp 0x14004d45e
mov rbx, qword [rsp + 0x30]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
add rdi, r14
mov rcx, rdi
call fcn.14004d060
movzx r12d, ax
movsxd rax, dword [rbx + 8]
imul rsi, rax, 0x38
add rsi, r14
mov rcx, rsi
call fcn.14004d060
movzx r14d, ax
movsxd rax, dword [rbx + 0xc]
imul rbx, rax, 0x38
movzx eax, byte [rsi + 8]
add rbx, qword [rsp + 0x60]
or al, byte [rdi + 8]
test al, 1
jne 0x14004dc93
movzx eax, r14b
and al, r12b
test al, 4
je 0x14004dba0
mov rax, qword [rsp + 0x30]
mov r15b, 1
mov r8, qword [rsi]
mov rcx, qword [rdi]
mov qword [rbp - 0x18], r8
movzx edx, byte [rax]
sub edx, 0x2f
je 0x14004db63
sub edx, 1
je 0x14004db55
sub edx, 1
je 0x14004db47
cmp edx, 1
je 0x14004db1b
test rcx, rcx
je 0x14004dc90
cmp rcx, 0xffffffffffffffff
mov r9d, 1
mov rax, r8
cmove rcx, r9
cqo
idiv rcx
mov qword [rbp - 0x18], rdx
jmp 0x14004db73
test rcx, rcx
je 0x14004dc90
cmp rcx, 0xffffffffffffffff
jne 0x14004db39
movabs rax, 0x8000000000000000
cmp r8, rax
je 0x14004dba3
mov rax, r8
cqo
idiv rcx
mov qword [rbp - 0x18], rax
jmp 0x14004db73
mov rdx, rcx
lea rcx, [rbp - 0x18]
call fcn.140022350
jmp 0x14004db6f
mov rdx, rcx
lea rcx, [rbp - 0x18]
call fcn.1400222e0
jmp 0x14004db6f
mov rdx, rcx
lea rcx, [rbp - 0x18]
call fcn.140022290
test eax, eax
jne 0x14004dba3
mov rax, qword [rbp - 0x18]
mov ecx, 0x3e00
mov qword [rbx], rax
movzx eax, word [rbx + 8]
and ax, cx
or ax, 4
mov word [rbx + 8], ax
mov r12, qword [rsp + 0x58]
xor r15d, r15d
mov r14, qword [rsp + 0x60]
jmp 0x14004d45e
xor r15b, r15b
mov rcx, rdi
call fcn.140041890
mov rcx, rsi
movaps xmm6, xmm0
call fcn.140041890
mov rax, qword [rsp + 0x30]
movaps xmm3, xmm0
movzx ecx, byte [rax]
sub ecx, 0x2f
je 0x14004dc23
sub ecx, 1
je 0x14004dc1d
sub ecx, 1
je 0x14004dc17
cmp ecx, 1
je 0x14004dc09
cvttsd2si rcx, xmm6
cvttsd2si rax, xmm0
mov qword [rbp - 0x18], rax
test rcx, rcx
je 0x14004dc90
cmp rcx, 0xffffffffffffffff
mov r9d, 1
cqo
xorps xmm3, xmm3
cmove rcx, r9
idiv rcx
cvtsi2sd xmm3, rdx
jmp 0x14004dc27
ucomisd xmm6, xmm7
jp 0x14004dc11
je 0x14004dc90
divsd xmm3, xmm6
jmp 0x14004dc27
mulsd xmm3, xmm6
jmp 0x14004dc27
subsd xmm3, xmm6
jmp 0x14004dc27
addsd xmm3, xmm6
movsd qword [rbp - 0x68], xmm3
movsd xmm0, qword [rbp - 0x68]
movsd qword [rbp - 0x10], xmm0
movsd xmm2, qword [rbp - 0x68]
movsd xmm1, qword [rbp - 0x10]
ucomisd xmm2, xmm1
jp 0x14004dc90
jne 0x14004dc90
movzx eax, word [rbx + 8]
mov ecx, 0x3e00
and ax, cx
movsd qword [rbx], xmm3
or ax, 8
or r14b, r12b
mov word [rbx + 8], ax
test r14b, 8
jne 0x14004db8e
test r15b, r15b
jne 0x14004db8e
mov rcx, rbx
call fcn.1400418f0
mov r12, qword [rsp + 0x58]
xor r15d, r15d
mov r14, qword [rsp + 0x60]
jmp 0x14004d45e
xor r15d, r15d
mov edx, 0x2460
test word [rbx + 8], dx
je 0x14004dcb5
mov rcx, rbx
call fcn.140041630
mov r12, qword [rsp + 0x58]
mov r14, qword [rsp + 0x60]
jmp 0x14004d45e
mov rsi, qword [rsp + 0x30]
mov r10d, 1
mov r12, qword [rsp + 0x58]
mov r14, qword [rsp + 0x60]
mov word [rbx + 8], r10w
jmp 0x14004d6a1
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
test eax, eax
je 0x14004d6f0
imul rcx, rax, 0x38
xor edx, edx
add rcx, r14
call fcn.140041cb0
jmp 0x14004d45e
mov rdi, qword [rsp + 0x30]
mov rcx, r12
movzx ebx, byte [rdi + 3]
lea rdx, [rbx*8 + 0x30]
call fcn.14001e450
mov r8, rax
test rax, rax
je 0x14004eb3b
mov qword [rax], r15
mov rcx, rdi
mov rax, qword [rdi + 0x10]
sub rcx, qword [rsp + 0x50]
mov qword [r8 + 8], rax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov qword [r8 + 0x18], r13
sar rdx, 2
mov rax, rdx
mov byte [r8 + 0x2a], bl
shr rax, 0x3f
add rdx, rax
mov rax, rdi
mov dword [r8 + 0x20], edx
mov word [rdi], 0xeb5a
mov qword [rdi + 0x10], r8
jmp 0x14004dd6a
mov rax, qword [rsp + 0x30]
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul rdi, rax, 0x38
add rdi, r14
mov qword [rbp - 0x10], rdi
cmp qword [rbx], rdi
je 0x14004ddd4
movzx eax, byte [rbx + 0x2a]
mov edx, eax
mov qword [rbx], rdi
sub rdx, 1
lea r9d, [rax - 1]
js 0x14004ddd4
mov rdi, qword [rsp + 0x30]
lea r8, [rdx + 6]
lea r8, [rbx + r8*8]
nop dword [rax]
nop word [rax + rax]
mov eax, dword [rdi + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, r14
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x14004ddb0
mov rdi, qword [rbp - 0x10]
mov rcx, qword [rbx]
lea r8, [rbx + 0x30]
mov edx, 0x3e00
movzx eax, word [rcx + 8]
and ax, dx
or ax, 1
mov word [rcx + 8], ax
mov rcx, qword [rsp + 0x40]
mov byte [rbx + 0x29], 0
mov qword [r12 + 0x30], rcx
mov rcx, rbx
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x2a]
call qword [rax + Ordinal_26]
cmp byte [rbx + 0x29], 0
mov rax, qword [r12 + 0x30]
mov qword [rsp + 0x40], rax
je 0x14004de6c
cmp dword [rbx + 0x24], 0
je 0x14004de44
mov rcx, qword [rbx]
mov dl, 1
call fcn.1400423f0
mov r8, rax
lea rdx, [0x14018cbb4]
mov rcx, r13
call fcn.140042ba0
mov eax, dword [rbx + 0x24]
mov dword [rsp + 0x3c], eax
mov rax, qword [rsp + 0x30]
lea rdx, [r13 + 0x110]
mov r8d, dword [rbx + 0x20]
mov rcx, r12
mov r9d, dword [rax + 4]
call fcn.140046ae0
mov esi, dword [rsp + 0x3c]
test esi, esi
jne 0x14004f3f1
test byte [rdi + 8], 0x12
je 0x14004d45e
mov rcx, qword [rbx]
test byte [rcx + 8], 2
je 0x14004de93
movzx edi, byte [rsp + 0x48]
cmp byte [rcx + 0xa], dil
je 0x14004de93
movzx edx, dil
call fcn.140020a00
mov rcx, qword [rbx]
call fcn.140041dc0
test eax, eax
jne 0x14005224c
jmp 0x14004d45e
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x30]
add rdi, r14
add rcx, r14
movsxd rax, dword [rax + 0xc]
imul rsi, rax, 0x38
movzx eax, byte [rcx + 8]
or al, byte [rdi + 8]
add rsi, r14
test al, 1
je 0x14004df00
test word [rsi + 8], dx
je 0x14004def1
mov rcx, rsi
call fcn.140041630
jmp 0x14004d45e
mov word [rsi + 8], r10w
mov rsi, qword [rsp + 0x30]
jmp case.0x14004d23b.112
call fcn.140041800
mov rcx, rdi
mov rbx, rax
call fcn.140041800
mov rdx, rax
mov rax, qword [rsp + 0x30]
movzx ecx, byte [rax]
cmp cl, 0x2b
jne 0x14004df25
and rbx, rdx
jmp 0x14004df99
cmp cl, 0x2c
jne 0x14004df2f
or rbx, rdx
jmp 0x14004df99
test rdx, rdx
je 0x14004df99
jns 0x14004df49
mov eax, 0x5b
sub al, cl
movzx ecx, al
cmp rdx, 0xffffffffffffffc0
jle 0x14004df4f
neg rdx
cmp rdx, 0x40
jl 0x14004df67
test rbx, rbx
jns 0x14004df62
cmp cl, 0x2d
je 0x14004df62
mov rbx, 0xffffffffffffffff
jmp 0x14004df99
mov rbx, r15
jmp 0x14004df99
cmp cl, 0x2d
mov rcx, rdx
jne 0x14004df77
shl rbx, cl
mov r8, rbx
jmp 0x14004df96
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x14004df96
mov ecx, 0x40
mov rax, 0xffffffffffffffff
sub cl, dl
shl rax, cl
or r8, rax
mov rbx, r8
movzx eax, word [rsi + 8]
mov ecx, 0x3e00
and ax, cx
mov qword [rsi], rbx
or ax, 4
mov word [rsi + 8], ax
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r14
mov rcx, rbx
call fcn.140041800
mov qword [rbx], rax
mov rcx, rax
movzx eax, word [rbx + 8]
mov edx, 0x3e00
and ax, dx
or ax, 4
mov word [rbx + 8], ax
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 8]
add rax, rcx
mov qword [rbx], rax
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r14
movzx eax, word [rbx + 8]
test al, 4
jne 0x14004e059
movzx r8d, byte [rsp + 0x48]
mov dl, 0x43
mov rcx, rbx
call fcn.14004ce80
movzx eax, word [rbx + 8]
test al, 4
jne 0x14004e044
mov rsi, qword [rsp + 0x30]
cmp dword [rsi + 8], 0
jne 0x140051f2b
mov esi, reloc.WS2_32.dll_sendto
jmp 0x14004f3f1
mov r9, qword [rsp + 0x50]
mov r10d, 1
mov r11d, dword [rsp + 0x38]
mov edx, 0x2460
mov rsi, qword [rsp + 0x30]
mov ecx, 0x3e00
and ax, cx
or ax, 4
mov word [rbx + 8], ax
jmp case.0x14004d23b.112
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
add rcx, r14
test byte [rcx + 8], 4
je 0x14004d6f0
call fcn.140041990
jmp 0x14004d45e
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
mov eax, 0x4000
add rbx, r14
test word [rbx + 8], ax
je 0x14004e0e6
mov rcx, rbx
call fcn.1400412f0
movzx r8d, byte [rsp + 0x48]
mov rcx, rbx
mov dword [rsp + 0x3c], eax
mov rax, qword [rsp + 0x30]
movzx edx, byte [rax + 8]
call fcn.140041b20
mov esi, dword [rsp + 0x3c]
test esi, esi
jne 0x14004f3f1
jmp 0x14004d45e
movzx edx, byte [rcx + 8]
mov rcx, rbx
movzx r8d, byte [rsp + 0x48]
mov dword [rsp + 0x3c], r15d
call fcn.140041b20
jmp 0x14004d45e
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
imul rsi, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rdi, rax, 0x38
add rsi, r14
add rdi, r14
movzx r14d, word [rsi + 8]
movzx ebx, word [rdi + 8]
movzx ecx, bx
or cx, r14w
test cl, 1
je 0x14004e197
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + 3]
test al, al
jns 0x14004e164
movzx eax, bx
and ax, r14w
bt ax, r15w
jae 0x14004e1ff
bt bx, 8
jb 0x14004e1ff
mov ecx, r15d
jmp 0x14004e298
mov r14, qword [rsp + 0x60]
test al, 0x20
je 0x14004e185
mov rax, qword [rsp + 0x30]
mov r8d, 0x3e00
mov dword [rbp - 0x70], r10d
movsxd rax, dword [rax + 8]
jmp 0x14004d6d8
mov rsi, qword [rsp + 0x30]
test al, 0x10
jne 0x140051f30
jmp case.0x14004d23b.112
mov r15, qword [rsp + 0x30]
movzx eax, byte [r15 + 3]
and al, 0x47
cmp al, 0x43
jb 0x14004e217
test cl, 2
je 0x14004e1d7
movzx eax, r14b
and al, 0xe
cmp al, 2
jne 0x14004e1c4
xor edx, edx
mov rcx, rsi
call fcn.14004cd80
movzx ebx, word [rdi + 8]
movzx eax, bl
and al, 0xe
cmp al, 2
jne 0x14004e1d7
xor edx, edx
mov rcx, rdi
call fcn.14004cd80
movzx eax, byte [rdi + 8]
and al, byte [rsi + 8]
test al, 4
je 0x14004e27b
mov rax, qword [rdi]
xor r15d, r15d
mov rdx, qword [rsi]
mov r10d, 1
mov r11d, dword [rsp + 0x38]
cmp rax, rdx
jle 0x14004e207
mov ecx, r10d
jmp 0x14004e298
cmp rax, rdx
mov ecx, r15d
setge cl
dec ecx
jmp 0x14004e298
cmp al, 0x42
jne 0x14004e27b
movzx r13d, byte [rsp + 0x48]
test r14b, 2
jne 0x14004e250
test r14b, 0xc
je 0x14004e250
mov r8b, 1
movzx edx, r13b
mov rcx, rsi
call fcn.1400413b0
movzx eax, r14w
mov ecx, 0x7e00
xor ax, word [rsi + 8]
and ax, cx
xor r14w, ax
test bl, 2
jne 0x14004e27b
test bl, 0xc
je 0x14004e27b
mov r8b, 1
movzx edx, r13b
mov rcx, rdi
call fcn.1400413b0
movzx eax, bx
mov ecx, 0x7e00
xor ax, word [rdi + 8]
and ax, cx
xor bx, ax
mov r8, qword [r15 + 0x10]
mov rdx, rsi
mov rcx, rdi
call fcn.140047cb0
mov r11d, dword [rsp + 0x38]
xor r15d, r15d
mov ecx, eax
lea r10d, [r15 + 1]
mov rax, qword [rsp + 0x30]
movzx edx, byte [rax]
sub edx, 0x24
je 0x14004e2e0
sub edx, 1
je 0x14004e2d6
sub edx, 1
je 0x14004e2cc
sub edx, 1
je 0x14004e2c2
cmp edx, 1
mov edx, ecx
je 0x14004e2bd
not edx
shr edx, 0x1f
jmp 0x14004e2e2
test ecx, ecx
mov edx, r15d
setle dl
jmp 0x14004e2e2
test ecx, ecx
mov edx, r15d
setg dl
jmp 0x14004e2e2
test ecx, ecx
mov edx, r15d
sete dl
jmp 0x14004e2e2
mov edx, ecx
mov word [rsi + 8], r14w
mov r14, qword [rsp + 0x60]
mov word [rdi + 8], bx
movzx r9d, byte [rax + 3]
test r9b, 0x20
je 0x14004e35e
movsxd rax, dword [rax + 8]
imul r8, rax, 0x38
mov dword [rbp - 0x70], ecx
test r9b, 8
je 0x14004e326
mov rax, qword [rsp + 0x30]
mov ecx, r15d
cmp byte [rax], 0x25
mov eax, r15d
sete cl
test edx, edx
setne al
cmp ecx, eax
je 0x14004e34a
movzx eax, word [r8 + r14 + 8]
mov ecx, 0x3e00
and ax, cx
or ax, 4
mov word [r8 + r14 + 8], ax
test edx, edx
mov rax, r15
setne al
mov qword [r8 + r14], rax
mov rsi, qword [rsp + 0x30]
mov edx, 0x2460
mov r9, qword [rsp + 0x50]
jmp case.0x14004d23b.112
mov r9, qword [rsp + 0x50]
mov rsi, rax
test edx, edx
jne 0x140051f30
mov edx, 0x2460
jmp case.0x14004d23b.112
cmp dword [rbp - 0x70], 0
jne 0x140051f30
jmp case.0x14004d23b.112
mov rax, qword [rsi + 0x10]
add rax, 4
mov qword [rbp + 0x10], rax
jmp case.0x14004d23b.112
mov rcx, qword [rsp + 0x30]
mov edi, r15d
mov rax, qword [rbp + 0x10]
mov rbx, r15
test byte [rcx + 3], 1
mov r13, qword [rcx + 0x10]
mov r12d, dword [rcx + 4]
cmove rax, r15
mov r15, qword [rsp + 0x30]
mov ecx, dword [rcx + 8]
mov qword [rbp + 0x10], rax
mov dword [rbp - 0x58], ecx
movsxd r15, dword [r15 + 0xc]
test r15, r15
jle 0x14004e45d
lea rsi, [r13 + 0x20]
test rax, rax
je 0x14004e3e2
mov r8d, dword [rax + rbx*4]
jmp 0x14004e3e5
mov r8d, edi
mov rax, qword [r13 + 0x18]
movzx r14d, byte [rbx + rax]
lea eax, [r8 + rcx]
movsxd rcx, eax
lea eax, [r8 + r12]
mov r8, qword [rsi]
imul rdx, rcx, 0x38
movsxd rcx, eax
add rdx, qword [rsp + 0x60]
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x60]
call fcn.140047cb0
mov dword [rbp - 0x70], eax
mov r11d, eax
test eax, eax
jne 0x14004e437
mov ecx, dword [rbp - 0x58]
inc edi
mov rax, qword [rbp + 0x10]
inc rbx
add rsi, 8
cmp rbx, r15
jl 0x14004e3d7
jmp 0x14004e443
test r14b, r14b
je 0x14004e443
neg r11d
mov dword [rbp - 0x70], r11d
mov r14, qword [rsp + 0x60]
mov r10d, 1
mov r9, qword [rsp + 0x50]
mov edx, 0x2460
mov r11d, dword [rsp + 0x38]
mov rsi, qword [rsp + 0x30]
xor r15d, r15d
mov r12, qword [rsp + 0x58]
mov qword [rbp + 0x10], r15
jmp case.0x14004d23b.112
mov r11d, dword [rbp - 0x70]
test r11d, r11d
mov r11d, dword [rsp + 0x38]
mov rax, qword [rsp + 0x30]
jns 0x14004e49a
mov eax, dword [rax + 4]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rsi, [r9 + rcx*8]
jmp case.0x14004d23b.112
mov rbx, qword [rsp + 0x40]
jne 0x14004e4b5
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rsi, [r9 + rcx*8]
jmp 0x14004d429
mov eax, dword [rax + 0xc]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rsi, [r9 + rcx*8]
lea rcx, [0x140000000]
mov r13, qword [rbp - 0x80]
add rsi, 0x18
mov qword [rsp + 0x30], rsi
jmp 0x14004d20a
mov rdi, qword [rsp + 0x30]
movsxd rax, dword [rdi + 4]
imul rcx, rax, 0x38
add rcx, r14
test byte [rcx + 8], 1
je 0x14004e4fc
mov edx, 2
mov ebx, edx
jmp 0x14004e50f
call fcn.140041800
test rax, rax
mov rbx, r15
mov edx, 2
setne bl
movsxd rax, dword [rdi + 8]
imul rcx, rax, 0x38
add rcx, r14
test byte [rcx + 8], 1
je 0x14004e525
mov rcx, rdx
jmp 0x14004e533
call fcn.140041800
test rax, rax
mov rcx, r15
setne cl
lea r8, [rcx + rbx*2]
add r8, rbx
lea rcx, [0x140000000]
cmp byte [rdi], 0x1c
jne 0x14004e551
movzx r8d, byte [r8 + rcx + 0x1946d8]
jmp 0x14004e55a
movzx r8d, byte [r8 + rcx + 0x1954a8]
movsxd rax, dword [rdi + 0xc]
imul rdx, rax, 0x38
mov eax, 0x3e00
movzx ecx, word [rdx + r14 + 8]
and cx, ax
cmp r8b, 2
jne 0x14004e588
or cx, 1
mov rsi, rdi
mov word [rdx + r14 + 8], cx
jmp 0x14004d463
movzx eax, r8b
or cx, 4
mov qword [rdx + r14], rax
mov rsi, rdi
mov word [rdx + r14 + 8], cx
jmp 0x14004d463
mov rbx, qword [rsp + 0x30]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rdi, r14
add rbx, r14
test word [rbx + 8], dx
je 0x14004e5e2
mov rcx, rbx
call fcn.140041630
mov r9, qword [rsp + 0x50]
mov r10d, 1
mov r11d, dword [rsp + 0x38]
mov edx, 0x2460
jmp 0x14004e5e7
mov word [rbx + 8], r10w
test byte [rdi + 8], 1
jne 0x14004d6f0
mov rcx, rdi
mov word [rbx + 8], 4
call fcn.140041800
mov rcx, r15
test rax, rax
sete cl
mov qword [rbx], rcx
jmp 0x14004d45e
mov rbx, qword [rsp + 0x30]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rdi, r14
add rbx, r14
test word [rbx + 8], dx
je 0x14004e650
mov rcx, rbx
call fcn.140041630
mov r9, qword [rsp + 0x50]
mov r10d, 1
mov r11d, dword [rsp + 0x38]
mov edx, 0x2460
jmp 0x14004e655
mov word [rbx + 8], r10w
test byte [rdi + 8], 1
jne 0x14004d6f0
mov rcx, rdi
mov word [rbx + 8], 4
call fcn.140041800
not rax
mov qword [rbx], rax
jmp 0x14004d45e
mov rax, qword [r13 + 0x68]
mov ecx, dword [rax + 4]
cmp ecx, dword [rsi + 4]
je 0x140051f30
mov dword [rsi + 4], ecx
jmp case.0x14004d23b.112
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
add rcx, r14
test byte [rcx + 8], 1
je 0x14004e6b5
mov rax, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x30]
mov eax, dword [rax + 0xc]
jmp 0x14004e6f2
call fcn.140041890
ucomisd xmm0, xmm7
jp 0x14004e6cd
jne 0x14004e6cd
mov eax, r15d
mov r10d, 1
jmp 0x14004e6d6
mov r10d, 1
mov eax, r10d
mov rsi, qword [rsp + 0x30]
mov edx, 0x2460
mov r9, qword [rsp + 0x50]
mov r11d, dword [rsp + 0x38]
cmp byte [rsi], 0x16
jne 0x14004e6f2
xor eax, 1
test eax, eax
jne 0x140051f30
jmp case.0x14004d23b.112
mov rax, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + r14 + 8], 1
jne 0x140051f30
jmp case.0x14004d23b.112
mov rax, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + r14 + 8], 1
je 0x140051f30
jmp case.0x14004d23b.112
mov rax, qword [r13 + 0x98]
lea rdx, [rbp - 0x74]
mov rbx, qword [rsp + 0x30]
movsxd rcx, dword [rbx + 4]
mov rcx, qword [rax + rcx*8]
mov eax, dword [rbx + 8]
mov qword [rsp + 0x70], rcx
lea rcx, [rsp + 0x70]
mov dword [rbp - 0x74], eax
call fcn.140047360
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
jne 0x14004f3f1
movsxd rax, dword [rbx + 0xc]
mov r8, qword [rsp + 0x70]
mov rdi, qword [rbp - 0x80]
imul r13, rax, 0x38
mov rbx, qword [r8 + 0x18]
mov eax, dword [rdi + 0x30]
add r13, r14
mov r12, qword [r8 + 0x70]
mov qword [rbp - 0x58], rbx
cmp dword [r8 + 0x58], eax
je 0x14004e8ca
cmp byte [r8 + 2], sil
je 0x14004e7f9
cmp byte [r8], 3
jne 0x14004e7e7
movsxd rax, ebx
imul rdx, rax, 0x38
mov eax, dword [rdx + r14 + 0xc]
mov dword [rbp - 0x50], eax
mov dword [r8 + 0x60], eax
mov rcx, qword [rsp + 0x70]
mov eax, dword [rbp - 0x50]
mov dword [rcx + 0x5c], eax
mov rax, qword [rsp + 0x70]
mov rcx, qword [rdx + r14 + 0x10]
mov qword [rax + 0x68], rcx
jmp 0x14004e844
mov rcx, r13
call fcn.140041c50
mov r12, qword [rsp + 0x58]
jmp 0x14004d45e
mov rcx, rbx
call fcn.140038600
mov rcx, qword [rsp + 0x70]
lea rdx, [rbp - 0x50]
mov dword [rcx + 0x5c], eax
mov rcx, rbx
call fcn.140038ca0
mov rcx, qword [rsp + 0x70]
mov qword [rcx + 0x68], rax
mov rcx, qword [rsp + 0x70]
mov edx, dword [rbp - 0x50]
mov eax, dword [rcx + 0x5c]
cmp eax, edx
ja 0x14004e832
mov dword [rcx + 0x60], eax
jmp 0x14004e844
mov r8, qword [rsp + 0x58]
cmp eax, dword [r8 + 0x70]
ja 0x140052246
mov dword [rcx + 0x60], edx
mov rax, qword [rsp + 0x70]
mov ecx, dword [rdi + 0x30]
mov dword [rax + 0x58], ecx
mov rcx, qword [rsp + 0x70]
mov r8, qword [rcx + 0x68]
movzx eax, byte [r8]
cmp al, 0x80
jae 0x14004e867
mov dword [rbp - 0x4c], eax
mov al, 1
jmp 0x14004e878
lea rdx, [rbp - 0x4c]
mov rcx, r8
call fcn.140022120
mov rcx, qword [rsp + 0x70]
movzx eax, al
mov dword [rcx + 0x64], eax
mov rax, qword [rsp + 0x70]
mov word [rax + 0x12], r15w
mov eax, dword [rbp - 0x4c]
mov dword [r12], eax
mov eax, dword [rbp - 0x4c]
cmp dword [rbp - 0x50], eax
jae 0x14004e99d
mov rax, qword [rsp + 0x70]
mov qword [rax + 0x68], r15
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x60], r15d
mov eax, dword [rbp - 0x4c]
cmp eax, 0x18003
ja 0x140052039
mov r8, qword [rsp + 0x70]
cmp eax, dword [r8 + 0x5c]
ja 0x140052039
movzx eax, word [r8 + 0x12]
movsxd r9, dword [rbp - 0x74]
cmp eax, r9d
jg 0x14004ea9d
mov eax, dword [r12]
cmp dword [r8 + 0x64], eax
jae 0x14004ea61
mov rax, qword [r8 + 0x68]
mov qword [rbp - 0x68], rax
test rax, rax
jne 0x14004e959
xorps xmm0, xmm0
mov qword [rbp + 0x1a0], rax
movups xmmword [rbp + 0x170], xmm0
mov r9d, r15d
mov rcx, rbx
movups xmmword [rbp + 0x180], xmm0
movups xmmword [rbp + 0x190], xmm0
cmp byte [r8 + 4], al
lea rax, [rbp + 0x170]
mov r8d, dword [r12]
sete r9b
mov qword [rsp + 0x20], rax
xor edx, edx
call fcn.1400422e0
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
jne 0x140052045
mov rax, qword [rbp + 0x180]
mov r8, qword [rsp + 0x70]
mov qword [rbp - 0x68], rax
movzx esi, word [r8 + 0x12]
mov ebx, dword [r8 + 0x64]
mov r14d, esi
mov r15d, dword [r12]
add rbx, rax
add r15, rax
mov edi, dword [r12 + rsi*4]
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [rbx]
mov eax, 0x80
mov dword [rsp + 0x68], ecx
cmp ecx, eax
jae 0x14004e9b0
inc rbx
call fcn.1400474d0
movzx eax, al
jmp 0x14004e9ce
mov r8, qword [rsp + 0x70]
test eax, eax
je 0x14004e8ca
mov rax, qword [r8 + 0x68]
jmp 0x14004e955
lea rdx, [rsp + 0x68]
mov rcx, rbx
call fcn.140022120
mov ecx, dword [rsp + 0x68]
movzx eax, al
add rbx, rax
call fcn.1400474b0
mov eax, eax
mov rcx, qword [rsp + 0x70]
add rdi, rax
mov eax, dword [rsp + 0x68]
inc esi
mov dword [rcx + r14*4 + 0x78], eax
movsxd r14, esi
mov dword [r12 + r14*4], edi
mov rcx, qword [rsp + 0x70]
cmp esi, dword [rbp - 0x74]
jg 0x14004e9f9
cmp rbx, r15
jb 0x14004e980
jmp 0x14004e9fe
cmp rbx, r15
jb 0x14004ea13
cmp rbx, r15
ja 0x140052052
mov eax, dword [rcx + 0x5c]
cmp rdi, rax
jne 0x140052052
mov eax, dword [rcx + 0x5c]
cmp rdi, rax
ja 0x140052052
sub ebx, dword [rbp - 0x68]
mov word [rcx + 0x12], si
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x64], ebx
mov r8, qword [rsp + 0x70]
cmp qword [r8 + 0x68], 0
jne 0x14004ea4b
lea rcx, [rbp + 0x170]
call fcn.1400417e0
mov r8, qword [rsp + 0x70]
mov r9d, dword [rbp - 0x74]
xor r15d, r15d
mov edx, dword [rsp + 0x68]
mov rbx, qword [rbp - 0x58]
mov r14, qword [rsp + 0x60]
jmp 0x14004ea68
mov edx, r15d
mov dword [rsp + 0x68], edx
movzx eax, word [r8 + 0x12]
cmp eax, r9d
jg 0x14004eaa6
mov rax, qword [rsp + 0x30]
mov rcx, r13
cmp byte [rax + 1], 0xf8
jne 0x14004e7ea
mov rdx, qword [rax + 0x10]
mov r8d, 0x800
call fcn.140041e30
mov r12, qword [rsp + 0x58]
jmp 0x14004d45e
mov edx, dword [r8 + r9*4 + 0x78]
mov dword [rsp + 0x68], edx
mov eax, 0x2460
test word [r13 + 8], ax
je 0x14004eac7
mov rcx, r13
call fcn.140041c50
mov r8, qword [rsp + 0x70]
mov r9d, dword [rbp - 0x74]
mov edx, dword [rsp + 0x68]
lea eax, [r9 + 1]
movsxd rcx, eax
mov eax, dword [r12 + rcx*4]
cmp dword [r8 + 0x60], eax
jb 0x14004ebc8
movsxd rax, r9d
mov edi, dword [r12 + rax*4]
add rdi, qword [r8 + 0x68]
cmp edx, 0xc
jae 0x14004eb01
mov r8, r13
mov rcx, rdi
call fcn.140047620
mov r12, qword [rsp + 0x58]
jmp 0x14004d45e
movzx eax, byte [rsp + 0x48]
lea ebx, [rdx - 0xc]
shr ebx, 1
mov dword [r13 + 0xc], ebx
mov byte [r13 + 0xa], al
lea edx, [rbx + 2]
cmp dword [r13 + 0x20], edx
jge 0x14004eb61
xor r8d, r8d
mov word [r13 + 8], 1
mov rcx, r13
call fcn.140040e80
test eax, eax
je 0x14004eb69
mov r12, qword [rsp + 0x58]
mov r13, qword [rbp - 0x80]
mov rcx, r12
call fcn.14001e830
lea rdx, [0x14018d710]
mov rcx, r13
call fcn.140042ba0
mov ebx, 7
mov esi, ebx
lea edi, [rbx - 6]
jmp 0x14004f3fb
mov rax, qword [r13 + 0x18]
mov qword [r13 + 0x10], rax
mov rcx, qword [r13 + 0x10]
mov r8, rbx
mov rdx, rdi
call fcn.140132f60
mov rax, qword [r13 + 0x10]
lea rcx, [0x140000000]
mov rsi, qword [rsp + 0x30]
mov r10d, 1
mov r12, qword [rsp + 0x58]
mov edx, 0x2460
mov r9, qword [rsp + 0x50]
mov r11d, dword [rsp + 0x38]
mov byte [rbx + rax], 0
mov rax, qword [r13 + 0x10]
mov byte [rbx + rax + 1], 0
mov eax, dword [rsp + 0x68]
and eax, 1
movzx eax, word [rcx + rax*2 + 0x191a28]
mov word [r13 + 8], ax
jmp case.default.0x14004d23b
movzx eax, byte [rsp + 0x48]
mov byte [r13 + 0xa], al
mov rax, qword [rsp + 0x30]
mov edx, dword [rsp + 0x68]
movzx eax, byte [rax + 3]
test al, 0xc0
je 0x14004ebf0
cmp edx, 0xc
jb 0x14004ebec
test dl, 1
je 0x14004ec02
test al, al
js 0x14004ec02
mov ecx, edx
call fcn.1400474b0
mov r8d, eax
test eax, eax
jne 0x14004ec1b
mov edx, dword [rsp + 0x68]
mov r8, r13
lea rcx, [0x1401baca8]
call fcn.140047620
mov r12, qword [rsp + 0x58]
jmp 0x14004d45e
mov rax, qword [rsp + 0x70]
mov r9d, r15d
movsxd rdx, dword [rbp - 0x74]
mov rcx, rbx
mov qword [rsp + 0x20], r13
cmp byte [rax + 4], 0
mov edx, dword [r12 + rdx*4]
sete r9b
call fcn.1400422e0
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
jne 0x140052071
mov edx, dword [rsp + 0x68]
mov r8, r13
mov rcx, qword [r13 + 0x10]
call fcn.140047620
mov r12, qword [rsp + 0x58]
mov eax, 0xefff
and word [r13 + 8], ax
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
movzx eax, byte [rdi]
add rbx, r14
test al, al
je 0x14004d6f0
movzx r14d, byte [rsp + 0x48]
nop word [rax + rax]
movzx r8d, r14b
lea rdi, [rdi + 1]
movzx edx, al
mov rcx, rbx
call fcn.14004ce80
movzx eax, byte [rdi]
add rbx, 0x38
test al, al
jne 0x14004eca0
mov r14, qword [rsp + 0x60]
jmp 0x14004d45e
mov rcx, qword [rsp + 0x30]
mov rsi, r15
mov r12d, r15d
mov qword [rbp - 0x68], r15
mov r13, r15
movsxd rax, dword [rcx + 4]
mov rbx, qword [rcx + 0x10]
imul r15, rax, 0x38
mov eax, dword [rcx + 8]
dec eax
add r15, r14
cdqe
imul rax, rax, 0x38
add rax, r15
mov qword [rbp - 0x58], rax
mov rax, qword [rbp - 0x80]
movzx r14d, byte [rax + 0xbf]
movsxd rax, dword [rcx + 0xc]
imul rax, rax, 0x38
add rax, qword [rsp + 0x60]
mov qword [rbp - 0x10], rax
test rbx, rbx
je 0x14004ed53
movzx eax, byte [rbx]
mov rdi, r15
movzx r13d, byte [rsp + 0x48]
nop dword [rax]
movzx r8d, r13b
movzx edx, al
mov rcx, rdi
call fcn.14004ce80
movzx eax, byte [rbx + 1]
lea rbx, [rbx + 1]
add rdi, 0x38
test al, al
jne 0x14004ed30
mov r13, qword [rbp - 0x68]
mov rbx, qword [rbp - 0x58]
nop word [rax + rax]
lea r8, [rbp - 0x30]
mov edx, r14d
mov rcx, rbx
call fcn.1400473b0
mov edi, eax
mov eax, 0x4000
mov dword [rbx + 0x24], edi
test word [rbx + 8], ax
je 0x14004eda3
test rsi, rsi
je 0x14004ed96
mov rcx, rbx
call fcn.1400412f0
test eax, eax
jne 0x14004eb32
jmp 0x14004eda3
movsxd rcx, dword [rbx]
add r13, rcx
sub dword [rbp - 0x30], ecx
mov qword [rbp - 0x68], r13
mov eax, dword [rbp - 0x30]
mov ecx, 1
add rsi, rax
cmp edi, 0x7f
jbe 0x14004edcb
mov rax, rdi
shr rax, 7
test rax, rax
je 0x14004edcb
nop
inc ecx
shr rax, 7
test rax, rax
jne 0x14004edc0
add r12d, ecx
cmp rbx, r15
je 0x14004edd9
sub rbx, 0x38
jmp 0x14004ed60
cmp r12d, 0x7e
jle 0x14004edf8
movsxd rcx, r12d
call fcn.1400221a0
add r12d, eax
mov ebx, eax
movsxd rcx, r12d
call fcn.1400221a0
cmp ebx, eax
jge 0x14004edfb
inc r12d
mov r8, qword [rsp + 0x58]
movsxd rbx, r12d
movsxd rax, dword [r8 + 0x70]
lea r14, [rbx + rsi]
lea rcx, [r14 + r13]
mov qword [rbp + 0x40], r14
cmp rcx, rax
jg 0x140052240
mov rsi, qword [rbp - 0x10]
mov edx, r14d
mov rcx, rsi
call fcn.1400411d0
test eax, eax
jne 0x14004eb32
mov rsi, qword [rsi + 0x10]
mov edx, 0x80
cmp r12d, edx
jae 0x14004ee4f
mov r13d, 1
mov byte [rsi], r12b
mov eax, r13d
jmp 0x14004ee63
mov rdx, rbx
mov rcx, rsi
call fcn.140021ef0
mov edx, 0x80
lea r13d, [rdx - 0x7f]
mov r14, qword [rbp - 0x58]
movzx edi, al
nop word [rax + rax]
mov ebx, dword [r15 + 0x24]
movsxd rcx, edi
add rcx, rsi
cmp ebx, edx
jae 0x14004ee85
mov byte [rcx], bl
mov eax, r13d
jmp 0x14004ee8d
mov rdx, rbx
call fcn.140021ef0
movzx eax, al
mov r8d, ebx
movsxd rcx, r12d
mov rdx, r15
add rcx, rsi
add edi, eax
call fcn.1400474e0
add r12d, eax
add r15, 0x38
mov edx, 0x80
cmp r15, r14
jbe 0x14004ee70
mov rax, qword [rbp - 0x10]
mov r13, qword [rbp - 0x68]
mov r14, qword [rbp + 0x40]
mov dword [rax + 0xc], r14d
mov word [rax + 8], reloc.WS2_32.dll_recv
test r13, r13
je 0x14004eed8
mov dword [rax], r13d
mov word [rax + 8], 0x4010
mov r12, qword [rsp + 0x58]
xor r15d, r15d
mov r14, qword [rsp + 0x60]
mov byte [rax + 0xa], 1
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
lea rdx, [rbp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x98]
mov rcx, qword [rax + rcx*8]
mov rcx, qword [rcx + 0x18]
mov qword [rbp + 0x48], r15
call fcn.14003e8b0
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
jne 0x14004f3f1
mov rdx, qword [rsp + 0x30]
mov rcx, r13
call fcn.14004d0b0
mov rcx, qword [rbp + 0x48]
mov qword [rax], rcx
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
mov r14d, dword [rax + 4]
mov rdi, qword [rax + 0x10]
mov dword [rbp - 0x68], r14d
test r14d, r14d
jne 0x14004f01a
cmp dword [r12 + 0xb4], r14d
jg 0x14005207f
mov rcx, rdi
call fcn.140020ff0
mov r8d, dword [r12 + 0x280]
xor edx, edx
add r8d, dword [r12 + 0x27c]
mov rcx, r12
movsxd rsi, eax
call fcn.1400a8270
mov r12, qword [rsp + 0x58]
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x14004f3ed
lea rdx, [rsi + 0x21]
mov rcx, r12
call fcn.14001e450
mov rbx, rax
test rax, rax
je 0x14004ecbe
lea r9, [rax + 0x20]
mov rdx, rdi
lea ecx, [rsi + 1]
mov qword [rax], r9
movsxd r8, ecx
mov rcx, r9
call fcn.140132f60
cmp byte [r12 + 0x53], r14b
je 0x14004efdc
mov byte [r12 + 0x53], r14b
mov byte [r12 + 0x5b], 1
jmp 0x14004efe4
inc dword [r12 + 0x27c]
mov rax, qword [r12 + 0x270]
mov r14, qword [rsp + 0x60]
mov qword [rbx + 0x18], rax
mov rax, qword [r12 + 0x288]
mov qword [r12 + 0x270], rbx
mov qword [rbx + 8], rax
mov rax, qword [r12 + 0x290]
mov qword [rbx + 0x10], rax
jmp 0x14004d45e
mov rbx, qword [r12 + 0x270]
test rbx, rbx
je 0x14004f04b
nop word [rax + rax]
mov rcx, qword [rbx]
mov rdx, rdi
call fcn.140021430
test eax, eax
je 0x14004f069
mov rbx, qword [rbx + 0x18]
inc r15d
test rbx, rbx
jne 0x14004f030
mov r8, rdi
lea rdx, str.no_such_savepoint:__s
mov rcx, r13
call fcn.140042ba0
mov edi, 1
mov esi, edi
jmp 0x14004f3f6
cmp dword [r12 + 0xb4], 0
jle 0x14004f07e
cmp r14d, 1
je 0x140052098
cmp qword [rbx + 0x18], 0
jne 0x14004f0e5
cmp byte [r12 + 0x5b], 0
je 0x14004f0e5
mov edi, 1
mov dword [rbp - 0x58], edi
cmp r14d, edi
jne 0x14004f0ec
mov edx, edi
mov rcx, r13
call fcn.1400462a0
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x14004f4be
mov rcx, r13
mov byte [r12 + 0x53], dil
call fcn.1400462f0
cmp eax, 5
je 0x1400520b1
mov r8, qword [rsp + 0x58]
mov byte [r12 + 0x5b], 0
add r12, 0x27c
mov ecx, dword [r13 + 0x38]
mov dword [rsp + 0x3c], ecx
jmp 0x14004f1e9
xor ecx, ecx
mov dword [rbp - 0x58], ecx
jmp 0x14004f0ee
xor ecx, ecx
add r12, 0x27c
mov eax, dword [r12]
sub eax, r15d
lea r15d, [rax - 1]
cmp r14d, 2
jne 0x14004f16a
mov rax, qword [rsp + 0x58]
mov esi, ecx
mov r13d, dword [rax + 0x2c]
shr r13d, 1
and r13d, 1
cmp dword [rax + 0x28], 0
jle 0x14004f16d
mov r14d, r13d
mov rdi, rcx
xor r14d, 1
nop dword [rax + rax]
mov rcx, qword [rax + 0x20]
mov r8d, r14d
mov edx, 0x204
mov rcx, qword [rdi + rcx + 8]
call fcn.140037f30
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x140052518
mov rax, qword [rsp + 0x58]
inc esi
add rdi, 0x20
cmp esi, dword [rax + 0x28]
jl 0x14004f130
mov r14d, dword [rbp - 0x68]
xor ecx, ecx
jmp 0x14004f16d
mov r13d, ecx
mov r8, qword [rsp + 0x58]
mov esi, ecx
cmp dword [r8 + 0x28], 0
jle 0x14004f1b1
mov rdi, rcx
nop
mov rcx, qword [r8 + 0x20]
mov edx, r14d
mov r8d, r15d
mov rcx, qword [rdi + rcx + 8]
call fcn.140038200
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x140052518
mov r8, qword [rsp + 0x58]
inc esi
add rdi, 0x20
cmp esi, dword [r8 + 0x28]
jl 0x14004f180
test r13d, r13d
je 0x14004f1e2
mov rax, qword [r8 + 8]
test rax, rax
je 0x14004f1d0
nop
or dword [rax + 0xc0], 1
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x14004f1c0
mov rcx, r8
call fcn.14006b9f0
mov r8, qword [rsp + 0x58]
or dword [r8 + 0x2c], 2
mov r13, qword [rbp - 0x80]
mov edi, dword [rbp - 0x58]
mov rcx, qword [r8 + 0x270]
cmp rcx, rbx
je 0x14004f220
mov rax, qword [rcx + 0x18]
mov rdx, rcx
mov rcx, r8
mov qword [r8 + 0x270], rax
call fcn.14001e040
dec dword [r12]
mov r8, qword [rsp + 0x58]
mov rcx, qword [r8 + 0x270]
cmp rcx, rbx
jne 0x14004f1f5
cmp r14d, 1
jne 0x14004f261
mov rax, qword [rbx + 0x18]
mov rdx, rbx
mov rcx, r8
mov qword [r8 + 0x270], rax
call fcn.14001e040
test edi, edi
jne 0x14004f28a
dec dword [r12]
mov r12, qword [rsp + 0x58]
mov r8d, r15d
mov edx, r14d
mov rcx, r12
call fcn.1400a8270
mov esi, eax
mov dword [rsp + 0x3c], eax
test eax, eax
jmp 0x14004f295
mov rax, qword [rbx + 8]
mov r12, qword [rsp + 0x58]
mov qword [r12 + 0x288], rax
mov rax, qword [rbx + 0x10]
mov qword [r12 + 0x290], rax
test edi, edi
je 0x14004f249
cmp r14d, 2
je 0x14004f249
jmp 0x14004f28f
mov r12, qword [rsp + 0x58]
mov esi, dword [rsp + 0x3c]
test esi, esi
jne 0x14004f3f1
mov r14, qword [rsp + 0x60]
xor r15d, r15d
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
mov edx, dword [rax + 8]
test edx, edx
je 0x14004f2c3
test dword [r12 + 0x2c], 0x4000000
jne 0x1400520f2
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rbx, qword [rcx + rax + 8]
test rbx, rbx
je 0x14004f3bc
mov rcx, rbx
call fcn.140036cb0
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
jne 0x1400520fc
mov rax, qword [rsp + 0x30]
cmp dword [rax + 8], esi
je 0x14004f37c
test byte [r13 + 0xc0], 0x40
je 0x14004f37c
cmp byte [r12 + 0x53], sil
je 0x14004f31a
cmp dword [r12 + 0xb0], 1
jle 0x14004f37c
mov r8d, dword [r13 + 0x40]
test r8d, r8d
jne 0x14004f33f
inc dword [r12 + 0x280]
mov r8d, dword [r12 + 0x280]
add r8d, dword [r12 + 0x27c]
mov dword [r13 + 0x40], r8d
dec r8d
xor edx, edx
mov rcx, r12
call fcn.1400a8270
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x14004f364
mov edx, dword [r13 + 0x40]
mov rcx, rbx
call fcn.140038190
mov dword [rsp + 0x3c], eax
mov rax, qword [r12 + 0x288]
mov qword [r13 + 0x58], rax
mov rax, qword [r12 + 0x290]
mov qword [r13 + 0x60], rax
lea r8, [rbp - 0x20]
mov edx, 1
mov rcx, rbx
call fcn.14003e780
mov rax, qword [rsp + 0x30]
mov r10d, 1
mov r9, qword [rsp + 0x50]
mov r11d, dword [rsp + 0x38]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rbp - 0x20]
mov edx, dword [rcx + 4]
jmp 0x14004f3c5
mov eax, r15d
mov edx, r15d
mov dword [rbp - 0x20], eax
mov rsi, qword [rsp + 0x30]
cmp byte [rsi + 3], 0
je 0x14004f3e2
cmp eax, dword [rsi + 0xc]
jne 0x14005213a
cmp edx, dword [rsi + 0x10]
jne 0x14005213a
cmp dword [rsp + 0x3c], 0
je 0x14004d2a1
mov esi, dword [rsp + 0x3c]
mov edi, 1
mov ebx, 7
cmp byte [r12 + 0x55], 0
cmovne esi, ebx
cmp qword [r13 + 0x90], 0
mov dword [rsp + 0x3c], esi
jne 0x14004f433
cmp esi, 0xc0a
je 0x14004f433
mov ecx, esi
call fcn.1400c2040
mov r8, rax
lea rdx, [0x14018cbb4]
mov rcx, r13
call fcn.140042ba0
mov edx, esi
mov dword [r13 + 0x38], esi
mov rcx, r12
call fcn.140021090
mov rcx, qword [rsp + 0x30]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x50]
mov r9, qword [r13 + 0xe0]
imul rcx
mov rax, qword [r13 + 0x90]
mov ecx, dword [rsp + 0x3c]
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.140020650
mov rcx, r13
call fcn.1400462f0
cmp dword [rsp + 0x3c], 0xc0a
jne 0x14004f4a3
mov rcx, r12
call fcn.14001e830
movzx edx, byte [rsp + 0x78]
mov eax, edi
mov dword [rsp + 0x3c], eax
test dl, dl
je 0x14004f4be
dec edx
mov rcx, r12
call fcn.14006b9a0
mov eax, edi
mov rcx, qword [rsp + 0x40]
mov edx, dword [rsp + 0x38]
movaps xmm7, xmmword [rsp + 0x420]
movaps xmm6, xmmword [rsp + 0x430]
mov r15, qword [rsp + 0x440]
mov r14, qword [rsp + 0x448]
mov rdi, qword [rsp + 0x488]
mov rsi, qword [rsp + 0x480]
mov rbx, qword [rsp + 0x478]
mov qword [r12 + 0x30], rcx
add dword [r13 + 0xdc], edx
cmp dword [r13 + 0xc8], 0
mov r12, qword [rsp + 0x450]
je 0x14004f529
mov rcx, r13
call fcn.140044460
mov eax, dword [rsp + 0x3c]
mov rcx, qword [rbp + 0x310]
xor rcx, rsp
call fcn.140130cf0
add rsp, 0x458
pop r13
pop rbp
ret
mov rbx, qword [rsp + 0x30]
lea r8, [rbp + 0x28]
mov rcx, qword [r12 + 0x20]
movsxd rax, dword [rbx + 4]
mov edx, dword [rbx + 0xc]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14003e780
mov rdx, rbx
mov rcx, r13
call fcn.14004d0b0
movsxd rcx, dword [rbp + 0x28]
mov qword [rax], rcx
mov rsi, rbx
jmp 0x14004d463
mov rax, qword [rsp + 0x30]
movsxd rbx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 8]
shl rbx, 5
add rbx, qword [r12 + 0x20]
mov rcx, qword [rbx + 8]
call fcn.14003e810
mov dword [rsp + 0x3c], eax
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 8]
cmp eax, 1
jne 0x14004f5c9
mov rcx, qword [rbx + 0x18]
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0xc]
mov dword [rcx], eax
or dword [r12 + 0x2c], 2
jmp 0x14004f5de
cmp eax, 2
jne 0x14004f5de
mov rax, qword [rsp + 0x30]
mov rcx, qword [rbx + 0x18]
movzx eax, byte [rax + 0xc]
mov byte [rcx + 0x70], al
mov rsi, qword [rsp + 0x30]
cmp dword [rsi + 4], 1
jne 0x14004f5f9
mov rcx, r12
call fcn.140048e50
and dword [r13 + 0xc0], 0xfffffffe
cmp dword [rsp + 0x3c], 0
jne 0x14004f3ed
jmp 0x14004d463
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x98]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x30]
test rdi, rdi
je 0x14004f639
mov eax, dword [rcx + 8]
cmp dword [rdi + 0xc], eax
jne 0x14004f639
jmp 0x14004f74c
mov rcx, qword [rsp + 0x30]
test byte [r13 + 0xc0], 1
jne 0x140052195
movsxd r12, dword [rcx + 0xc]
mov edi, r15d
mov r8, qword [rsp + 0x58]
mov rax, r12
shl rax, 5
mov r14, r15
movsxd r15, dword [rcx + 8]
add rax, qword [r8 + 0x20]
mov r13, qword [rax + 8]
cmp bl, 0x69
jne 0x14004f699
mov rax, qword [rax + 0x18]
movzx esi, byte [rcx + 3]
and esi, 8
or esi, 4
movzx ecx, byte [rax + 0x70]
mov rax, qword [rbp - 0x80]
cmp cl, byte [rax + 0xbf]
jae 0x14004f692
mov byte [rax + 0xbf], cl
mov rcx, qword [rsp + 0x30]
jmp 0x14004f69b
xor esi, esi
test byte [rcx + 3], 0x10
je 0x14004f6ba
imul rbx, r15, 0x38
add rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.140041960
mov rcx, qword [rsp + 0x30]
mov r15d, dword [rbx]
movzx eax, byte [rcx + 1]
cmp al, 0xfa
jne 0x14004f6d4
mov r14, qword [rcx + 0x10]
movzx edi, word [r14 + 8]
movzx eax, word [r14 + 6]
add edi, eax
jmp 0x14004f6db
cmp al, 0xf2
jne 0x14004f6db
mov edi, dword [rcx + 0x10]
mov edx, dword [rcx + 4]
mov r9d, r12d
mov rcx, qword [rbp - 0x80]
mov r8d, edi
mov byte [rsp + 0x20], 0
call fcn.14004cc20
mov rdi, rax
test rax, rax
je 0x14004eb32
mov rcx, qword [rax + 0x18]
mov r9, r14
or dword [rax + 8], 4
mov r8d, esi
mov qword [rsp + 0x20], rcx
mov edx, r15d
mov rcx, r13
mov byte [rax + 2], 1
mov dword [rax + 0xc], r15d
call fcn.1400382c0
mov rcx, qword [rsp + 0x30]
mov r13, qword [rbp - 0x80]
mov r12, qword [rsp + 0x58]
mov qword [rdi + 0x28], r14
cmp byte [rcx + 1], 0xfa
mov r14, qword [rsp + 0x60]
mov dword [rsp + 0x3c], eax
setne al
mov byte [rdi + 4], al
xor r15d, r15d
movzx edx, byte [rcx + 3]
mov rcx, qword [rdi + 0x18]
and edx, 3
call fcn.140034440
mov esi, dword [rsp + 0x3c]
test esi, esi
jne 0x14004f3f1
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
mov r9d, 0xffffffff
mov rcx, r13
mov byte [rsp + 0x20], 0
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.14004cc20
mov rbx, rax
test rax, rax
je 0x14004eb3b
or dword [rax + 8], 1
lea r9, [rbx + 0x20]
mov byte [rax + 2], 1
mov r8, r12
mov rax, qword [rsp + 0x30]
xor edx, edx
mov rcx, qword [r12]
mov dword [rsp + 0x28], 0x41e
movzx eax, byte [rax + 3]
or eax, 5
mov dword [rsp + 0x20], eax
call fcn.140035740
mov esi, eax
test eax, eax
jne 0x14004f3f1
mov rcx, qword [rbx + 0x20]
lea edx, [rax + 1]
call fcn.140036cb0
mov esi, eax
test eax, eax
jne 0x14004f3f1
mov rax, qword [rsp + 0x30]
mov rcx, qword [rbx + 0x20]
mov rsi, qword [rax + 0x10]
test rsi, rsi
je 0x14004f840
movzx r8d, byte [rax + 3]
lea rdx, [rbp + 0x24]
or r8d, 2
call fcn.14003df90
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x14004f83c
mov rax, qword [rbx + 0x18]
mov r9, rsi
mov edx, dword [rbp + 0x24]
mov r8d, 4
mov rcx, qword [rbx + 0x20]
mov qword [rsp + 0x20], rax
mov qword [rbx + 0x28], rsi
call fcn.1400382c0
mov dword [rsp + 0x3c], eax
xor al, al
jmp 0x14004f85f
mov rax, qword [rbx + 0x18]
xor r9d, r9d
mov qword [rsp + 0x20], rax
lea edx, [r9 + 1]
lea r8d, [r9 + 4]
call fcn.1400382c0
mov dword [rsp + 0x3c], eax
mov al, 1
mov esi, dword [rsp + 0x3c]
mov r8d, 4
mov ecx, r8d
mov byte [rbx + rcx], al
test esi, esi
jne 0x14004f3f1
mov rax, qword [rsp + 0x30]
mov ecx, r15d
mov r14, qword [rsp + 0x60]
cmp byte [rax + 3], 8
mov eax, dword [rbx + 8]
cmovne ecx, r8d
and eax, 0xfffffffb
or ecx, eax
mov dword [rbx + 8], ecx
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
mov r9d, 0xffffffff
mov rcx, r13
mov byte [rsp + 0x20], 1
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.14004cc20
test rax, rax
je 0x14004eb3b
mov rdx, qword [rsp + 0x30]
mov r8, rax
mov rcx, qword [rdx + 0x10]
mov qword [rax + 0x28], rcx
mov rcx, r12
mov edx, dword [rdx + 0xc]
call fcn.1400545b0
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
jne 0x14004f3f1
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x98]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rdx + 0x38]
lea rax, [rcx + 1]
mov qword [rdx + 0x38], rax
test rcx, rcx
je 0x140051f30
mov edx, 0x2460
jmp case.0x14004d23b.112
mov rax, qword [rsp + 0x30]
mov r9d, 0xffffffff
mov rcx, r13
mov byte [rsp + 0x20], 3
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
call fcn.14004cc20
test rax, rax
je 0x14004eb3b
mov rcx, qword [rsp + 0x30]
mov byte [rax + 2], 1
mov ecx, dword [rcx + 8]
mov dword [rax + 0x18], ecx
mov byte [rax + 4], 1
jmp 0x14004d45e
mov rdx, qword [r13 + 0x98]
mov rcx, r13
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
mov rdx, qword [rdx + rax*8]
call fcn.1400450f0
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x98]
mov qword [rax + rcx*8], r15
jmp 0x14004d45e
mov rax, qword [r13 + 0x98]
mov rdi, qword [rsp + 0x30]
movsxd rcx, dword [rdi + 4]
mov rsi, qword [rax + rcx*8]
cmp byte [rsi + 4], 0
mov byte [rsi + 2], 0
je 0x14004fa58
movsxd rax, dword [rdi + 0xc]
imul rdi, rax, 0x38
add rdi, r14
movzx eax, byte [rdi + 8]
and al, 0xe
cmp al, 2
jne 0x14004f9e0
xor edx, edx
mov rcx, rdi
call fcn.14004cd80
mov rcx, rdi
call fcn.140041800
movzx ecx, word [rdi + 8]
mov r14, rax
test cl, 4
jne 0x14004fa25
test cl, 8
je 0x140051f21
movsd xmm0, qword [rdi]
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
comisd xmm1, xmm0
jbe 0x14004fa18
test bl, 1
jne 0x14004fa25
dec ebx
jmp 0x14004fa25
comisd xmm0, xmm1
jbe 0x14004fa25
test bl, 1
je 0x14004fa25
inc ebx
mov rcx, qword [rsi + 0x18]
lea rax, [rbp - 0x78]
lea rdi, [rsi + 0x18]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, r14
xor edx, edx
call fcn.1400391c0
mov dword [rsp + 0x3c], eax
mov qword [rsi + 0x40], r14
test eax, eax
jne 0x14004f3ed
jmp 0x14004faf0
mov rax, qword [rsi + 0x18]
lea rdi, [rsi + 0x18]
mov rcx, qword [rsp + 0x30]
mov edx, 0xffffffff
mov r15d, 0
movzx r14d, byte [rax + 0x57]
mov rax, qword [rsi + 0x28]
and r14b, 2
mov qword [rbp + 0x78], rax
movzx eax, word [rcx + 0x10]
setne r15b
mov word [rbp + 0x88], ax
lea eax, [rbx - 1]
test al, 1
mov byte [rbp + 0x8e], 0
mov eax, r10d
cmovne eax, edx
xor r9d, r9d
mov byte [rbp + 0x8a], al
lea rdx, [rbp + 0x78]
movsxd rax, dword [rcx + 0xc]
xor r8d, r8d
imul rcx, rax, 0x38
lea rax, [rbp - 0x78]
add rcx, qword [rsp + 0x60]
mov qword [rbp + 0x80], rcx
mov rcx, qword [rdi]
mov qword [rsp + 0x20], rax
call fcn.1400391c0
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x14004f3ed
test r14b, r14b
je 0x14004faf0
cmp byte [rbp + 0x8e], al
je 0x14004fb57
xor ecx, ecx
mov byte [rsi + 3], 0
mov dword [rsi + 0x58], ecx
mov eax, dword [rbp - 0x78]
cmp ebx, 0x19
jl 0x14004fb22
test eax, eax
js 0x14004fb11
jne 0x14004fb0c
cmp ebx, 0x1a
je 0x14004fb11
mov dword [rbp - 0x78], ecx
jmp 0x14004fb61
mov dword [rbp - 0x78], ecx
lea rdx, [rbp - 0x78]
mov rcx, qword [rdi]
call fcn.140039910
jmp 0x14004fb49
test eax, eax
jg 0x14004fb3a
jne 0x14004fb2d
cmp ebx, 0x17
je 0x14004fb3a
mov rcx, qword [rdi]
call fcn.1400397b0
mov dword [rbp - 0x78], eax
jmp 0x14004fb57
mov dword [rbp - 0x78], ecx
lea rdx, [rbp - 0x78]
mov rcx, qword [rdi]
call fcn.140039ab0
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
jne 0x14004f3f1
cmp dword [rbp - 0x78], 0
jne 0x140051f21
mov rsi, qword [rsp + 0x30]
mov r10d, 1
mov r14, qword [rsp + 0x60]
mov edx, 0x2460
mov r9, qword [rsp + 0x50]
lea rcx, [0x140000000]
mov rbx, qword [rsp + 0x40]
mov r11d, dword [rsp + 0x38]
test r15d, r15d
je 0x14004fb95
add rsi, 0x18
xor r15d, r15d
mov r13, qword [rbp - 0x80]
add rsi, 0x18
mov qword [rsp + 0x30], rsi
jmp 0x14004d20a
mov rdi, qword [rsp + 0x30]
mov rax, qword [r13 + 0x98]
movsxd rcx, dword [rdi + 4]
mov rsi, qword [rax + rcx*8]
movsxd rax, dword [rdi + 0xc]
imul rbx, rax, 0x38
mov eax, dword [rdi + 0x10]
add rbx, r14
mov qword [rbp + 0x50], r15
mov rcx, qword [rsi + 0x28]
test eax, eax
jle 0x14004fbf6
mov qword [rbp + 0xe8], rcx
lea rdi, [rbp + 0xe8]
mov word [rbp + 0xf8], ax
mov qword [rbp + 0xf0], rbx
jmp 0x14004fc44
lea r9, [rbp + 0x50]
mov r8d, 0xff
lea rdx, [rbp + 0x210]
call fcn.1400477a0
mov rdi, rax
test rax, rax
je 0x14004eb3b
mov eax, 0x4000
test word [rbx + 8], ax
je 0x14004fc2b
mov rcx, rbx
call fcn.1400412f0
mov r8, qword [rbx + 0x10]
mov r9, rdi
mov edx, dword [rbx + 0xc]
mov rcx, qword [rsi + 0x28]
call fcn.140047830
mov r10d, 1
mov rax, qword [rsp + 0x30]
mov ebx, r15d
mov byte [rdi + 0x12], 0
cmp byte [rax], 0x1d
jne 0x14004fc7c
movzx edx, word [rdi + 0x10]
mov ecx, r15d
test edx, edx
je 0x14004fc7c
mov rax, qword [rdi + 8]
add rax, 8
test byte [rax], 1
jne 0x14004fc79
inc ecx
add rax, 0x38
cmp ecx, edx
jl 0x14004fc68
jmp 0x14004fc7c
mov ebx, r10d
mov rcx, qword [rsi + 0x18]
lea rax, [rbp - 8]
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, rdi
call fcn.1400391c0
mov rdx, qword [rbp + 0x50]
mov rcx, r12
mov dword [rsp + 0x3c], eax
call fcn.14001e040
cmp dword [rsp + 0x3c], 0
jne 0x14004f3ed
mov eax, dword [rbp - 8]
mov ecx, r15d
mov dword [rsi + 0x30], eax
mov eax, dword [rbp - 8]
test eax, eax
mov byte [rsi + 3], 0
sete cl
mov dword [rsi + 0x58], r15d
test eax, eax
setne al
mov byte [rsi + 2], al
mov rsi, qword [rsp + 0x30]
cmp byte [rsi], 0x1f
jne 0x14004fcff
test ecx, ecx
mov r9, qword [rsp + 0x50]
jne 0x140051f30
mov r11d, dword [rsp + 0x38]
mov r10d, 1
mov edx, 0x2460
jmp case.0x14004d23b.112
test ebx, ebx
jne 0x140051f2b
mov r9, qword [rsp + 0x50]
test ecx, ecx
je 0x140051f30
mov r11d, dword [rsp + 0x38]
lea r10d, [rbx + 1]
mov edx, 0x2460
jmp case.0x14004d23b.112
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, r14
test byte [rbx + 8], 4
jne case.0x14004d23b.33
movzx r8d, byte [rsp + 0x48]
mov dl, 0x43
mov rcx, rbx
call fcn.14004ce80
test byte [rbx + 8], 4
je 0x140051f26
mov rbx, qword [rsp + 0x30]
xor r9d, r9d
mov rax, qword [r13 + 0x98]
xor edx, edx
movsxd rcx, dword [rbx + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [rbx + 0xc]
imul rcx, rax, 0x38
mov r10, qword [rdi + 0x18]
lea rax, [rbp - 0x2c]
mov dword [rbp - 0x2c], r15d
mov qword [rsp + 0x20], rax
mov rbx, qword [rcx + r14]
mov rcx, r10
mov r8, rbx
call fcn.1400391c0
mov rsi, qword [rsp + 0x30]
mov qword [rdi + 0x40], rbx
mov word [rdi + 2], 0
mov dword [rdi + 0x58], r15d
mov dword [rsp + 0x3c], eax
mov eax, dword [rbp - 0x2c]
mov dword [rdi + 0x30], eax
cmp dword [rbp - 0x2c], 0
je 0x14004fdd8
cmp dword [rsi + 8], 0
jne 0x140051f2b
mov ecx, 0x14224
call fcn.1400c4fd0
mov r12d, eax
mov dword [rsp + 0x3c], eax
jmp 0x14004fddd
mov r12d, dword [rsp + 0x3c]
test r12d, r12d
mov r12, qword [rsp + 0x58]
jne 0x14004f3ed
jmp 0x14004d463
mov rbx, qword [rsp + 0x30]
movsxd rax, dword [rbx + 8]
imul rdx, rax, 0x38
mov eax, 0x2460
add rdx, qword [r13 + 0x70]
test word [rdx + 8], ax
je 0x14004fe29
mov rcx, rdx
call fcn.14004d080
mov r9, qword [rsp + 0x50]
mov rdx, rax
mov r11d, dword [rsp + 0x38]
mov r10d, 1
jmp 0x14004fe2f
mov word [rdx + 8], 4
mov rax, qword [r13 + 0x98]
mov rsi, rbx
movsxd rcx, dword [rbx + 4]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x38]
mov qword [rdx], rax
movsxd rcx, dword [rbx + 4]
mov rax, qword [r13 + 0x98]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x38]
mov edx, 0x2460
jmp case.0x14004d23b.112
mov rbx, qword [rsp + 0x30]
mov qword [rbp - 0x38], r15
mov dword [rbp - 0x48], r15d
movsxd rax, dword [rbx + 8]
imul rsi, rax, 0x38
add rsi, qword [r13 + 0x70]
test word [rsi + 8], dx
je 0x14004fe91
mov rcx, rsi
call fcn.14004d080
mov rsi, rax
jmp 0x14004fe97
mov word [rsi + 8], 4
movsxd rcx, dword [rbx + 4]
mov rax, qword [r13 + 0x98]
mov rdi, qword [rax + rcx*8]
test byte [rdi + 8], 2
jne 0x14004fefd
mov rcx, qword [rdi + 0x18]
lea rdx, [rbp - 0x48]
call fcn.140039130
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x14004f3ed
cmp dword [rbp - 0x48], eax
je 0x14004fed4
mov qword [rbp - 0x38], 1
jmp 0x14004fefd
mov rcx, qword [rdi + 0x18]
call fcn.1400385e0
movabs rcx, 0x7fffffffffffffff
mov qword [rbp - 0x38], rax
cmp rax, rcx
jl 0x14004fef6
or dword [rdi + 8], 2
jmp 0x14004fefd
inc rax
mov qword [rbp - 0x38], rax
movsxd rdx, dword [rbx + 0xc]
test edx, edx
je 0x14004ff90
mov rcx, qword [r13 + 0xf0]
test rcx, rcx
je 0x14004ff36
mov rax, qword [rcx + 8]
test rax, rax
je 0x14004ff2c
nop
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x14004ff20
imul rbx, rdx, 0x38
add rbx, qword [rcx + 0x20]
jmp 0x14004ff3d
imul rbx, rdx, 0x38
add rbx, r14
mov rcx, rbx
call fcn.140041800
movzx ecx, word [rbx + 8]
mov edx, 0x3e00
and cx, dx
mov qword [rbx], rax
or cx, 4
mov word [rbx + 8], cx
movabs rcx, 0x7fffffffffffffff
cmp rax, rcx
je 0x14005219f
test byte [rdi + 8], 2
jne 0x14005219f
lea rcx, [rax + 1]
mov rax, qword [rbp - 0x38]
cmp rax, rcx
jge 0x14004ff8d
mov rax, rcx
mov qword [rbp - 0x38], rcx
mov qword [rbx], rax
test byte [rdi + 8], 2
je 0x140050007
mov ebx, r15d
nop dword [rax]
lea rdx, [rbp - 0x38]
mov ecx, 8
call fcn.1400207a0
mov r8, qword [rbp - 0x38]
movabs rax, 0x3fffffffffffffff
and r8, rax
xor r9d, r9d
inc r8
lea rax, [rbp - 0x48]
mov qword [rbp - 0x38], r8
xor edx, edx
mov rcx, qword [rdi + 0x18]
mov qword [rsp + 0x20], rax
call fcn.1400391c0
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x14005250e
cmp dword [rbp - 0x48], eax
jne 0x140050002
inc ebx
cmp ebx, 0x64
jl 0x14004ffa0
mov r12, qword [rsp + 0x58]
lea esi, [rax + 0xd]
jmp 0x14004f3f1
mov r12, qword [rsp + 0x58]
mov byte [rdi + 3], 0
mov dword [rdi + 0x58], r15d
mov rax, qword [rbp - 0x38]
mov qword [rsi], rax
jmp 0x14004d45e
mov rcx, qword [rsp + 0x30]
mov esi, r15d
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul r8, rax, 0x38
mov rax, qword [r13 + 0x98]
add r8, r14
mov rdi, qword [rax + rcx*8]
mov rax, qword [rsp + 0x30]
movsxd rdx, dword [rax + 0xc]
cmp bl, 0x73
jne 0x140050058
imul rax, rdx, 0x38
mov rdx, qword [rax + r14]
mov rax, qword [rsp + 0x30]
cmp byte [rax + 1], 0xec
mov qword [rbp + 0x60], rdx
jne 0x14005009b
cmp qword [r12 + 0x118], 0
je 0x14005009b
mov rax, qword [r12 + 0x20]
mov esi, reloc.WS2_32.dll_select
movsx rcx, byte [rdi + 1]
shl rcx, 5
mov rbx, qword [rcx + rax]
mov ecx, reloc.WS2_32.dll_socket
mov rax, qword [rsp + 0x30]
test byte [rax + 3], 4
mov r14, qword [rax + 0x10]
cmovne esi, ecx
jmp 0x1400500a1
mov r14, r15
mov rbx, r15
test byte [rax + 3], 1
je 0x1400500ab
inc dword [r13 + 0x3c]
movzx ecx, byte [rax + 3]
test cl, 2
je 0x1400500c2
mov qword [r12 + 0x30], rdx
movzx ecx, byte [rax + 3]
mov qword [rsp + 0x40], rdx
test byte [r8 + 8], 1
je 0x1400500d3
mov qword [rbp + 0x68], r15
mov dword [rbp + 0x70], r15d
jmp 0x1400500e2
mov rax, qword [r8 + 0x10]
mov qword [rbp + 0x68], rax
mov eax, dword [r8 + 0xc]
mov dword [rbp + 0x70], eax
test cl, 0x10
je 0x1400500ed
mov r9d, dword [rdi + 0x30]
jmp 0x1400500f0
mov r9d, r15d
mov eax, 0x4000
test word [r8 + 8], ax
je 0x140050104
mov eax, dword [r8]
mov dword [rbp + 0x74], eax
jmp 0x140050108
mov dword [rbp + 0x74], r15d
movzx r8d, cl
lea rdx, [rbp + 0x58]
shr r8d, 3
mov qword [rbp + 0x58], r15
and r8d, 1
mov rcx, qword [rdi + 0x18]
call fcn.14003d430
mov r12, qword [rsp + 0x58]
mov dword [rsp + 0x3c], eax
mov byte [rdi + 3], 0
mov dword [rdi + 0x58], r15d
test eax, eax
jne 0x14004f3ed
mov r10, qword [r12 + 0x118]
test r10, r10
je 0x14004ecbe
test esi, esi
je 0x14004ecbe
mov rax, qword [rbp + 0x60]
mov r8, rbx
mov r9, qword [r14]
mov edx, esi
mov rcx, qword [r12 + 0x110]
mov qword [rsp + 0x20], rax
call r10
mov r14, qword [rsp + 0x60]
jmp 0x14004d45e
mov rdi, qword [rsp + 0x30]
mov rax, qword [r13 + 0x98]
movsxd rcx, dword [rdi + 4]
mov r15d, dword [rdi + 8]
cmp byte [rdi + 1], 0xec
lea rdi, [r12 + 0x118]
mov rbx, qword [rax + rcx*8]
jne 0x1400501df
cmp qword [rdi], 0
je 0x1400501df
mov rax, qword [r12 + 0x20]
movsx rcx, byte [rbx + 1]
shl rcx, 5
mov r14, qword [rcx + rax]
mov rax, qword [rsp + 0x30]
test byte [rax + 3], 2
mov rsi, qword [rax + 0x10]
je 0x1400501e6
cmp byte [rbx + 4], 0
je 0x1400501e6
mov rcx, qword [rbx + 0x18]
call fcn.1400385e0
mov qword [rbx + 0x40], rax
jmp 0x1400501e6
xor eax, eax
mov r14d, eax
mov esi, eax
mov rax, qword [rsp + 0x30]
mov rcx, qword [rbx + 0x18]
movzx edx, byte [rax + 3]
call fcn.14003d6c0
mov dword [rsp + 0x3c], eax
mov dword [rbx + 0x58], 0
test eax, eax
jne 0x14005250e
test r15b, 1
je 0x14004db8e
inc dword [r13 + 0x3c]
mov r10, qword [rdi]
test r10, r10
je 0x14004db8e
test byte [rsi + 0x46], 0x20
mov r12, qword [rsp + 0x58]
jne 0x14004da62
mov rax, qword [rbx + 0x40]
mov r8, r14
mov r9, qword [rsi]
mov edx, 9
mov rcx, qword [r12 + 0x110]
mov qword [rsp + 0x20], rax
call r10
mov r14, qword [rsp + 0x60]
xor r15d, r15d
jmp 0x14004d45e
mov eax, dword [r13 + 0x3c]
add dword [r12 + 0x6c], eax
mov dword [r12 + 0x68], eax
mov dword [r13 + 0x3c], r15d
jmp case.0x14004d23b.112
mov rbx, qword [rsp + 0x30]
lea r9, [rbp + 4]
mov rax, qword [r13 + 0x98]
movsxd rcx, dword [rbx + 4]
mov r8d, dword [rbx + 0x10]
mov rcx, qword [rax + rcx*8]
movsxd rax, dword [rbx + 0xc]
imul rdx, rax, 0x38
mov dword [rbp + 4], r15d
add rdx, r14
call fcn.140057320
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
jne 0x14004f3f1
cmp dword [rbp + 4], eax
mov rsi, rbx
jmp 0x14004fcdf
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [r13 + 0x98]
add rdx, r14
mov rcx, qword [rax + rcx*8]
call fcn.140057250
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
jne 0x14004f3f1
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r13 + 0x98]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x58], r15d
jmp 0x14004d45e
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rbx, rax, 0x38
mov rax, qword [r13 + 0x98]
add rbx, r14
mov r14, qword [rax + rcx*8]
mov rsi, qword [r14 + 0x18]
mov rcx, rsi
call fcn.140038590
mov edi, dword [rsi + 0x30]
cmp edi, dword [r12 + 0x70]
ja 0x14005224c
mov edx, reloc.WLDAP32.dll_Ordinal_32
cmp edi, edx
cmova edx, edi
cmp dword [rbx + 0x20], edx
jge 0x14005036c
xor r8d, r8d
mov rcx, rbx
call fcn.140040e80
test eax, eax
jne 0x14004eb3b
jmp 0x140050379
mov rax, qword [rbx + 0x18]
and word [rbx + 8], 0xd
mov qword [rbx + 0x10], rax
mov r9, qword [rbx + 0x10]
mov eax, 0x3e00
and word [rbx + 8], ax
xor edx, edx
or word [rbx + 8], 0x10
mov r8d, edi
mov dword [rbx + 0xc], edi
mov rcx, rsi
cmp byte [r14 + 4], dl
jne 0x1400503a3
call fcn.140038c10
jmp 0x1400503a8
call fcn.140038c30
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
jne 0x14004f3f1
mov r14, qword [rsp + 0x60]
mov byte [rbx + 0xa], 1
jmp 0x14004d45e
mov rbx, qword [rsp + 0x30]
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
add rdi, qword [r13 + 0x70]
test word [rdi + 8], dx
je 0x1400503fd
mov rcx, rdi
call fcn.14004d080
mov r9, qword [rsp + 0x50]
mov rdi, rax
mov r11d, dword [rsp + 0x38]
mov r10d, 1
mov edx, 0x2460
jmp 0x140050403
mov word [rdi + 8], 4
movsxd rcx, dword [rbx + 4]
mov rax, qword [r13 + 0x98]
mov rbx, qword [rax + rcx*8]
cmp byte [rbx + 2], 0
je 0x140050427
mov rsi, qword [rsp + 0x30]
mov word [rdi + 8], r10w
jmp case.0x14004d23b.112
cmp byte [rbx + 3], 0
je 0x14005043d
mov rax, qword [rbx + 0x40]
mov qword [rbp + 0x30], rax
mov qword [rdi], rax
jmp 0x14004d45e
cmp byte [rbx], 2
jne 0x14005047a
mov rcx, qword [rbx + 0x18]
lea rdx, [rbp + 0x30]
mov rbx, qword [rcx]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rcx, r13
mov dword [rsp + 0x3c], eax
call fcn.140048e80
mov esi, dword [rsp + 0x3c]
test esi, esi
jne 0x14004f3f1
mov rax, qword [rbp + 0x30]
mov qword [rdi], rax
jmp 0x14004d45e
mov rcx, rbx
call fcn.140047340
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
jne 0x14004f3f1
cmp byte [rbx + 2], al
je 0x1400504b9
mov rsi, qword [rsp + 0x30]
mov r10d, 1
mov r9, qword [rsp + 0x50]
mov edx, 0x2460
mov r11d, dword [rsp + 0x38]
mov word [rdi + 8], r10w
jmp case.0x14004d23b.112
mov rcx, qword [rbx + 0x18]
call fcn.1400385e0
mov qword [rbp + 0x30], rax
mov qword [rdi], rax
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x98]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 0
mov byte [rcx + 2], 1
mov dword [rcx + 0x58], r15d
jne 0x14004d6f0
mov rcx, qword [rcx + 0x18]
call fcn.140033fc0
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
lea rdx, [rbp - 0x28]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x98]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x18]
mov dword [rbp - 0x28], r15d
call fcn.140039130
mov dword [rsp + 0x3c], eax
movzx eax, byte [rbp - 0x28]
mov esi, dword [rsp + 0x3c]
mov byte [rbx + 2], al
mov rax, qword [rsp + 0x30]
mov byte [rbx + 3], 0
mov dword [rbx + 0x58], r15d
mov eax, dword [rax + 0xc]
mov dword [rbx + 0x30], eax
test esi, esi
jne 0x14004f3f1
mov rsi, qword [rsp + 0x30]
cmp dword [rsi + 8], 0
jle 0x14004d463
cmp dword [rbp - 0x28], 0
jmp 0x14004fcdf
inc dword [r13 + 0xd4]
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x98]
mov rbx, qword [rax + rcx*8]
mov dword [rbp - 0x60], r10d
cmp byte [rbx], 1
jne 0x1400505a0
lea rdx, [rbp - 0x60]
mov rcx, rbx
call fcn.140057010
mov esi, eax
mov dword [rsp + 0x3c], eax
jmp 0x1400505de
mov rdi, qword [rbx + 0x18]
mov rcx, rdi
call fcn.140038d60
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
jne 0x1400505d6
cmp byte [rdi + 0x56], al
jne 0x1400505c4
mov dword [rbp - 0x60], 1
jmp 0x1400505d6
mov rcx, rdi
mov dword [rbp - 0x60], r15d
call fcn.140038f30
mov esi, eax
mov dword [rsp + 0x3c], eax
mov byte [rbx + 3], 0
mov dword [rbx + 0x58], r15d
test esi, esi
jne 0x14004f3f1
movzx eax, byte [rbp - 0x60]
mov rsi, qword [rsp + 0x30]
mov byte [rbx + 2], al
cmp dword [rbp - 0x60], 0
jmp 0x14004fcdf
mov rax, qword [rsp + 0x30]
lea r8, [rbp - 0x44]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x98]
mov rbx, qword [rax + rcx*8]
mov rcx, r12
mov rdx, rbx
mov dword [rbp - 0x44], r15d
call fcn.1400570e0
jmp 0x14005066e
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x98]
cmp qword [rax + rcx*8], 0
je 0x14004d6f0
mov rax, qword [rsp + 0x30]
lea rdx, [rbp - 0x44]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x98]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0xc]
mov dword [rbp - 0x44], eax
mov rax, qword [rsp + 0x30]
mov rcx, qword [rbx + 0x18]
call qword [rax + reloc.WS2_32.dll_recv]
mov dword [rsp + 0x3c], eax
mov esi, eax
mov dword [rbx + 0x58], r15d
test eax, eax
jne 0x14004f3f1
mov r9, qword [rsp + 0x50]
cmp dword [rbp - 0x44], eax
jne 0x1400506a3
mov byte [rbx + 2], al
mov rax, qword [rsp + 0x30]
movzx eax, byte [rax + 3]
inc dword [r13 + rax*4 + 0xcc]
jmp case.0x14004d23b.13
mov byte [rbx + 2], 1
jmp 0x140050de3
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x98]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rbx, r14
test byte [rcx + 3], 1
je 0x1400506da
inc dword [r13 + 0x3c]
mov eax, 0x4000
test word [rbx + 8], ax
je 0x1400506fc
mov rcx, rbx
call fcn.1400412f0
mov esi, eax
test eax, eax
jne 0x14004f3f1
mov rcx, qword [rsp + 0x30]
cmp byte [rcx], 0x7d
jne 0x14005070e
mov rdx, rbx
mov rcx, rdi
call fcn.140055c80
jmp 0x14005074b
test byte [rcx + 3], 0x10
movsxd rax, dword [rbx + 0xc]
mov qword [rbp + 0x1e8], rax
mov rax, qword [rbx + 0x10]
mov qword [rbp + 0x1e0], rax
je 0x140050730
mov r9d, dword [rdi + 0x30]
jmp 0x140050733
mov r9d, r15d
mov r8d, dword [rcx + 0xc]
lea rdx, [rbp + 0x1e0]
mov rcx, qword [rdi + 0x18]
call fcn.14003d430
mov dword [rdi + 0x58], r15d
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
jne 0x14004f3f1
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
lea rdx, [rbp + 0xb8]
xor r9d, r9d
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x98]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rbx + 0x28]
mov rdi, qword [rbx + 0x18]
mov qword [rbp + 0xb8], rax
movzx eax, word [rcx + 0xc]
mov word [rbp + 0xc8], ax
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
lea rax, [rbp + 0x20]
mov byte [rbp + 0xca], 0
add rcx, r14
mov qword [rsp + 0x20], rax
mov qword [rbp + 0xc0], rcx
mov rcx, rdi
call fcn.1400391c0
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
jne 0x14004f3f1
cmp dword [rbp + 0x20], eax
jne 0x1400507f3
mov dl, 4
mov rcx, rdi
call fcn.14003d6c0
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
jne 0x14004f3f1
mov dword [rbx + 0x58], r15d
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x98]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x18]
cmp byte [rax + 0x56], 1
je 0x140050832
mov rcx, rbx
call fcn.1400472e0
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
jne 0x14004f3f1
jmp 0x140050837
mov dword [rsp + 0x3c], r15d
cmp byte [rbx + 2], 0
jne 0x1400508bb
mov qword [rbp + 0x38], r15
lea r8, [rbp + 0x38]
mov rdx, qword [rbx + 0x18]
mov rcx, r12
call fcn.140048ac0
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
jne 0x14004f3f1
mov rax, qword [rsp + 0x30]
cmp byte [rax], 0x80
jne 0x14005089e
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r13 + 0x98]
mov rdx, qword [rax + rcx*8]
mov byte [rdx + 2], sil
mov rax, qword [rbp + 0x38]
mov qword [rdx + 0x40], rax
mov rax, qword [rsp + 0x30]
mov byte [rdx + 3], 1
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x50], rax
mov qword [rdx + 0x48], rbx
jmp 0x14004d45e
mov rdx, rax
mov rcx, r13
call fcn.14004d0b0
mov rcx, qword [rbp + 0x38]
mov qword [rax], rcx
mov word [rax + 8], 4
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, r14
call fcn.140041c50
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
lea r9, [rbp - 0x40]
cmp bl, 0x3c
lea r8, [rbp + 0xd0]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x98]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rdx + 0x28]
mov qword [rbp + 0xd0], rax
movzx eax, word [rcx + 0x10]
mov word [rbp + 0xe0], ax
sbb al, al
mov byte [rbp + 0xe2], al
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
mov dword [rbp - 0x40], r15d
add rcx, r14
mov qword [rbp + 0xd8], rcx
mov rcx, r12
call fcn.140048d10
mov dword [rsp + 0x3c], eax
mov rax, qword [rsp + 0x30]
test byte [rax], 1
mov eax, dword [rbp - 0x40]
jne 0x14005094d
neg eax
jmp 0x14005094f
inc eax
mov esi, dword [rsp + 0x3c]
mov dword [rbp - 0x40], eax
test esi, esi
jne 0x14004f3f1
mov rsi, qword [rsp + 0x30]
mov r9, qword [rsp + 0x50]
test eax, eax
jg 0x140051f30
jmp 0x14004fcea
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rbx, qword [r13 + 0x70]
test word [rbx + 8], dx
je 0x1400509a2
mov rcx, rbx
call fcn.14004d080
mov rcx, qword [rsp + 0x30]
mov rbx, rax
mov r10d, 1
mov word [rbx + 8], r10w
mov eax, dword [r12 + 0xbc]
inc eax
cmp dword [r12 + 0xb0], eax
jg 0x1400521a9
movsxd rdi, dword [rcx + 0xc]
lea r8, [rbp - 0x24]
mov rcx, qword [r12 + 0x20]
mov rax, rdi
mov rdx, qword [rsp + 0x30]
shl rax, 5
mov dword [rbp - 0x24], r15d
mov edx, dword [rdx + 4]
mov rcx, qword [rax + rcx + 8]
call fcn.14003e720
mov dword [rsp + 0x3c], eax
mov esi, dword [rsp + 0x3c]
mov word [rbx + 8], 4
movsxd rax, dword [rbp - 0x24]
mov qword [rbx], rax
test esi, esi
jne 0x14004f3f1
mov r8d, dword [rbp - 0x24]
test r8d, r8d
je 0x14004d45e
mov rax, qword [rsp + 0x30]
mov edx, edi
mov rcx, r12
mov r9d, dword [rax + 4]
call fcn.14006f820
lea eax, [rdi + 1]
mov byte [rsp + 0x78], al
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
lea r8, [rbp]
mov rcx, qword [r12 + 0x20]
mov rdx, qword [rsp + 0x30]
mov dword [rbp], r15d
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 8]
mov edx, dword [rdx + 4]
cmove r8, r15
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14003e2d0
mov rsi, qword [rsp + 0x30]
mov dword [rsp + 0x3c], eax
cmp dword [rsi + 0xc], 0
je 0x140050a8d
movsxd rdx, dword [rbp]
add dword [r13 + 0x3c], edx
movsxd rax, dword [rsi + 0xc]
test eax, eax
jle 0x140050a8d
imul rcx, rax, 0x38
add qword [rcx + r14], rdx
cmp dword [rsp + 0x3c], 0
jne 0x14004f3ed
jmp 0x14004d463
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x98]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 1
jne 0x140050ac7
mov rdx, qword [rcx + 0x18]
mov rcx, r12
call fcn.140054cd0
jmp 0x14004d45e
mov rcx, qword [rcx + 0x18]
call fcn.14003e3b0
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
jne 0x14004f3f1
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
add rbx, qword [r13 + 0x70]
test word [rbx + 8], dx
je 0x140050b07
mov rcx, rbx
call fcn.14004d080
mov rbx, rax
jmp 0x140050b0d
mov word [rbx + 8], 4
mov rax, qword [rsp + 0x30]
lea rdx, [rbp + 8]
mov r8d, r15d
mov dword [rbp + 8], r15d
movsxd rcx, dword [rax + 4]
shl rcx, 5
add rcx, qword [r12 + 0x20]
cmp byte [rax], 0x87
setne r8b
mov rcx, qword [rcx + 8]
inc r8d
call fcn.14003df90
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
jne 0x14004f3f1
movsxd rax, dword [rbp + 8]
mov qword [rbx], rax
jmp 0x14004d45e
mov rbx, qword [rsp + 0x30]
lea rax, [r13 + 0x90]
mov r8, qword [r12 + 0x20]
lea r9, str.sqlite_temp_master
mov qword [rbp + 0xa8], rax
lea rdx, str.SELECT_name__rootpage__sql_FROM__q._s_WHERE__s_ORDER_BY_rowid
lea rax, str.sqlite_master
mov qword [rbp + 0xa0], r12
movsxd rcx, dword [rbx + 4]
cmp ecx, 1
mov dword [rbp + 0xb0], ecx
cmovne r9, rax
mov rax, qword [rbx + 0x10]
shl rcx, 5
mov qword [rsp + 0x20], rax
mov r8, qword [rcx + r8]
mov rcx, r12
call fcn.140020260
mov rbx, rax
mov rcx, r12
test rax, rax
je 0x1400521bb
lea r9, [rbp + 0xa0]
mov byte [r12 + 0xa9], 1
lea r8, [fcn.14008ebd0]
mov dword [rbp + 0xb4], r15d
mov rdx, rax
mov qword [rsp + 0x20], r15
call fcn.140087150
test eax, eax
mov rdx, rbx
mov rcx, r12
cmove eax, dword [rbp + 0xb4]
mov dword [rsp + 0x3c], eax
call fcn.14001e040
mov esi, dword [rsp + 0x3c]
mov byte [r12 + 0xa9], 0
test esi, esi
je 0x14004d45e
mov rcx, r12
call fcn.14006b9f0
cmp esi, 7
je 0x14004eb3b
jmp 0x14004f3f1
mov rax, qword [rsp + 0x30]
mov rcx, r12
mov edx, dword [rax + 4]
call fcn.140068ed0
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
jne 0x14004f3f1
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
mov rcx, r12
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.14006c1c0
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
mov rcx, r12
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.14006b690
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
mov rcx, r12
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.1400a2110
jmp 0x14004d45e
mov rcx, qword [rsp + 0x30]
lea rdx, [rbp - 4]
mov qword [rsp + 0x20], rdx
mov rdx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 0xc]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 4]
mov r8d, dword [rdx + 8]
mov rdx, qword [rdx + 0x10]
imul rdi, rax, 0x38
movzx eax, byte [rcx + 3]
mov rcx, qword [r12 + 0x20]
add rdi, r14
mov r9d, dword [rbx + r14]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14003f750
movsxd rcx, dword [rbp - 4]
mov rsi, rax
sub qword [rbx + r14], rcx
mov eax, 0x2460
test word [rdi + 8], ax
je 0x140050d09
mov rcx, rdi
call fcn.140041630
jmp 0x140050d0f
mov word [rdi + 8], 1
cmp dword [rbp - 4], 0
je 0x140050d3e
test rsi, rsi
je 0x14004eb3b
lea rax, [fcn.14001df80]
mov r9b, 1
mov r8d, 0xffffffff
mov qword [rsp + 0x20], rax
mov rdx, rsi
mov rcx, rdi
call fcn.140041f10
movzx edx, byte [rsp + 0x48]
mov rcx, rdi
call fcn.140040e60
jmp 0x14004d45e
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 8]
add rbx, r14
imul rdi, rax, 0x38
test byte [rbx + 8], 0x20
jne 0x140050d80
mov rcx, rbx
call fcn.140041cd0
test byte [rbx + 8], 0x20
je 0x14004eb3b
mov rdx, qword [rdi + r14]
mov rcx, qword [rbx]
call fcn.14002a8c0
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r14
test byte [rbx + 8], 0x20
je 0x140050e42
mov rcx, qword [rbx]
lea rdx, [rbp + 0x90]
call fcn.14002ad60
test eax, eax
je 0x140050e42
mov rax, qword [rsp + 0x30]
mov rdx, qword [rbp + 0x90]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r14
call fcn.140041cb0
mov r9, qword [rsp + 0x50]
mov eax, dword [r12 + 0x150]
test eax, eax
jne 0x1400524cb
mov r8, qword [r12 + 0x1a0]
mov r11d, dword [rsp + 0x38]
test r8, r8
je 0x140051f47
cmp r11d, dword [rbp - 0x3c]
jb 0x140051f47
mov ecx, dword [r12 + 0x1b0]
xor edx, edx
mov eax, r11d
div ecx
sub ecx, edx
add ecx, r11d
mov dword [rbp - 0x3c], ecx
mov rcx, qword [r12 + 0x1a8]
call r8
test eax, eax
jne 0x1400522a4
jmp 0x14004d45e
mov rcx, rbx
call fcn.140041c50
jmp 0x140051c09
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add rbx, r14
imul rdi, rax, 0x38
test byte [rbx + 8], 0x20
jne 0x140050e82
mov rcx, rbx
call fcn.140041cd0
test byte [rbx + 8], 0x20
je 0x14004eb3b
test esi, esi
je 0x140050ea4
mov r8, qword [rdi + r14]
mov edx, esi
mov rcx, qword [rbx]
call fcn.14002ade0
test eax, eax
jne 0x140051f26
test esi, esi
js 0x14004d45e
mov rdx, qword [rdi + r14]
mov rcx, qword [rbx]
call fcn.14002a8c0
jmp 0x14004d45e
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 0xc]
mov r14, qword [rcx + 0x10]
imul rsi, rax, 0x38
add rsi, qword [rsp + 0x60]
cmp byte [rcx + 3], 0
je 0x140050ef4
mov rax, qword [r13 + 0xf0]
mov rcx, qword [r14 + 0x18]
test rax, rax
je 0x140050ef4
cmp qword [rax + 0x30], rcx
je 0x140051f5c
mov rax, qword [rax + 8]
test rax, rax
jne 0x140050ee1
mov eax, dword [r12 + 0x98]
cmp dword [r13 + 0x100], eax
jge 0x1400521c5
test byte [rsi + 8], 0x40
jne 0x140051000
mov edx, dword [r14 + 0x10]
mov ecx, dword [r14 + 0xc]
add ecx, edx
test edx, edx
lea edi, [rcx + 1]
cmovne edi, ecx
mov rcx, r12
imul eax, edi, 7
add eax, edx
lea eax, [rax*8 + 0x68]
movsxd rdx, eax
call fcn.14001e3b0
mov rbx, rax
test rax, rax
je 0x14004eb3b
mov rcx, rsi
call fcn.1400417e0
mov word [rsi + 8], 0x40
movabs rax, 0x2aaaaaaaaaaaaaab
mov qword [rsi], rbx
mov qword [rbx], r13
mov dword [rbx + 0x58], edi
mov ecx, dword [r14 + 0x10]
mov dword [rbx + 0x5c], ecx
mov rcx, qword [rsp + 0x30]
sub rcx, qword [rsp + 0x50]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rbx + 0x4c], edx
mov rax, qword [r13 + 0x70]
mov qword [rbx + 0x20], rax
mov eax, dword [r13 + 0x28]
mov dword [rbx + 0x54], eax
mov rax, qword [r13 + 0x98]
mov qword [rbx + 0x28], rax
mov eax, dword [r13 + 0x2c]
mov dword [rbx + 0x48], eax
mov rax, qword [r13 + 0x68]
mov qword [rbx + 0x10], rax
mov eax, dword [r13 + 0xb8]
mov dword [rbx + 0x50], eax
mov rax, qword [r14 + 0x18]
mov qword [rbx + 0x30], rax
movsxd rax, edi
imul rdx, rax, 0x38
lea rax, [rbx + 0x68]
add rdx, 0x68
add rdx, rbx
cmp rax, rdx
je 0x140050ff3
mov word [rax + 8], 0x80
mov qword [rax + 0x28], r12
add rax, 0x38
cmp rax, rdx
jne 0x140050fe0
mov r11d, dword [rsp + 0x38]
mov r10d, 1
jmp 0x140051003
mov rbx, qword [rsi]
inc dword [r13 + 0x100]
lea rdx, [rbx + 0x68]
mov rax, qword [r13 + 0xf0]
mov rcx, qword [rsp + 0x40]
mov qword [rbx + 0x38], rcx
mov qword [rbx + 8], rax
mov eax, dword [r13 + 0x3c]
mov dword [rbx + 0x60], eax
mov rax, qword [r13]
mov qword [rsp + 0x60], rdx
mov ecx, dword [rax + 0x68]
mov dword [rbx + 0x64], ecx
mov rax, qword [r13 + 0x110]
mov qword [rbx + 0x40], rax
mov qword [r13 + 0x70], rdx
mov qword [r13 + 0x110], r15
mov dword [r13 + 0x3c], r15d
mov qword [r13 + 0xf0], rbx
movsxd rcx, dword [rbx + 0x58]
mov dword [r13 + 0x28], ecx
movzx eax, word [rbx + 0x5c]
mov dword [r13 + 0x2c], eax
imul rcx, rcx, 0x38
add rcx, rdx
mov qword [r13 + 0x98], rcx
mov r9, qword [r14]
mov qword [r13 + 0x68], r9
mov eax, dword [r14 + 8]
mov r14, rdx
mov edx, 0x2460
mov qword [rsp + 0x50], r9
lea rsi, [r9 - 0x18]
mov dword [r13 + 0xb8], eax
jmp case.0x14004d23b.112
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 8]
imul r9, rax, 0x38
add r9, qword [r13 + 0x70]
test word [r9 + 8], dx
je 0x1400510c4
mov rcx, r9
call fcn.14004d080
mov r9, rax
jmp 0x1400510cb
mov word [r9 + 8], 4
mov r8, qword [r13 + 0xf0]
movsxd rax, dword [r8 + 0x4c]
lea rcx, [rax + rax*2]
mov rax, qword [r8 + 0x10]
mov edx, dword [rax + rcx*8 + 4]
mov rcx, r9
mov rax, qword [rsp + 0x30]
add edx, dword [rax + 4]
movsxd rax, edx
imul rdx, rax, 0x38
add rdx, qword [r8 + 0x20]
mov r8d, 0x1000
call fcn.140041e30
jmp 0x14004d45e
test dword [r12 + 0x2c], 0x2000000
mov rax, qword [rsp + 0x30]
je 0x14005112e
movsxd rax, dword [rax + 8]
add qword [r12 + 0x290], rax
mov rsi, qword [rsp + 0x30]
jmp case.0x14004d23b.112
cmp dword [rax + 4], 0
lea rcx, [0x140000000]
movsxd rax, dword [rax + 8]
mov rsi, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x40]
je 0x140051163
add qword [r12 + 0x288], rax
mov r13, qword [rbp - 0x80]
add rsi, 0x18
mov qword [rsp + 0x30], rsi
jmp 0x14004d20a
add qword [r13 + 0x50], rax
mov r13, qword [rbp - 0x80]
add rsi, 0x18
mov qword [rsp + 0x30], rsi
jmp 0x14004d20a
cmp dword [rsi + 4], 0
je 0x1400511a2
cmp qword [r12 + 0x288], 0
jne case.0x14004d23b.112
cmp qword [r12 + 0x290], 0
je 0x140051f30
jmp case.0x14004d23b.112
cmp qword [r13 + 0x50], 0
jmp 0x140051188
mov rcx, qword [r13 + 0xf0]
test rcx, rcx
je 0x1400511df
mov rax, qword [rcx + 8]
test rax, rax
je 0x1400511cc
nop
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x1400511c0
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x20]
jmp 0x1400511ef
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r14
mov rcx, rdi
call fcn.140041800
mov qword [rdi], rax
mov esi, 0x3e00
movzx eax, word [rdi + 8]
and ax, si
or ax, 4
mov word [rdi + 8], ax
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
add rbx, r14
mov rcx, rbx
call fcn.140041800
movzx ecx, word [rbx + 8]
mov r10d, 1
mov r9, qword [rsp + 0x50]
and cx, si
mov rsi, qword [rsp + 0x30]
or cx, 4
mov r11d, dword [rsp + 0x38]
mov edx, 0x2460
mov word [rbx + 8], cx
lea rcx, [0x140000000]
mov qword [rbx], rax
mov rbx, qword [rsp + 0x40]
cmp qword [rdi], rax
jge 0x14004d6b7
mov qword [rdi], rax
mov r13, qword [rbp - 0x80]
add rsi, 0x18
mov qword [rsp + 0x30], rsi
jmp 0x14004d20a
mov rax, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + r14]
test rdx, rdx
jle 0x14004d2a1
mov rax, rsi
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + r14], rdx
jmp 0x140051f30
mov rcx, qword [rsp + 0x30]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
mov rcx, r13
imul rdi, rax, 0x38
call fcn.14004d0b0
mov rdx, qword [rbx + r14]
test rdx, rdx
jg 0x1400512e6
mov rcx, 0xffffffffffffffff
mov qword [rax], rcx
jmp 0x14004d45e
mov rcx, qword [rdi + r14]
test rcx, rcx
cmovle rcx, r15
add rcx, rdx
mov qword [rax], rcx
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + r14]
test rdx, rdx
je 0x14004d2a1
mov rax, rsi
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + r14], rdx
jmp 0x140051f30
mov rax, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
sub qword [rcx + r14], 1
je 0x140051f30
jmp case.0x14004d23b.112
mov rdi, qword [rsp + 0x30]
mov rcx, r12
movzx ebx, byte [rdi + 3]
lea rdx, [rbx*8 + 0x30]
call fcn.14001e450
mov r8, rax
test rax, rax
je 0x14004eb3b
mov qword [rax + 0x10], r15
mov rcx, qword [rdi + 0x10]
mov qword [rax + 8], rcx
mov rcx, rdi
sub rcx, qword [rsp + 0x50]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
mov qword [r8 + 0x18], r13
sar rdx, 2
mov rax, rdx
mov byte [r8 + 0x2a], bl
shr rax, 0x3f
add rdx, rax
mov rax, rdi
mov dword [r8 + 0x20], edx
mov word [rdi], 0xeb94
mov qword [rdi + 0x10], r8
jmp 0x1400513c3
mov rax, qword [rsp + 0x30]
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul r10, rax, 0x38
add r10, r14
mov qword [rbp + 0x40], r10
cmp qword [rbx + 0x10], r10
je 0x140051425
movzx eax, byte [rbx + 0x2a]
mov edx, eax
mov qword [rbx + 0x10], r10
sub rdx, 1
lea r9d, [rax - 1]
js 0x140051425
mov r10, qword [rsp + 0x30]
lea r8, [rdx + 6]
lea r8, [rbx + r8*8]
nop dword [rax]
mov eax, dword [r10 + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, r14
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x140051400
mov r10, qword [rbp + 0x40]
inc dword [r10 + 0xc]
lea rax, [rbp + 0x100]
mov qword [rbp + 0x128], r12
lea r8, [rbx + 0x30]
mov dword [rbp + 0x120], r15d
mov edi, 1
mov word [rbp + 0x108], di
mov rcx, rbx
movzx edx, byte [rbx + 0x2a]
mov qword [rbx], rax
mov rax, qword [rbx + 8]
mov word [rbx + 0x28], 0
call qword [rax + Ordinal_26]
cmp byte [rbx + 0x29], 0
je 0x1400514c9
cmp dword [rbx + 0x24], 0
je 0x14005149a
movzx edx, dil
lea rcx, [rbp + 0x100]
call fcn.1400423f0
mov r8, rax
lea rdx, [0x14018cbb4]
mov rcx, r13
call fcn.140042ba0
mov eax, dword [rbx + 0x24]
mov dword [rsp + 0x3c], eax
mov eax, 0x2460
test word [rbp + 0x108], ax
jne 0x1400514b1
cmp dword [rbp + 0x120], 0
je 0x1400514bd
lea rcx, [rbp + 0x100]
call fcn.1400416b0
mov esi, dword [rsp + 0x3c]
test esi, esi
jne 0x14004f3f6
cmp byte [rbx + 0x28], 0
je 0x1400514eb
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax - 0x14]
test eax, eax
je 0x1400514eb
imul rcx, rax, 0x38
mov rdx, rdi
add rcx, r14
call fcn.140041cb0
mov rsi, qword [rsp + 0x30]
mov r10, rdi
mov r9, qword [rsp + 0x50]
mov edx, 0x2460
mov r11d, dword [rsp + 0x38]
jmp case.0x14004d23b.112
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
mov rdx, qword [rcx + 0x10]
imul rbx, rax, 0x38
add rbx, r14
mov rcx, rbx
call fcn.1400414b0
mov dword [rsp + 0x3c], eax
mov rcx, rbx
test eax, eax
jne 0x1400521de
movzx edx, byte [rsp + 0x48]
call fcn.140040e60
mov rcx, rbx
call fcn.140041dc0
test eax, eax
jne 0x14005224c
jmp 0x14004d45e
mov rbx, qword [rsp + 0x30]
lea rax, [rbp + 0x208]
lea r9, [rbp + 0x204]
mov dword [rbp + 0x200], r15d
mov rcx, r12
mov qword [rbp + 0x204], 0xffffffffffffffff
mov qword [rsp + 0x20], rax
mov r8d, dword [rbx + 8]
mov edx, dword [rbx + 4]
call fcn.1400c30c0
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
je 0x1400515af
cmp eax, 5
jne 0x14004f3f1
mov ecx, 1
mov dword [rsp + 0x3c], r15d
mov dword [rbp + 0x200], ecx
jmp 0x1400515b5
mov ecx, dword [rbp + 0x200]
movsxd rax, dword [rbx + 0xc]
mov edx, 0x2460
imul rbx, rax, 0x38
movsxd rax, ecx
add rbx, r14
test word [rbx + 8], dx
je 0x1400515e6
mov rdx, rax
mov rcx, rbx
call fcn.140041c70
mov edx, 0x2460
mov r8d, 4
jmp 0x1400515f4
mov r8d, 4
mov qword [rbx], rax
mov word [rbx + 8], r8w
lea rcx, [rbx + 0x38]
movsxd rax, dword [rbp + 0x204]
test word [rbx + 0x40], dx
je 0x14005161a
mov rdx, rax
call fcn.140041c70
mov edx, 0x2460
mov r8d, 4
jmp 0x140051622
mov qword [rcx], rax
mov word [rbx + 0x40], r8w
lea rcx, [rbx + 0x70]
movsxd rax, dword [rbp + 0x208]
test word [rbx + 0x78], dx
je 0x140051640
mov rdx, rax
call fcn.140041c70
jmp 0x14004d45e
mov qword [rcx], rax
mov word [rbx + 0x78], r8w
jmp 0x14004d696
mov rdi, qword [rsp + 0x30]
mov rcx, r13
mov rdx, rdi
call fcn.14004d0b0
mov rcx, qword [r12 + 0x20]
mov r14, rax
movsxd rdx, dword [rdi + 4]
mov ebx, dword [rdi + 0xc]
shl rdx, 5
mov r15, qword [rdx + rcx + 8]
mov rcx, r15
call fcn.14003e9f0
mov rcx, rax
mov rsi, rax
call fcn.140030a30
cmp ebx, 0xffffffff
mov rcx, rsi
mov edi, eax
cmove ebx, eax
call fcn.140030a40
test eax, eax
mov edx, 1
mov rcx, rsi
cmove ebx, edi
call fcn.140030590
cmp ebx, 5
jne 0x140051712
mov rcx, rax
call fcn.140020ff0
test eax, eax
je 0x1400516c7
mov rcx, rsi
call fcn.140030a70
test eax, eax
jne 0x140051712
mov ebx, edi
mov eax, dword [rsp + 0x3c]
test eax, eax
je 0x1400516d3
mov ebx, edi
mov edx, ebx
mov rcx, rsi
call fcn.1400308b0
mov ecx, eax
mov word [r14 + 8], 0xa02
call fcn.1400887f0
mov rcx, rax
mov qword [r14 + 0x10], rax
call fcn.140020ff0
movzx edx, byte [rsp + 0x48]
mov rcx, r14
mov dword [r14 + 0xc], eax
mov byte [r14 + 0xa], 1
call fcn.140040e60
jmp 0x14004f28f
cmp ebx, edi
je 0x1400516c9
cmp edi, 5
je 0x140051720
cmp ebx, 5
jne 0x1400516c9
cmp byte [r12 + 0x53], 0
je 0x1400521fa
cmp dword [r12 + 0xb0], 1
jg 0x1400521fa
cmp edi, 5
jne 0x14005175c
mov rcx, rsi
call fcn.140030dd0
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x1400516d1
mov edx, ebx
mov rcx, rsi
call fcn.1400308b0
jmp 0x140051777
cmp edi, 4
jne 0x14005176c
lea edx, [rdi - 2]
mov rcx, rsi
call fcn.1400308b0
cmp dword [rsp + 0x3c], 0
jne 0x1400516d1
xor edx, edx
mov rcx, r15
cmp ebx, 5
sete dl
inc edx
call fcn.14003ff40
mov dword [rsp + 0x3c], eax
jmp 0x1400516cd
mov rax, qword [rsp + 0x30]
lea rcx, [r13 + 0x90]
mov rdx, r12
mov r8d, dword [rax + 4]
call fcn.1400a5d70
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
jne 0x14004f3f1
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r12 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
call fcn.1400378e0
mov dword [rsp + 0x3c], eax
mov esi, eax
test eax, eax
je 0x14004d45e
cmp eax, 0x65
jne 0x14004f3f1
mov dword [rsp + 0x3c], r15d
jmp 0x140051f26
cmp dword [rsi + 4], 0
jne 0x14005180d
mov rcx, r12
call fcn.140048e50
jmp 0x14004d463
or dword [r13 + 0xc0], 1
jmp case.0x14004d23b.112
movzx r8d, byte [rsi + 0xc]
test r8b, r8b
jne 0x140051834
mov eax, 0x4000
test dword [r12 + 0x2c], eax
jne case.0x14004d23b.112
movsxd rax, dword [rsi + 4]
mov rcx, qword [r12 + 0x20]
mov edx, dword [rsi + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14003fd50
mov dword [rsp + 0x3c], eax
test eax, eax
je 0x14004d463
mov esi, eax
cmp sil, 6
jne 0x14004f3f1
mov rax, qword [rsp + 0x30]
lea rdx, str.database_table_is_locked:__s
mov rcx, r13
mov r8, qword [rax + 0x10]
call fcn.140042ba0
jmp 0x14004f3f1
mov rax, qword [rsp + 0x30]
mov rcx, r12
mov rbx, qword [rax + 0x10]
mov rdx, rbx
call fcn.1400a8170
mov dword [rsp + 0x3c], eax
mov esi, eax
test rbx, rbx
je 0x1400518ae
mov rdx, qword [rbx + 0x10]
mov rcx, r13
call fcn.140048e80
test esi, esi
jne 0x14004f3f1
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
lea rcx, [rbp + 0x138]
xorps xmm0, xmm0
mov qword [rbp + 0x138], r15
xorps xmm1, xmm1
mov qword [rbp + 0x168], r15
movdqu xmmword [rbp + 0x140], xmm0
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
movdqu xmmword [rbp + 0x150], xmm1
mov qword [rbp + 0x160], r12
add rdx, r14
call fcn.140041e70
lea rcx, [rbp + 0x138]
mov dword [rsp + 0x3c], eax
call fcn.1400495e0
test rax, rax
je 0x140051935
mov r8, rax
lea r9, [r13 + 0x90]
mov rax, qword [rsp + 0x30]
mov rcx, r12
mov edx, dword [rax + 4]
call fcn.1400a7a00
mov dword [rsp + 0x3c], eax
lea rcx, [rbp + 0x138]
call fcn.1400417e0
mov esi, dword [rsp + 0x3c]
test esi, esi
jne 0x14004f3f1
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
mov rcx, r12
inc dword [r12 + 0xbc]
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.1400a7f20
dec dword [r12 + 0xbc]
mov esi, eax
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x14004f3f1
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x18], r15
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x140052236
mov rdi, qword [rbx]
test rdi, rdi
je 0x140052236
lea rdx, [rbp + 0x18]
mov rcx, rbx
call qword [rdi + Ordinal_50]
mov rdx, rbx
mov rcx, r13
mov dword [rsp + 0x3c], eax
call fcn.140048e80
mov esi, dword [rsp + 0x3c]
test esi, esi
jne 0x14004f3f1
mov rax, qword [rbp + 0x18]
lea r9d, [rsi - 1]
xor r8d, r8d
mov byte [rsp + 0x20], 2
mov rcx, r13
mov qword [rax], rbx
mov rax, qword [rsp + 0x30]
mov edx, dword [rax + 4]
call fcn.14004cc20
mov rcx, qword [rbp + 0x18]
test rax, rax
je 0x14005222e
mov qword [rax + 0x18], rcx
inc dword [rbx + 8]
jmp 0x14004d45e
mov rcx, qword [rsp + 0x30]
xor r8d, r8d
mov r12, qword [rbp - 0x80]
movsxd rax, dword [rcx + 0xc]
movsxd rcx, dword [rcx + 4]
mov rdi, qword [r12 + 0x78]
imul rdx, rax, 0x38
mov rax, qword [r13 + 0x98]
add rdx, r14
movsxd r9, dword [rdx + 0x38]
lea r11, [rdx + 0x38]
mov r13, qword [rax + rcx*8]
mov edx, dword [rdx]
mov rsi, qword [r13 + 0x18]
mov r15, qword [rsi]
mov r14, qword [r15]
test r9d, r9d
jle 0x140051a79
nop dword [rax]
nop dword [rax + rax]
movsxd rax, r10d
inc r10d
imul rcx, rax, 0x38
add rcx, r11
mov qword [rdi + r8*8], rcx
inc r8
cmp r8, r9
jl 0x140051a60
mov rax, qword [rsp + 0x30]
mov rcx, rsi
mov qword [rsp + 0x20], rdi
mov r8, qword [rax + 0x10]
call qword [r14 + 0x40]
mov rdx, r15
mov rcx, r12
mov dword [rsp + 0x3c], eax
call fcn.140048e80
cmp dword [rsp + 0x3c], 0
jne 0x14005250b
mov rcx, rsi
call qword [r14 + 0x50]
mov rsi, qword [rsp + 0x30]
mov r12, qword [rsp + 0x58]
mov r14, qword [rsp + 0x60]
mov r9, qword [rsp + 0x50]
mov byte [r13 + 2], 0
test eax, eax
jne 0x140051f30
xor r15d, r15d
jmp 0x14004fcea
mov rdi, qword [rsp + 0x30]
mov rax, qword [r13 + 0x98]
movsxd rcx, dword [rdi + 4]
mov rcx, qword [rax + rcx*8]
movsxd rax, dword [rdi + 0xc]
imul rdi, rax, 0x38
add rdi, r14
cmp byte [rcx + 2], 0
je 0x140051b0a
mov rcx, rdi
call fcn.140041c50
jmp 0x14004d45e
mov rax, qword [rcx + 0x18]
xorps xmm0, xmm0
xorps xmm1, xmm1
mov edx, 0x3e00
mov rbx, qword [rax]
mov r9, qword [rbx]
movdqu xmmword [rbp + 0x1b0], xmm0
mov qword [rbp + 0x1a8], rdi
movdqu xmmword [rbp + 0x1c0], xmm1
movdqu xmmword [rbp + 0x1d0], xmm0
movzx eax, word [rdi + 8]
and ax, dx
lea rdx, [rbp + 0x1a8]
or ax, 1
mov word [rdi + 8], ax
mov rax, qword [rsp + 0x30]
mov rcx, qword [rcx + 0x18]
mov r8d, dword [rax + 8]
call qword [r9 + 0x58]
mov rdx, rbx
mov rcx, r13
mov dword [rsp + 0x3c], eax
call fcn.140048e80
mov eax, dword [rbp + 0x1cc]
test eax, eax
mov ecx, dword [rsp + 0x3c]
movzx edx, byte [rsp + 0x48]
cmovne ecx, eax
mov dword [rsp + 0x3c], ecx
mov rcx, rdi
call fcn.140040e60
mov rcx, rdi
call fcn.140041dc0
test eax, eax
jne 0x14005224c
mov esi, dword [rsp + 0x3c]
test esi, esi
jne 0x14004f3f1
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x98]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], 0
jne 0x14004d6f0
mov rcx, qword [rdi + 0x18]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov rdx, rbx
mov rcx, r13
mov dword [rsp + 0x3c], eax
call fcn.140048e80
cmp dword [rsp + 0x3c], 0
jne 0x14004f3ed
mov rcx, qword [rdi + 0x18]
call qword [rsi + 0x50]
test eax, eax
jne 0x140050dde
mov r9, qword [rsp + 0x50]
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rax, [r9 + rcx*8]
mov qword [rsp + 0x30], rax
jmp 0x140050de3
mov rcx, qword [rsp + 0x30]
mov edx, r10d
mov rax, qword [rcx + 0x10]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
add rbx, r14
mov rcx, rbx
call fcn.140040e60
mov esi, eax
test eax, eax
jne 0x14004f3f1
mov rax, qword [rdi]
mov rcx, rdi
mov rdx, qword [rbx + 0x10]
call qword [rax + 0x98]
mov rdx, rdi
mov rcx, r13
mov dword [rsp + 0x3c], eax
call fcn.140048e80
and dword [r13 + 0xc0], 0xfffffffe
mov esi, dword [rsp + 0x3c]
test esi, esi
jne 0x14004f3f1
jmp 0x14004d45e
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x140052236
mov r10, qword [rbx]
test r10, r10
je 0x140052236
cmp qword [r10 + 0x68], 0
mov rdx, qword [rsp + 0x30]
movsxd rdx, dword [rdx + 8]
je 0x140051f47
mov rax, qword [rsp + 0x30]
movzx esi, byte [r12 + 0x5a]
mov r8, qword [r13 + 0x78]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov rax, r15
add rcx, r14
test edx, edx
jle 0x140051d00
nop dword [rax + rax]
mov qword [r8 + rax*8], rcx
add rcx, 0x38
inc rax
cmp rax, rdx
jl 0x140051cf0
mov rax, qword [rsp + 0x30]
lea r9, [rbp + 0x98]
mov rcx, rbx
movzx eax, byte [rax + 3]
mov byte [r12 + 0x5a], al
call qword [r10 + 0x68]
mov rdx, rbx
mov byte [r12 + 0x5a], sil
mov rcx, r13
mov dword [rsp + 0x3c], eax
call fcn.140048e80
mov esi, dword [rsp + 0x3c]
test esi, esi
jne 0x140051d56
mov rsi, qword [rsp + 0x30]
cmp dword [rsi + 4], 0
je 0x140051daa
mov rbx, qword [rbp + 0x98]
mov qword [rsp + 0x40], rbx
mov qword [r12 + 0x30], rbx
jmp 0x140051daf
mov rbx, rdi
mov qword [rsp + 0x40], rbx
cmp sil, 0x13
jne 0x140051da3
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x40], rbx
mov rax, qword [rax + 0x10]
cmp byte [rax + 0x1c], 0
je 0x140051da3
mov rcx, qword [rsp + 0x30]
movzx ecx, byte [rcx + 3]
cmp cl, 4
jne 0x140052265
mov rsi, qword [rsp + 0x30]
mov r9, qword [rsp + 0x50]
mov dword [rsp + 0x3c], r15d
mov qword [rsp + 0x40], rbx
jmp 0x14004d419
mov rsi, qword [rsp + 0x30]
jmp 0x140051daf
mov rbx, qword [rsp + 0x40]
inc dword [r13 + 0x3c]
cmp dword [rsp + 0x3c], 0
jne 0x14004f3ed
mov r9, qword [rsp + 0x50]
jmp 0x14004d419
mov rdx, qword [rsp + 0x30]
mov rcx, r13
call fcn.14004d0b0
mov rcx, qword [r12 + 0x20]
mov rbx, rax
mov rax, qword [rsp + 0x30]
movsxd rdx, dword [rax + 4]
shl rdx, 5
mov rcx, qword [rdx + rcx + 8]
call fcn.140035470
mov ecx, eax
mov qword [rbx], rcx
jmp 0x14004d45e
mov rdx, qword [rsp + 0x30]
mov rcx, r13
call fcn.14004d0b0
mov r8, qword [rsp + 0x30]
mov rdi, rax
mov rcx, qword [r12 + 0x20]
mov eax, r15d
movsxd rdx, dword [r8 + 4]
shl rdx, 5
cmp dword [r8 + 0xc], 0
mov rbx, qword [rdx + rcx + 8]
je 0x140051e43
mov rcx, rbx
call fcn.140035470
mov rcx, qword [rsp + 0x30]
cmp eax, dword [rcx + 0xc]
cmovb eax, dword [rcx + 0xc]
mov edx, eax
mov rcx, rbx
call fcn.1400367c0
movsxd rcx, eax
mov qword [rdi], rcx
jmp 0x14004d45e
movzx eax, byte [r12 + 0x5c]
test al, 0x81
je 0x140051ed2
test byte [r13 + 0xc0], 2
jne 0x140051ed2
mov rcx, qword [rsp + 0x30]
mov r9, qword [rcx + 0x10]
test r9, r9
jne 0x140051e86
mov r9, qword [r13 + 0xe0]
test r9, r9
je 0x140051ecd
mov rdi, qword [r12 + 0xd0]
test al, al
jns 0x140051eb7
mov rdx, r9
mov rcx, r13
call fcn.14004c670
mov rcx, qword [r12 + 0xd8]
mov rdx, rax
mov rbx, rax
call rdi
mov rcx, rbx
call fcn.14001df80
jmp 0x140051ec7
mov rdx, qword [r12 + 0xd8]
mov r8, r13
mov ecx, r10d
call rdi
mov r10d, 1
mov r9, qword [rsp + 0x50]
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 4]
cmp eax, dword [0x1401b45bc]
jl 0x140051f15
cmp dword [r13 + 0xb8], 1
mov edx, r10d
jle 0x140051f12
mov eax, Ordinal_26
mov rcx, qword [r13 + 0x68]
cmp byte [rcx + rax], 0x14
jne 0x140051f03
mov dword [rcx + rax + 4], r15d
inc edx
add rax, 0x18
cmp edx, dword [r13 + 0xb8]
jl 0x140051ef4
mov eax, r15d
mov rsi, qword [rsp + 0x30]
inc eax
mov dword [rsi + 4], eax
jmp 0x140051f30
mov r14, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x30]
mov r9, qword [rsp + 0x50]
mov eax, dword [rsi + 8]
dec eax
cdqe
xor r15d, r15d
lea rcx, [rax + rax*2]
lea rsi, [r9 + rcx*8]
jmp 0x14004fcea
mov rsi, qword [rsp + 0x30]
mov r10d, 1
mov edx, 0x2460
jmp case.0x14004d23b.112
mov rsi, qword [rsp + 0x30]
mov edx, 0x2460
mov r14, qword [rsp + 0x60]
jmp case.0x14004d23b.112
mov dword [r13 + 0x38], ecx
movzx eax, byte [rdx + 8]
mov byte [r13 + 0xbe], al
mov dword [r13 + 0x34], ebx
test ecx, ecx
je 0x14005201b
movzx eax, byte [rdx + 3]
mov rcx, r13
test al, al
je 0x140051fe1
mov r8d, eax
lea rdx, str._s_constraint_failed
lea rax, [0x140000000]
mov r8, qword [rax + r8*8 + 0x194f60]
call fcn.140042ba0
mov rax, qword [rsp + 0x30]
mov r9, qword [rax + 0x10]
test r9, r9
je 0x140051ff1
mov r8, qword [r13 + 0x90]
lea rdx, str._z:__s
mov rcx, r12
call fcn.140020260
mov qword [r13 + 0x90], rax
jmp 0x140051ff1
mov r8, qword [rdx + 0x10]
lea rdx, [0x14018cbb4]
call fcn.140042ba0
mov rax, qword [r13 + 0x90]
lea rdx, str.abort_at__d_in___s_:__s
mov r9, qword [r13 + 0xe0]
mov r8d, ebx
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x30]
mov ecx, dword [rax + 4]
call fcn.140020650
mov rcx, r13
call fcn.1400462f0
mov dword [rsp + 0x3c], eax
cmp eax, 5
jne 0x140052479
mov dword [r13 + 0x38], eax
jmp 0x14004f4be
mov ecx, 0x13ba7
call fcn.1400c4fd0
mov esi, eax
mov r12, qword [rsp + 0x58]
mov r13, rdi
jmp 0x14004f3f1
cmp qword [rcx + 0x68], 0
jne 0x140052065
lea rcx, [rbp + 0x170]
call fcn.1400417e0
mov ecx, 0x13be5
call fcn.1400c4fd0
mov esi, eax
mov r13, qword [rbp - 0x80]
mov r12, qword [rsp + 0x58]
jmp 0x14004f3f1
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, r13
call fcn.140042ba0
mov esi, 5
jmp 0x14004f3f1
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
mov rcx, r13
call fcn.140042ba0
mov esi, 5
jmp 0x14004f3f1
mov rcx, qword [rsp + 0x30]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x50]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, 5
mov dword [r13 + 0x34], edx
mov byte [r12 + 0x53], 0
mov dword [r13 + 0x38], eax
mov dword [rsp + 0x3c], eax
jmp 0x14004f4be
mov esi, 8
jmp 0x14004f3f1
cmp al, 5
jne 0x14004f3f1
mov rcx, qword [rsp + 0x30]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x50]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, dword [rsp + 0x3c]
mov dword [r13 + 0x34], edx
mov dword [r13 + 0x38], eax
jmp 0x14004f4be
mov rdx, qword [r13 + 0x90]
mov rcx, r12
call fcn.14001e040
lea rdx, str.database_schema_has_changed
mov rcx, r12
call fcn.14001e670
mov qword [r13 + 0x90], rax
mov rax, qword [r12 + 0x20]
movsxd rdx, dword [rsi + 4]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rbp - 0x20]
cmp dword [rcx], eax
je 0x140052183
mov rcx, r12
call fcn.14006b9a0
or dword [r13 + 0xc0], 1
mov esi, reloc.WS2_32.dll_recvfrom
jmp 0x14004f3f1
mov esi, 0x204
jmp 0x14004f3f1
mov esi, reloc.WS2_32.dll_listen
jmp 0x14004f3f1
mov esi, 6
mov byte [r13 + 0xbe], 2
jmp 0x14004f3f1
call fcn.14006b9f0
jmp 0x14004eb3b
lea rdx, str.too_many_levels_of_trigger_recursion
mov dword [rsp + 0x3c], r10d
mov rcx, r13
call fcn.140042ba0
jmp 0x14004f3ed
call fcn.1400495e0
mov r8, rax
lea rdx, [0x14018cbb4]
mov rcx, r13
call fcn.140042ba0
jmp 0x14004f3ed
cmp ebx, 5
lea rax, str.into
lea r8, str.out_of
mov edi, 1
cmove r8, rax
mov dword [rsp + 0x3c], edi
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
mov rcx, r13
call fcn.140042ba0
mov esi, edi
jmp 0x14004f3f6
call qword [rdi + gethostname]
jmp 0x14004eb3b
mov esi, 6
jmp 0x14004f3f1
mov r13, qword [rbp - 0x80]
jmp 0x140052249
mov r13, rdi
mov r12, r8
lea rdx, str.string_or_blob_too_big
mov rcx, r13
call fcn.140042ba0
mov esi, reloc.WS2_32.dll_select
jmp 0x14004f3f1
mov eax, ecx
mov qword [rsp + 0x40], rdi
cmp cl, 5
mov ecx, 2
cmove eax, ecx
mov byte [r13 + 0xbe], al
jmp 0x14004f3f1
mov rax, qword [r12 + 0x1a0]
test rax, rax
je 0x1400522ae
cmp r11d, dword [rbp - 0x3c]
jb 0x1400522ae
mov rcx, qword [r12 + 0x1a8]
call rax
test eax, eax
je 0x1400522ae
mov esi, 9
jmp 0x14004f3f1
xor edx, edx
mov rcx, r13
call fcn.1400462a0
mov esi, eax
test eax, eax
jne 0x14004f3f1
lea edx, [rax + 1]
mov rcx, r13
call fcn.140045fc0
mov eax, dword [r13 + 0x30]
mov rbx, qword [rsp + 0x30]
add eax, 2
or eax, 1
mov dword [r13 + 0x30], eax
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
add rdi, r14
mov qword [r13 + 0x88], rdi
cmp dword [rbx + 8], esi
jle 0x14005234b
lea rbx, [rdi + 8]
mov esi, 0x202
mov eax, 0x1000
test word [rbx], ax
je 0x140052321
movsxd rax, r15d
imul rcx, rax, 0x38
add rcx, rdi
call fcn.1400411f0
test eax, eax
jne 0x14004eb3b
movzx eax, word [rbx]
and ax, si
cmp ax, 2
jne 0x140052336
lea rcx, [rbx - 8]
call fcn.140041350
mov rax, qword [rsp + 0x30]
inc r15d
add rbx, 0x38
cmp r15d, dword [rax + 8]
jl 0x140052300
mov rbx, rax
cmp byte [r12 + 0x55], 0
jne 0x14004eb3b
test byte [r12 + 0x5c], 4
je 0x140052379
mov rdx, qword [r12 + 0xd8]
xor r9d, r9d
mov r8, r13
lea ecx, [r9 + 4]
call qword [r12 + Ordinal_211]
sub rbx, qword [rsp + 0x50]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rbx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, 0x64
inc edx
mov dword [rsp + 0x3c], eax
mov dword [r13 + 0x34], edx
jmp 0x14004f4be
mov rdi, qword [rsp + 0x30]
movzx eax, byte [r12 + 0x53]
mov ebx, dword [rdi + 4]
mov ecx, dword [rdi + 8]
cmp ebx, eax
je 0x140052496
test ecx, ecx
je 0x1400523db
mov edx, 0x204
mov rcx, r12
call fcn.1400c1e50
mov al, 1
jmp 0x14005241d
test ebx, ebx
je 0x140052403
cmp dword [r12 + 0xb4], 0
jle 0x140052403
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
mov rcx, r13
call fcn.140042ba0
mov esi, 5
jmp 0x14004f3f1
mov edx, r10d
mov rcx, r13
call fcn.1400462a0
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x14004f4be
movzx eax, bl
mov rcx, r13
mov byte [r12 + 0x53], al
call fcn.1400462f0
cmp eax, 5
jne 0x140052471
sub rdi, qword [rsp + 0x50]
movabs rax, 0x2aaaaaaaaaaaaaab
imul rdi
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, 1
sub al, bl
mov dword [r13 + 0x34], edx
mov byte [r12 + 0x53], al
mov eax, 5
mov dword [rsp + 0x3c], eax
mov dword [r13 + 0x38], eax
jmp 0x14004f4be
mov rcx, r12
call fcn.1400c1140
cmp dword [r13 + 0x38], 0
mov eax, 0x65
mov r9d, 1
cmovne eax, r9d
mov dword [rsp + 0x3c], eax
jmp 0x14004f4be
test ebx, ebx
jne 0x1400524a3
lea rdx, str.cannot_start_a_transaction_within_a_transaction
jmp 0x1400524b7
test ecx, ecx
lea rax, str.cannot_rollback___no_transaction_is_active
lea rdx, str.cannot_commit___no_transaction_is_active
cmovne rdx, rax
mov rcx, r13
call fcn.140042ba0
mov edi, 1
mov esi, edi
jmp 0x14004f3f6
cmp byte [r12 + 0x55], 0
mov eax, 9
mov ebx, 7
cmovne eax, ebx
mov ecx, eax
mov dword [rsp + 0x3c], eax
mov dword [r13 + 0x38], eax
call fcn.1400c2040
mov r8, rax
lea rdx, [0x14018cbb4]
mov rcx, r13
call fcn.140042ba0
mov esi, dword [rsp + 0x3c]
lea edi, [rbx - 6]
jmp 0x14004f3fb
mov r13, r12
mov r12, qword [rsp + 0x58]
jmp 0x14004f3ed
mov esi, dword [rsp + 0x3c]
mov r13, qword [rbp - 0x80]
mov r12, qword [rsp + 0x58]
jmp 0x14004f3f1