Function at 0x180042f70
Capabilities:
Encrypt data using speck
Reference sql statements

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x2d0]
sub rsp, 0x3d0
mov rax, qword [0x1802e4710]
xor rax, rsp
mov qword [rbp + 0x2c0], rax
mov rax, qword [rcx + 8]
mov r13, qword [rcx]
mov rsi, qword [rcx + 0x10]
xor r14d, r14d
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x48], rax
movzx eax, byte [r13 + 0x52]
xor r12b, r12b
mov ebx, r14d
mov byte [rsp + 0x68], al
mov rax, qword [r13 + 0x30]
mov r15, rcx
mov qword [rbp - 0x78], rcx
mov dword [rsp + 0x54], r14d
mov qword [rsp + 0x78], r13
mov qword [rbp - 0x40], rax
mov byte [rsp + 0x40], r12b
mov dword [rbp - 0x48], r14d
mov dword [rsp + 0x50], ebx
mov dword [rsp + 0x58], r14d
mov qword [rsp + 0x70], rsi
mov qword [rbp - 0x18], r14
call fcn.18003b9d0
mov edi, 7
lea eax, [rdi - 6]
cmp dword [r15 + 0x84], edi
je 0x180044bf8
mov dword [r15 + 0x84], r14d
mov qword [r15 + 0xc8], r14
mov qword [r15 + 0x28], r14
mov eax, dword [r13 + 0x148]
mov dword [r13 + 0x220], r14d
lea rdi, [0x180000000]
movabs rdx, 0x2aaaaaaaaaaaaaab
lea r8d, [r14 + 1]
test eax, eax
jne 0x180048d1c
cmp qword [r13 + 0x198], rbx
je 0x18004308a
mov r10d, dword [r13 + 0x1a8]
mov eax, dword [r15 + 0xb8]
xor edx, edx
div r10d
sub r10d, edx
movabs rdx, 0x2aaaaaaaaaaaaaab
mov dword [rsp + 0x58], r10d
jmp 0x18004308d
mov r10d, ebx
movsxd rax, dword [r15 + 0x80]
mov r9, qword [rsp + 0x60]
mov r11d, 0x2460
lea rcx, [rax + rax*2]
lea r12, [r9 + rcx*8]
inc ebx
mov qword [rsp + 0x48], r12
mov dword [rsp + 0x50], ebx
movzx ebx, byte [r12]
cmp ebx, 0x9e
ja case.0x1800430cf.62
mov ecx, dword [rdi + rbx*4 + 0x48f0c]
mov eax, ebx
add rcx, rdi
jmp rcx
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
mov ecx, 4
movsxd r8, dword [rax + 4]
imul r8, r8, 0x38
mov word [r8 + rsi + 8], cx
mov rcx, rax
mov rax, rdx
sub rcx, r9
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + rsi], rax
jmp 0x1800486f8
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
imul rdx, rdx, 0x38
mov rax, qword [rdx + rsi]
lea rcx, [rax + rax*2]
mov eax, 0x80
lea r12, [r9 + rcx*8]
mov word [rdx + rsi + 8], ax
jmp case.0x1800430cf.62
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov eax, dword [rax + 0xc]
dec eax
cdqe
imul rcx, rcx, 0x38
mov qword [rcx + rsi], rax
mov eax, 4
mov word [rcx + rsi + 8], ax
cmp dword [r12 + 8], 0
jne 0x1800486fe
jmp case.0x1800430cf.62
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
imul rdx, rdx, 0x38
mov rax, qword [rdx + rsi]
lea rcx, [rax + rax*2]
mov eax, dword [r9 + rcx*8 + 8]
dec eax
cdqe
jmp 0x180043124
mov rbx, qword [rsp + 0x48]
mov eax, 4
movsxd r8, dword [rbx + 4]
sub rbx, r9
imul r8, r8, 0x38
movsxd rcx, dword [r8 + rsi]
mov word [r8 + rsi + 8], ax
mov rax, rdx
imul rbx
sar rdx, 2
lea rcx, [rcx + rcx*2]
mov rax, rdx
lea r12, [r9 + rcx*8]
shr rax, 0x3f
add rax, rdx
cdqe
mov qword [r8 + rsi], rax
mov r8d, 1
jmp case.0x1800430cf.62
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
test byte [rax + rsi + 8], 1
je 0x18004361b
mov rcx, qword [rsp + 0x48]
mov rax, rdx
sub rcx, r9
imul rcx
mov rbx, rdx
mov rdx, qword [rsp + 0x48]
sar rbx, 2
mov rax, rbx
shr rax, 0x3f
add rbx, rax
cmp dword [rdx + 4], 0
jne 0x180048758
mov rcx, qword [r15 + 0xf8]
test rcx, rcx
je 0x180048758
mov rax, qword [rcx + 8]
dec dword [r15 + 0x108]
mov qword [r15 + 0xf8], rax
mov eax, dword [r15 + 0x98]
add dword [r13 + 0x68], eax
mov dword [r13 + 0x64], eax
call fcn.18003c900
mov r12, qword [rsp + 0x48]
mov rdx, qword [r13 + 0x30]
cmp dword [r12 + 8], 4
mov qword [rbp - 0x40], rdx
jne 0x180043280
cdqe
lea rcx, [rax + rax*2]
mov rax, qword [r15 + 8]
mov eax, dword [rax + rcx*8 + 8]
dec eax
mov r9, qword [r15 + 8]
mov rsi, qword [r15 + 0x10]
cdqe
lea rcx, [rax + rax*2]
mov r8d, 1
mov qword [rsp + 0x60], r9
lea r12, [r9 + rcx*8]
mov qword [rsp + 0x70], rsi
jmp 0x1800460cb
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 8]
imul rcx, rcx, 0x38
add rcx, qword [r15 + 0x10]
test word [rcx + 8], r11w
je 0x1800432ee
call fcn.180042ef0
mov r9, qword [rsp + 0x60]
mov r12, qword [rsp + 0x48]
mov rcx, rax
mov rax, qword [rsp + 0x48]
mov r8d, 1
movsxd rax, dword [rax + 4]
mov r11d, 0x2460
mov qword [rcx], rax
jmp 0x1800460d1
mov r12, qword [rsp + 0x48]
mov edx, 4
mov word [rcx + 8], dx
movsxd rax, dword [rax + 4]
mov qword [rcx], rax
jmp 0x1800460d1
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 8]
imul rdx, rdx, 0x38
add rdx, qword [r15 + 0x10]
test word [rdx + 8], r11w
je 0x180043355
mov rcx, rdx
call fcn.180042ef0
mov r9, qword [rsp + 0x60]
mov r12, qword [rsp + 0x48]
mov rdx, rax
mov rax, qword [rsp + 0x48]
mov r8d, 1
mov rax, qword [rax + 0x10]
mov r11d, 0x2460
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x1800460d1
mov ecx, 4
mov r12, qword [rsp + 0x48]
mov word [rdx + 8], cx
mov rax, qword [rax + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x1800460d1
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 8]
imul rdx, rdx, 0x38
add rdx, qword [r15 + 0x10]
test word [rdx + 8], r11w
je 0x1800433b1
mov rcx, rdx
call fcn.180042ef0
mov r9, qword [rsp + 0x60]
mov r8d, 1
mov rdx, rax
mov rax, qword [rsp + 0x48]
mov r11d, 0x2460
lea ecx, [r8 + 7]
jmp 0x18004335a
mov ecx, 4
mov word [rdx + 8], cx
mov ecx, 8
jmp 0x18004335a
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 8]
imul rbx, rbx, 0x38
add rbx, qword [r15 + 0x10]
test word [rbx + 8], r11w
je 0x1800433eb
mov rcx, rbx
call fcn.180042ef0
mov rbx, rax
mov rax, qword [rsp + 0x48]
jmp 0x1800433f4
mov ecx, 4
mov word [rbx + 8], cx
mov rdx, qword [rax + 0x10]
mov byte [rax], 0x18
mov rcx, rdx
call fcn.18001a360
mov rcx, qword [rsp + 0x48]
movzx r12d, byte [rsp + 0x68]
mov dword [rcx + 4], eax
cmp r12b, 1
je 0x18004349b
mov r9b, 1
or r8d, 0xffffffff
mov rcx, rbx
mov qword [rsp + 0x20], r14
call fcn.1800398d0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048a7b
test byte [rbx + 8], 2
movzx ecx, r12b
je 0x180043460
movzx eax, byte [rbx + 0xa]
cmp eax, ecx
je 0x180043460
movzx edx, cl
mov rcx, rbx
call fcn.180019bf0
test eax, eax
jne 0x180044be8
mov rcx, qword [rsp + 0x48]
mov eax, 0x800
mov dword [rbx + 0x20], r14d
or word [rbx + 8], ax
cmp byte [rcx + 1], 0xff
jne 0x180043489
mov rdx, qword [rcx + 0x10]
mov rcx, r13
call fcn.1800171e0
mov rcx, qword [rsp + 0x48]
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
mov eax, dword [r13 + 0x6c]
cmp dword [rcx + 4], eax
jg 0x180048a7b
mov r11d, 0x2460
movsxd rcx, dword [rcx + 8]
imul rcx, rcx, 0x38
add rcx, qword [r15 + 0x10]
test word [rcx + 8], r11w
je 0x1800434de
call fcn.180042ef0
mov r11d, 0x2460
mov rcx, rax
jmp 0x1800434e7
mov rcx, qword [rsp + 0x48]
movzx r12d, byte [rsp + 0x68]
jmp 0x1800434ae
mov eax, 4
mov word [rcx + 8], ax
mov eax, 0xa02
mov word [rcx + 8], ax
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x10]
mov qword [rcx + 0x10], rax
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 4]
mov byte [rcx + 0xa], r12b
mov r12, qword [rsp + 0x48]
mov dword [rcx + 0xc], eax
cmp byte [r12 + 3], 0
je 0x180045143
movsxd rax, dword [r12 + 0xc]
mov r9, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x58]
imul rax, rax, 0x38
cmp qword [rax + rsi], 0
mov ebx, dword [rsp + 0x50]
mov r8d, 1
je 0x1800460da
mov eax, 0xa10
mov word [rcx + 8], ax
jmp 0x1800460da
mov rbx, qword [rsp + 0x48]
movsxd rax, dword [rbx + 8]
imul rax, rax, 0x38
add rax, qword [r15 + 0x10]
test word [rax + 8], r11w
je 0x180043586
mov rcx, rax
call fcn.180042ef0
mov r9, qword [rsp + 0x60]
mov r8d, 1
mov r11d, 0x2460
jmp 0x18004358f
mov ecx, 4
mov word [rax + 8], cx
mov edi, dword [rbx + 0xc]
mov esi, r8d
mov ecx, 0x101
sub edi, dword [rbx + 8]
cmp dword [rbx + 4], 0
lea rbx, [rax + 8]
cmovne si, cx
mov word [rbx], si
test edi, edi
jle 0x18004481d
add rbx, 0x38
test word [rbx], r11w
je 0x1800435d5
lea rcx, [rbx - 8]
call fcn.180039080
mov r8d, 1
mov r11d, 0x2460
jmp 0x1800435d9
mov word [rbx], r8w
dec edi
mov word [rbx], si
test edi, edi
jg 0x1800435b4
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
mov r9, qword [rsp + 0x60]
lea rdi, [0x180000000]
jmp 0x1800460d1
mov rax, qword [rsp + 0x48]
mov ecx, 0xff7f
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
add rax, rsi
and word [rax + 8], cx
or word [rax + 8], 1
mov r12, qword [rsp + 0x48]
jmp case.0x1800430cf.62
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 8]
imul rbx, rbx, 0x38
add rbx, qword [r15 + 0x10]
test word [rbx + 8], r11w
je 0x18004364f
mov rcx, rbx
call fcn.180042ef0
mov rbx, rax
mov rax, qword [rsp + 0x48]
jmp 0x180043658
mov ecx, 4
mov word [rbx + 8], cx
mov r8d, dword [rax + 4]
mov rdx, qword [rax + 0x10]
xor r9d, r9d
mov rcx, rbx
mov qword [rsp + 0x20], r14
call fcn.1800398d0
movzx eax, byte [rsp + 0x68]
mov byte [rbx + 0xa], al
mov r12, qword [rsp + 0x48]
mov r9, qword [rsp + 0x60]
mov r8d, 1
jmp 0x1800460cb
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 4]
dec eax
movsxd rbx, eax
imul rbx, rbx, 0x38
add rbx, qword [r15 + 0x68]
movzx eax, word [rbx + 8]
test al, 0x12
je 0x1800436ce
mov edx, dword [rbx + 0xc]
mov ecx, 0x4000
test cx, ax
je 0x1800436b9
add edx, dword [rbx]
mov rax, qword [rbx + 0x28]
mov ecx, r14d
cmp edx, dword [rax + 0x6c]
setg cl
test ecx, ecx
jne 0x180048a7b
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
add rax, qword [r15 + 0x10]
test word [rax + 8], r11w
je 0x1800436f0
mov rcx, rax
call fcn.180042ef0
jmp 0x1800436f9
mov ecx, 4
mov word [rax + 8], cx
mov r8d, 0x800
mov rdx, rbx
mov rcx, rax
call fcn.180039760
jmp 0x180043678
mov rax, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x70]
movsxd rdi, dword [rax + 4]
movsxd rbx, dword [rax + 8]
mov esi, dword [rax + 0xc]
imul rdi, rdi, 0x38
imul rbx, rbx, 0x38
add rdi, rdx
add rbx, rdx
mov rdx, rdi
mov rcx, rbx
call fcn.180039850
mov eax, 0x1000
test word [rbx + 8], ax
je 0x180043758
mov rcx, rbx
call fcn.180038d10
test eax, eax
jne 0x180044be8
add rdi, 0x38
add rbx, 0x38
dec esi
jne 0x180043732
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
mov r9, qword [rsp + 0x60]
mov r8d, 1
lea rdi, [0x180000000]
jmp 0x1800460cb
mov rax, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x70]
mov r12d, 0x1000
movsxd rdi, dword [rax + 4]
movsxd rbx, dword [rax + 8]
mov esi, dword [rax + 0xc]
imul rdi, rdi, 0x38
imul rbx, rbx, 0x38
add rdi, rdx
add rbx, rdx
nop
mov r8d, r12d
mov rdx, rdi
mov rcx, rbx
call fcn.180039760
test word [rbx + 8], r12w
je 0x1800437d5
mov rcx, rbx
call fcn.180038d10
test eax, eax
jne 0x180044be8
mov eax, esi
dec esi
test eax, eax
je 0x180043764
add rbx, 0x38
add rdi, 0x38
jmp 0x1800437b0
mov rax, qword [rsp + 0x48]
mov r8d, 0x1000
movsxd rdx, dword [rax + 4]
movsxd rcx, dword [rax + 8]
imul rdx, rdx, 0x38
imul rcx, rcx, 0x38
add rdx, rsi
add rcx, rsi
call fcn.180039760
jmp 0x180043678
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 8]
movsxd rax, dword [rax + 4]
imul rcx, rcx, 0x38
imul rax, rax, 0x38
add rcx, rsi
mov rdx, qword [rax + rsi]
test word [rcx + 8], r11w
je 0x18004383f
call fcn.180039540
jmp 0x180043678
mov r12, qword [rsp + 0x48]
mov eax, 4
mov qword [rcx], rdx
mov word [rcx + 8], ax
jmp case.0x1800430cf.62
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x70]
movsxd rsi, dword [rax + 4]
movsxd rdi, dword [rax + 8]
movsxd rbx, dword [rax + 0xc]
imul rsi, rsi, 0x38
imul rdi, rdi, 0x38
imul rbx, rbx, 0x38
add rdi, rcx
add rsi, rcx
add rbx, rcx
movzx ecx, word [rsi + 8]
movzx eax, cl
or al, byte [rdi + 8]
test al, 1
je 0x1800438bd
test word [rbx + 8], r11w
je 0x1800438a2
mov rcx, rbx
call fcn.180039080
jmp 0x180043764
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
mov word [rbx + 8], r8w
lea rdi, [0x180000000]
jmp case.0x1800430cf.62
mov r12d, 0x4000
test r12w, cx
je 0x1800438d9
mov rcx, rsi
call fcn.180038da0
test eax, eax
jne 0x180044be8
test word [rdi + 8], r12w
je 0x1800438f0
mov rcx, rdi
call fcn.180038da0
test eax, eax
jne 0x180044be8
test byte [rsi + 8], 0x12
movzx r12d, byte [rsp + 0x68]
jne 0x180043913
xor r8d, r8d
movzx edx, r12b
mov rcx, rsi
call fcn.180038e70
test eax, eax
jne 0x180044be8
test byte [rdi + 8], 0x12
jne 0x180043930
xor r8d, r8d
movzx edx, r12b
mov rcx, rdi
call fcn.180038e70
test eax, eax
jne 0x180044be8
mov eax, dword [rdi + 0xc]
add eax, dword [rsi + 0xc]
movsxd r12, eax
movsxd rax, dword [r13 + 0x6c]
cmp r12, rax
jg 0x180048a7b
mov r8d, r14d
cmp rbx, rdi
lea edx, [r12 + 2]
sete r8b
mov rcx, rbx
call fcn.180038bb0
test eax, eax
jne 0x180044be8
mov eax, 0x3e00
and word [rbx + 8], ax
or word [rbx + 8], 2
cmp rbx, rdi
je 0x180043989
movsxd r8, dword [rdi + 0xc]
mov rdx, qword [rdi + 0x10]
mov rcx, qword [rbx + 0x10]
call fcn.1800acfd0
movsxd rcx, dword [rdi + 0xc]
movsxd r8, dword [rsi + 0xc]
mov rdx, qword [rsi + 0x10]
add rcx, qword [rbx + 0x10]
call fcn.1800acfd0
mov r11, qword [rbx + 0x10]
mov byte [r12 + r11], 0
mov rax, qword [rbx + 0x10]
mov byte [rax + r12 + 1], 0
mov eax, 0x200
mov dword [rbx + 0xc], r12d
or word [rbx + 8], ax
movzx eax, byte [rsp + 0x68]
mov byte [rbx + 0xa], al
jmp 0x180043764
mov rbx, qword [rsp + 0x48]
mov r13, qword [rsp + 0x70]
movsxd rsi, dword [rbx + 4]
imul rsi, rsi, 0x38
add rsi, r13
movzx eax, word [rsi + 8]
movzx r14d, ax
and r14w, 0xc
jne 0x180043a04
test al, 0x12
je 0x180043a01
mov rcx, rsi
call fcn.180042e90
movzx r14d, ax
jmp 0x180043a04
xor r14d, r14d
movsxd rbx, dword [rbx + 8]
imul rbx, rbx, 0x38
add rbx, r13
movzx eax, word [rbx + 8]
movzx r12d, ax
and r12w, 0xc
jne 0x180043a33
test al, 0x12
je 0x180043a30
mov rcx, rbx
call fcn.180042e90
movzx r12d, ax
jmp 0x180043a33
xor r12d, r12d
mov rax, qword [rsp + 0x48]
movsxd rdi, dword [rax + 0xc]
movzx eax, byte [rbx + 8]
or al, byte [rsi + 8]
imul rdi, rdi, 0x38
add rdi, r13
test al, 1
jne 0x180043c43
movzx eax, r12b
and al, r14b
test al, 4
je 0x180043b73
mov rax, qword [rsp + 0x48]
mov rdx, qword [rbx]
mov r8, qword [rsi]
movzx ecx, byte [rax]
mov qword [rbp - 0x58], rdx
mov r13b, 1
sub ecx, 0x59
je 0x180043b1a
dec ecx
je 0x180043afc
dec ecx
je 0x180043ae2
dec ecx
je 0x180043aaf
test r8, r8
je 0x180043c43
cmp r8, 0xffffffffffffffff
mov rax, rdx
mov r9d, 1
cmove r8, r9
cqo
idiv r8
jmp 0x180043b56
test r8, r8
je 0x180043c43
cmp r8, 0xffffffffffffffff
jne 0x180043ad1
movabs rax, 0x8000000000000000
cmp rdx, rax
je 0x180043b76
mov rax, rdx
cqo
idiv r8
mov rdx, rax
mov qword [rbp - 0x58], rax
jmp 0x180043b5a
lea rcx, [rbp - 0x58]
mov rdx, r8
call fcn.18001b5d0
test eax, eax
jne 0x180043b76
mov rdx, qword [rbp - 0x58]
jmp 0x180043b5a
movabs rax, 0x8000000000000000
cmp r8, rax
jne 0x180043b15
test rdx, rdx
jns 0x180043b76
sub rdx, rax
jmp 0x180043b56
neg r8
jmp 0x180043b1d
test r8, r8
js 0x180043b38
test rdx, rdx
jle 0x180043b53
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, r8
jl 0x180043b76
jmp 0x180043b53
test rdx, rdx
jns 0x180043b53
movabs rcx, 0x8000000000000001
lea rax, [r8 + 1]
sub rcx, rdx
cmp rcx, rax
jg 0x180043b76
add rdx, r8
mov qword [rbp - 0x58], rdx
mov eax, 0x3e00
mov qword [rdi], rdx
and word [rdi + 8], ax
or word [rdi + 8], 4
xor r14d, r14d
jmp 0x180043764
xor r13b, r13b
mov rcx, rsi
call fcn.180039250
mov rcx, rbx
movapd xmm2, xmm0
call fcn.180039250
mov rax, qword [rsp + 0x48]
movzx ecx, byte [rax]
movapd xmm3, xmm0
sub ecx, 0x59
je 0x180043bfa
dec ecx
je 0x180043bf4
dec ecx
je 0x180043bee
dec ecx
je 0x180043bdc
cvttsd2si rcx, xmm2
cvttsd2si rax, xmm0
mov qword [rbp - 0x58], rax
test rcx, rcx
je 0x180043c43
cmp rcx, 0xffffffffffffffff
mov r9d, 1
cqo
cmove rcx, r9
pxor xmm3, xmm3
idiv rcx
cvtsi2sd xmm3, rdx
jmp 0x180043bfe
ucomisd xmm2, qword [0x1802bfb08]
jp 0x180043be8
je 0x180043c43
divsd xmm3, xmm2
jmp 0x180043bfe
mulsd xmm3, xmm2
jmp 0x180043bfe
subsd xmm3, xmm2
jmp 0x180043bfe
addsd xmm3, xmm2
movapd xmm0, xmm3
call fcn.18001a330
test eax, eax
jne 0x180043c43
mov eax, 0x3e00
or r12b, r14b
movsd qword [rdi], xmm3
and word [rdi + 8], ax
or word [rdi + 8], 8
test r12b, 8
jne 0x180043b6b
test r13b, r13b
jne 0x180043b6b
mov rcx, rdi
call fcn.1800392b0
xor r14d, r14d
jmp 0x180043764
mov r11d, 0x2460
test word [rdi + 8], r11w
je 0x180043c60
mov rcx, rdi
call fcn.180039080
xor r14d, r14d
jmp 0x180043764
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
mov r9, qword [rsp + 0x60]
mov r8d, 1
xor r14d, r14d
mov word [rdi + 8], r8w
lea rdi, [0x180000000]
jmp 0x1800460d1
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
test eax, eax
je 0x18004361b
imul rax, rax, 0x38
add rax, rsi
test word [rax + 8], r11w
je 0x180043cb7
xor edx, edx
mov rcx, rax
call fcn.180039540
jmp 0x180043678
mov r12, qword [rsp + 0x48]
mov ecx, 4
mov qword [rax], r14
mov word [rax + 8], cx
jmp case.0x1800430cf.62
mov rax, qword [rsp + 0x48]
mov rcx, r13
movzx ebx, byte [rax + 3]
lea eax, [rbx - 1]
movsxd rdx, eax
lea rdx, [rdx*8 + 0x38]
call fcn.180017520
mov r11, rax
test rax, rax
je 0x180044be8
mov rcx, qword [rsp + 0x48]
mov qword [rax], r14
mov rax, qword [rcx + 0x10]
sub rcx, qword [rsp + 0x60]
mov qword [r11 + 0x18], r15
mov qword [r11 + 8], rax
mov byte [r11 + 0x2a], bl
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov rax, qword [rsp + 0x48]
mov dword [r11 + 0x20], edx
mov qword [rax + 0x10], r11
mov word [rax], 0xec24
jmp 0x180043d49
mov rax, qword [rsp + 0x48]
movsxd rdi, dword [rax + 0xc]
mov rbx, qword [rax + 0x10]
imul rdi, rdi, 0x38
add rdi, rsi
cmp qword [rbx], rdi
je 0x180043da4
movzx edx, byte [rbx + 0x2a]
mov qword [rbx], rdi
dec edx
movsxd r8, edx
js 0x180043da4
mov r13, qword [rsp + 0x48]
lea r9, [rbx + r8*8 + 0x30]
nop word [rax + rax]
mov eax, dword [r13 + 8]
sub r9, 8
add eax, edx
dec edx
movsxd rcx, eax
imul rcx, rcx, 0x38
add rcx, rsi
dec r8
mov qword [r9 + 8], rcx
jns 0x180043d80
mov r13, qword [rsp + 0x78]
mov rcx, qword [rbx]
mov edx, 0x3e00
lea r8, [rbx + 0x30]
movzx eax, word [rcx + 8]
and ax, dx
or ax, 1
mov word [rcx + 8], ax
mov rax, qword [rbp - 0x40]
mov byte [rbx + 0x29], 0
mov qword [r13 + 0x30], rax
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x2a]
mov rcx, rbx
call qword [rax + 0x18]
cmp byte [rbx + 0x29], 0
mov rax, qword [r13 + 0x30]
mov qword [rbp - 0x40], rax
je 0x180043e36
cmp dword [rbx + 0x24], 0
je 0x180043e0e
mov rcx, qword [rbx]
call fcn.1800400d0
lea rdx, [0x1802bbb9c]
mov rcx, r15
mov r8, rax
call fcn.18003a440
mov eax, dword [rbx + 0x24]
mov dword [rsp + 0x54], eax
mov rax, qword [rsp + 0x48]
mov r8d, dword [rbx + 0x20]
lea rdx, [r15 + 0x128]
mov r9d, dword [rax + 4]
mov rcx, r13
call fcn.18003dc10
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180048001
test byte [rdi + 8], 0x12
je 0x180043e89
mov rcx, qword [rbx]
movzx edx, byte [rsp + 0x68]
test byte [rcx + 8], 2
je 0x180043e57
movzx eax, byte [rcx + 0xa]
cmp eax, edx
je 0x180043e57
call fcn.180019bf0
mov rax, qword [rbx]
movzx ecx, word [rax + 8]
test cl, 0x12
je 0x180043e89
mov edx, dword [rax + 0xc]
mov r8d, 0x4000
test r8w, cx
je 0x180043e74
add edx, dword [rax]
mov rax, qword [rax + 0x28]
mov ecx, r14d
cmp edx, dword [rax + 0x6c]
setg cl
test ecx, ecx
jne 0x180048a7b
mov r12, qword [rsp + 0x48]
jmp 0x18004376e
mov rax, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x70]
movsxd rcx, dword [rax + 8]
movsxd rdi, dword [rax + 4]
imul rcx, rcx, 0x38
imul rdi, rdi, 0x38
add rcx, rsi
add rdi, rsi
movsxd rsi, dword [rax + 0xc]
movzx eax, byte [rcx + 8]
imul rsi, rsi, 0x38
or al, byte [rdi + 8]
add rsi, rdx
test al, 1
je 0x180043ef6
test word [rsi + 8], r11w
je 0x180043edd
mov rcx, rsi
call fcn.180039080
jmp 0x180043764
mov r12, qword [rsp + 0x48]
mov word [rsi + 8], r8w
lea rdi, [0x180000000]
mov rsi, rdx
jmp case.0x1800430cf.62
call fcn.1800391c0
mov rcx, rdi
mov rbx, rax
call fcn.1800391c0
mov r12, qword [rsp + 0x48]
movzx edx, byte [r12]
mov rcx, rax
cmp dl, 0x55
jne 0x180043f1d
and rbx, rax
jmp 0x180043f90
cmp dl, 0x56
jne 0x180043f27
or rbx, rax
jmp 0x180043f90
test rax, rax
je 0x180043f90
jns 0x180043f41
mov eax, 0xaf
sub al, dl
movzx edx, al
cmp rcx, 0xffffffffffffffc0
jle 0x180043f47
neg rcx
cmp rcx, 0x40
jl 0x180043f61
test rbx, rbx
jns 0x180043f59
cmp dl, 0x57
je 0x180043f59
or eax, 0xffffffff
movsxd rbx, eax
jmp 0x180043f90
mov eax, r14d
movsxd rbx, eax
jmp 0x180043f90
cmp dl, 0x57
jne 0x180043f6e
shl rbx, cl
mov r8, rbx
jmp 0x180043f8d
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x180043f8d
or rdx, 0xffffffffffffffff
mov eax, 0x40
sub al, cl
movzx ecx, al
shl rdx, cl
or r8, rdx
mov rbx, r8
mov eax, 0x3e00
mov qword [rsi], rbx
and word [rsi + 8], ax
or word [rsi + 8], 4
jmp 0x180043769
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 4]
imul rbx, rbx, 0x38
add rbx, rsi
mov rcx, rbx
call fcn.1800391c0
mov qword [rbx], rax
mov r11, rax
mov eax, 0x3e00
and word [rbx + 8], ax
or word [rbx + 8], 4
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
add rax, r11
mov qword [rbx], rax
jmp 0x180043678
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 4]
imul rbx, rbx, 0x38
add rbx, rsi
movzx eax, word [rbx + 8]
test al, 4
jne 0x18004404f
test al, 8
jne 0x180044024
test al, 2
je 0x18004402c
mov edx, r8d
mov rcx, rbx
call fcn.180042ce0
mov r9, qword [rsp + 0x60]
mov r8d, 1
mov r11d, 0x2460
jmp 0x18004402c
mov rcx, rbx
call fcn.1800392b0
movzx eax, word [rbx + 8]
test al, 4
jne 0x18004404f
mov r12, qword [rsp + 0x48]
cmp dword [r12 + 8], 0
jne 0x1800486fe
mov eax, shutdown
jmp 0x180048001
mov r12, qword [rsp + 0x48]
mov ecx, 0x3e00
and ax, cx
or ax, 4
mov word [rbx + 8], ax
jmp 0x1800460d1
movsxd rcx, dword [r12 + 4]
imul rcx, rcx, 0x38
add rcx, rsi
test byte [rcx + 8], 4
je case.0x1800430cf.62
call fcn.180039350
mov r9, qword [rsp + 0x60]
mov r8d, 1
jmp 0x1800460cb
mov rax, qword [rsp + 0x48]
mov ecx, 0x4000
movsxd rbx, dword [rax + 4]
imul rbx, rbx, 0x38
add rbx, rsi
test word [rbx + 8], cx
je 0x1800440c2
mov rcx, rbx
call fcn.180038da0
mov dword [rsp + 0x54], eax
mov rax, qword [rsp + 0x48]
jmp 0x1800440c7
mov dword [rsp + 0x54], r14d
movzx r8d, byte [rsp + 0x68]
movzx edx, byte [rax + 8]
mov rcx, rbx
call fcn.180039440
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180048001
jmp 0x180043678
mov rax, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x70]
movsxd r12, dword [rax + 0xc]
movsxd rsi, dword [rax + 4]
imul r12, r12, 0x38
imul rsi, rsi, 0x38
add r12, rdx
add rsi, rdx
movzx ebx, word [r12 + 8]
movzx edi, word [rsi + 8]
movzx eax, bl
or al, dil
test al, 1
je 0x1800441a3
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 3]
test al, al
jns 0x180044154
test dil, 1
je 0x18004414c
test bl, 1
je 0x18004414c
mov eax, 0x100
test ax, bx
jne 0x18004414c
mov edx, r14d
jmp 0x18004429b
mov edx, r8d
jmp 0x18004429b
mov rsi, rdx
test al, 0x20
je 0x18004418a
mov rax, qword [rsp + 0x48]
mov ecx, 0x3e00
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
add rax, rdx
and word [rax + 8], cx
or word [rax + 8], 1
mov r12, qword [rsp + 0x48]
lea rdi, [0x180000000]
jmp case.0x1800430cf.62
mov r12, qword [rsp + 0x48]
test al, 0x10
jne 0x1800486fe
lea rdi, [0x180000000]
jmp case.0x1800430cf.62
mov r13, qword [rsp + 0x48]
movzx eax, byte [r13 + 3]
and al, 0x47
cmp al, 0x43
jl 0x1800441dc
movzx eax, dil
and al, 0xe
cmp al, 2
jne 0x1800441c7
xor edx, edx
mov rcx, rsi
call fcn.180042ce0
movzx eax, bl
and al, 0xe
cmp al, 2
jne 0x180044247
xor edx, edx
mov rcx, r12
call fcn.180042ce0
jmp 0x180044247
cmp al, 0x42
jne 0x180044247
movzx r15d, byte [rsp + 0x68]
test dil, 2
jne 0x180044217
test dil, 0xc
je 0x180044217
mov r8b, 1
movzx edx, r15b
mov rcx, rsi
call fcn.180038e70
movzx r11d, di
mov eax, 0x7e00
xor r11w, word [rsi + 8]
and r11w, ax
xor di, r11w
test bl, 2
jne 0x180044247
test bl, 0xc
je 0x180044247
mov r8b, 1
movzx edx, r15b
mov rcx, r12
call fcn.180038e70
movzx r11d, word [r12 + 8]
mov eax, 0x7e00
xor r11w, bx
and r11w, ax
xor bx, r11w
mov r15d, 0x4000
test r15w, di
je 0x180044263
mov rcx, rsi
call fcn.180038da0
mov eax, 0xbfff
and di, ax
test r15w, bx
je 0x180044279
mov rcx, r12
call fcn.180038da0
mov eax, 0xbfff
and bx, ax
mov r8, qword [r13 + 0x10]
mov rdx, rsi
mov rcx, r12
call fcn.18003eb40
mov r9, qword [rsp + 0x60]
mov r8d, 1
mov edx, eax
mov r11d, 0x2460
mov rax, qword [rsp + 0x48]
movzx ecx, byte [rax]
mov eax, r14d
sub ecx, 0x4e
je 0x1800442de
dec ecx
je 0x1800442d7
dec ecx
je 0x1800442d0
dec ecx
je 0x1800442c9
dec ecx
je 0x1800442c2
test edx, edx
setns al
jmp 0x1800442e3
test edx, edx
sets al
jmp 0x1800442e3
test edx, edx
setle al
jmp 0x1800442e3
test edx, edx
setg al
jmp 0x1800442e3
test edx, edx
sete al
jmp 0x1800442e3
test edx, edx
setne al
mov word [rsi + 8], di
mov rsi, qword [rsp + 0x70]
mov word [r12 + 8], bx
mov r12, qword [rsp + 0x48]
test byte [r12 + 3], 0x20
je 0x18004432a
movsxd rcx, dword [r12 + 8]
mov edx, 0x3e00
cdqe
lea rdi, [0x180000000]
imul rcx, rcx, 0x38
add rcx, rsi
and word [rcx + 8], dx
or word [rcx + 8], 4
mov qword [rcx], rax
jmp 0x1800460d1
test eax, eax
jne 0x1800486fe
lea rdi, [0x180000000]
jmp 0x1800460d1
mov rax, qword [r12 + 0x10]
add rax, 4
mov qword [rbp - 0x18], rax
jmp case.0x1800430cf.62
mov r13, qword [rsp + 0x48]
mov rcx, qword [rbp - 0x18]
test byte [r13 + 3], 1
mov edx, dword [r13 + 8]
mov r15d, dword [r13 + 4]
cmove rcx, r14
mov r14, qword [r13 + 0x10]
movsxd r13, dword [r13 + 0xc]
xor eax, eax
mov qword [rbp - 0x18], rcx
mov dword [rbp - 0x70], edx
mov edi, eax
mov ebx, eax
test r13, r13
jle 0x180044403
lea rsi, [r14 + 0x20]
test rcx, rcx
je 0x180044392
mov ecx, dword [rcx + rbx*4]
jmp 0x180044394
mov ecx, edi
mov rax, qword [r14 + 0x18]
mov r8, qword [rsp + 0x70]
movzx r12d, byte [rax + rbx]
lea eax, [rcx + rdx]
movsxd rdx, eax
lea eax, [rcx + r15]
movsxd rcx, eax
imul rdx, rdx, 0x38
add rdx, r8
imul rcx, rcx, 0x38
add rcx, r8
mov r8, qword [rsi]
call fcn.18003eb40
mov dword [rbp - 0x48], eax
test eax, eax
jne 0x1800443e3
mov edx, dword [rbp - 0x70]
mov rcx, qword [rbp - 0x18]
inc rbx
inc edi
add rsi, 8
cmp rbx, r13
jl 0x180044388
jmp 0x1800443ed
test r12d, r12d
je 0x1800443ed
neg eax
mov dword [rbp - 0x48], eax
mov rsi, qword [rsp + 0x70]
mov r9, qword [rsp + 0x60]
mov r8d, 1
mov r11d, 0x2460
xor r14d, r14d
mov qword [rbp - 0x18], r14
mov r12, qword [rsp + 0x48]
lea rdi, [0x180000000]
jmp 0x1800460d1
mov eax, dword [rbp - 0x48]
test eax, eax
mov rax, qword [rsp + 0x48]
jns 0x18004443b
mov eax, dword [rax + 4]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [r9 + rcx*8]
jmp case.0x1800430cf.62
mov ebx, dword [rsp + 0x50]
jne 0x180044455
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [r9 + rcx*8]
jmp 0x1800460da
mov eax, dword [rax + 0xc]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [r9 + rcx*8]
jmp 0x1800460da
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
imul rcx, rcx, 0x38
add rcx, rsi
test byte [rcx + 8], 1
je 0x180044486
mov ebx, 2
jmp 0x180044499
call fcn.1800391c0
mov ebx, r14d
test rax, rax
mov rax, qword [rsp + 0x48]
setne bl
movsxd rcx, dword [rax + 8]
imul rcx, rcx, 0x38
add rcx, rsi
test byte [rcx + 8], 1
je 0x1800444b1
mov edx, 2
jmp 0x1800444c4
call fcn.1800391c0
mov edx, r14d
test rax, rax
mov rax, qword [rsp + 0x48]
setne dl
cmp byte [rax], 0x48
movsxd rax, ebx
lea rcx, [rax + rax*2]
movsxd rax, edx
jne 0x1800444e0
add rcx, rax
movzx eax, byte [rcx + rdi + 0x2b6110]
jmp 0x1800444eb
add rcx, rax
movzx eax, byte [rcx + rdi + 0x2b6120]
mov r12, qword [rsp + 0x48]
mov r9, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x58]
movsxd rcx, dword [r12 + 0xc]
mov ebx, dword [rsp + 0x50]
mov r8d, 1
mov r11d, 0x2460
imul rcx, rcx, 0x38
add rcx, rsi
cmp eax, 2
jne 0x18004452e
mov eax, 0x3e00
and word [rcx + 8], ax
or word [rcx + 8], r8w
jmp 0x1800460da
cdqe
mov qword [rcx], rax
mov eax, 0x3e00
and word [rcx + 8], ax
or word [rcx + 8], 4
jmp 0x1800460da
mov rbx, qword [rsp + 0x48]
movsxd rdi, dword [rbx + 4]
movsxd rbx, dword [rbx + 8]
imul rbx, rbx, 0x38
imul rdi, rdi, 0x38
add rbx, rsi
add rdi, rsi
test word [rbx + 8], r11w
je 0x180044583
mov rcx, rbx
call fcn.180039080
mov r9, qword [rsp + 0x60]
mov r8d, 1
mov r11d, 0x2460
jmp 0x180044588
mov word [rbx + 8], r8w
test byte [rdi + 8], 1
jne 0x18004440a
mov eax, 4
mov rcx, rdi
mov word [rbx + 8], ax
call fcn.1800391c0
mov r12, qword [rsp + 0x48]
mov rcx, r14
test rax, rax
sete cl
mov qword [rbx], rcx
jmp 0x18004376e
mov rbx, qword [rsp + 0x48]
movsxd rdi, dword [rbx + 4]
movsxd rbx, dword [rbx + 8]
imul rbx, rbx, 0x38
imul rdi, rdi, 0x38
add rbx, rsi
add rdi, rsi
test word [rbx + 8], r11w
je 0x1800445f6
mov rcx, rbx
call fcn.180039080
mov r9, qword [rsp + 0x60]
mov r8d, 1
mov r11d, 0x2460
jmp 0x1800445fb
mov word [rbx + 8], r8w
test byte [rdi + 8], 1
jne 0x18004440a
mov eax, 4
mov rcx, rdi
mov word [rbx + 8], ax
call fcn.1800391c0
mov r12, qword [rsp + 0x48]
not rax
mov qword [rbx], rax
jmp 0x18004376e
mov rax, qword [rsp + 0x48]
mov rcx, qword [r15 + 0x120]
mov r12, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
cmp byte [rax + rcx], 0
jne 0x1800486fe
mov byte [rax + rcx], 1
jmp case.0x1800430cf.62
movsxd rcx, dword [r12 + 4]
imul rcx, rcx, 0x38
add rcx, rsi
test byte [rcx + 8], 1
je 0x180044667
mov ecx, dword [r12 + 0xc]
jmp 0x1800446a8
call fcn.180039250
ucomisd xmm0, qword [0x1802bfb08]
jp 0x180044683
jne 0x180044683
mov ecx, r14d
mov r8d, 1
jmp 0x18004468c
mov r8d, 1
mov ecx, r8d
cmp byte [r12], 0x2e
mov r9, qword [rsp + 0x60]
mov r11d, 0x2460
jne 0x1800446a8
test ecx, ecx
mov eax, r14d
sete al
mov ecx, eax
test ecx, ecx
jne 0x1800486fe
jmp 0x1800460d1
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
test byte [rax + rsi + 8], 1
jne 0x1800486fe
jmp case.0x1800430cf.62
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
test byte [rax + rsi + 8], 1
je 0x1800486fe
jmp case.0x1800430cf.62
mov r13, qword [rsp + 0x48]
mov rax, qword [r15 + 0x60]
movsxd rcx, dword [r13 + 4]
movsxd rbx, dword [r13 + 8]
mov r12, qword [rax + rcx*8]
mov dword [rbp - 0x70], ebx
cmp byte [r12], 0
jne 0x180044749
cmp byte [r12 + 3], 0
je 0x1800447eb
mov rcx, qword [r12 + 0x50]
test rcx, rcx
je 0x1800447c9
mov edx, dword [rcx + rbx*4 + 4]
test edx, edx
jle 0x1800447c9
mov r12, qword [r12 + 0x48]
lea ebx, [rdx - 1]
mov dword [rbp - 0x70], ebx
mov dword [rsp + 0x54], r14d
movsxd r13, dword [r13 + 0xc]
mov eax, dword [rsp + 0x54]
mov r15, qword [r12 + 0x70]
imul r13, r13, 0x38
add r13, rsi
mov rsi, qword [r12 + 0x18]
mov qword [rbp + 8], r15
mov qword [rbp - 0x30], r13
mov qword [rbp - 0x38], rsi
test eax, eax
jne 0x18004887d
mov rdi, qword [rbp - 0x78]
mov eax, dword [rdi + 0x7c]
cmp dword [r12 + 0x58], eax
je 0x1800449fa
cmp byte [r12 + 2], 0
je 0x180044833
cmp byte [r12], 3
jne 0x180044804
mov rdx, qword [rsp + 0x70]
movsxd rax, esi
imul rax, rax, 0x38
mov ebx, dword [rax + rdx + 0xc]
mov dword [r12 + 0x60], ebx
mov dword [r12 + 0x5c], ebx
mov rax, qword [rax + rdx + 0x10]
mov qword [r12 + 0x68], rax
jmp 0x1800448c3
mov rcx, r12
call fcn.18003e300
mov r9, qword [rsp + 0x60]
mov dword [rsp + 0x54], eax
mov r8d, 1
mov r11d, 0x2460
jmp 0x18004474e
mov rax, qword [r12 + 0x18]
cmp byte [rax + 0x56], 1
je 0x180044749
mov rcx, r12
call fcn.18003e380
jmp 0x1800447d1
test word [r13 + 8], r11w
je 0x180044818
mov rcx, r13
call fcn.180039080
jmp 0x180043764
mov word [r13 + 8], r8w
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
lea rdi, [0x180000000]
jmp 0x1800460d1
cmp byte [r12 + 4], 0
mov rcx, rsi
jne 0x18004486e
call fcn.18002f950
movsx rax, byte [rsi + 0x58]
mov r11, qword [rsi + 0x20]
mov rcx, qword [rsi + rax*8 + 0x98]
movzx eax, word [rsi + 0x34]
mov ebx, dword [rcx + 0x58]
sub ebx, dword [rsi + 0x28]
cmp eax, ebx
cmovb ebx, eax
mov rax, qword [rsi + 0x28]
mov dword [r12 + 0x5c], r11d
jmp 0x18004489b
call fcn.18002f950
mov eax, dword [rsi + 0x30]
mov dword [r12 + 0x5c], eax
movsx rax, byte [rsi + 0x58]
mov rcx, qword [rsi + rax*8 + 0x98]
movzx eax, word [rsi + 0x34]
mov ebx, dword [rcx + 0x58]
sub ebx, dword [rsi + 0x28]
cmp eax, ebx
cmovb ebx, eax
mov rax, qword [rsi + 0x28]
mov qword [r12 + 0x68], rax
mov eax, dword [r12 + 0x5c]
cmp eax, ebx
ja 0x1800448b0
mov dword [r12 + 0x60], eax
jmp 0x1800448c3
mov rcx, qword [rsp + 0x78]
cmp eax, dword [rcx + 0x6c]
ja 0x180048a75
mov dword [r12 + 0x60], ebx
mov eax, dword [rdi + 0x7c]
mov rcx, qword [r12 + 0x68]
mov dword [r12 + 0x58], eax
movzx eax, byte [rcx]
cmp al, 0x80
jae 0x1800448e4
movzx ecx, al
mov eax, 1
mov dword [rbp - 0x20], ecx
jmp 0x1800448f3
lea rdx, [rbp - 0x20]
call fcn.18001b440
mov ecx, dword [rbp - 0x20]
movzx eax, al
movzx eax, al
mov word [r12 + 0x12], r14w
mov dword [r12 + 0x64], eax
mov dword [r15], ecx
cmp ebx, ecx
jae 0x180044929
mov qword [r12 + 0x68], r14
mov dword [r12 + 0x60], r14d
cmp ecx, 0x18003
ja 0x180048831
cmp ecx, dword [r12 + 0x5c]
ja 0x180048831
mov ebx, dword [rbp - 0x70]
mov eax, dword [r15]
cmp dword [r12 + 0x64], eax
jae 0x180044b70
mov rax, qword [r12 + 0x68]
mov qword [rbp - 8], rax
test rax, rax
jne 0x1800449b5
mov qword [rbp + 0xa0], rax
mov qword [rbp + 0xa8], rax
mov qword [rbp + 0xb0], rax
mov qword [rbp + 0xb8], rax
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0xc8], rax
mov qword [rbp + 0xd0], rax
cmp byte [r12 + 4], al
mov r8d, dword [r15]
lea rax, [rbp + 0xa0]
mov r9d, r14d
sete r9b
xor edx, edx
mov rcx, rsi
mov qword [rsp + 0x20], rax
call fcn.180039c10
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18004883b
mov rax, qword [rbp + 0xb0]
mov qword [rbp - 8], rax
movzx r13d, word [r12 + 0x12]
mov ebx, dword [r12 + 0x64]
mov esi, dword [r15 + r13*4]
mov r15d, dword [r15]
add rbx, rax
add r15, rax
mov r14d, r13d
movzx edi, byte [rbx]
mov eax, 0x80
mov dword [rbp - 0x5c], edi
cmp edi, eax
jae 0x180044a67
lea rcx, [0x180000000]
inc rbx
movzx eax, byte [rdi + rcx + 0x2b6070]
jmp 0x180044a9c
movzx eax, word [r12 + 0x12]
cmp eax, ebx
jle 0x18004492c
movsxd rax, ebx
mov edi, dword [r12 + rax*4 + 0x78]
mov dword [rbp - 0x5c], edi
mov eax, 0x2460
test word [r13 + 8], ax
je 0x180044a27
mov rcx, r13
call fcn.180039080
movzx eax, byte [rsp + 0x68]
movsxd rcx, ebx
mov byte [r13 + 0xa], al
mov eax, dword [r15 + rcx*4 + 4]
cmp dword [r12 + 0x60], eax
jb 0x180044c8a
mov esi, dword [r15 + rcx*4]
add rsi, qword [r12 + 0x68]
cmp edi, 0xc
jae 0x180044bb4
mov r8, r13
mov edx, edi
mov rcx, rsi
call fcn.18003e570
jmp 0x180043764
lea rdx, [rbp - 0x5c]
mov rcx, rbx
call fcn.18001b440
mov edi, dword [rbp - 0x5c]
movzx r11d, al
mov eax, 0x80
add rbx, r11
cmp edi, eax
jb 0x180044a8d
lea eax, [rdi - 0xc]
shr eax, 1
jmp 0x180044a9c
lea rcx, [0x180000000]
movzx eax, byte [rdi + rcx + 0x2b6070]
add rsi, rax
mov rax, qword [rbp + 8]
inc r13d
mov dword [r12 + r14*4 + 0x78], edi
movsxd r14, r13d
mov dword [rax + r14*4], esi
cmp r13d, dword [rbp - 0x70]
jg 0x180044ac1
cmp rbx, r15
jb 0x1800449d0
mov eax, ebx
mov word [r12 + 0x12], r13w
sub eax, dword [rbp - 8]
mov dword [r12 + 0x64], eax
cmp rbx, r15
jb 0x180044aea
ja 0x180048848
mov eax, dword [r12 + 0x5c]
cmp rsi, rax
jne 0x180048848
mov eax, dword [r12 + 0x5c]
cmp rsi, rax
ja 0x180048848
cmp qword [r12 + 0x68], 0
mov r11d, 0x2460
jne 0x180044b2b
test word [rbp + 0xa8], r11w
jne 0x180044b19
cmp dword [rbp + 0xc0], 0
je 0x180044b2b
lea rcx, [rbp + 0xa0]
call fcn.180039110
mov r11d, 0x2460
mov r13, qword [rbp - 0x30]
mov ebx, dword [rbp - 0x70]
mov r15, qword [rbp + 8]
mov rsi, qword [rbp - 0x38]
xor r14d, r14d
movzx eax, word [r12 + 0x12]
cmp eax, ebx
jg 0x180044a13
mov r12, qword [rsp + 0x48]
cmp byte [r12 + 1], 0xf8
jne 0x180044b7f
mov rdx, qword [r12 + 0x10]
mov r8d, 0x800
mov rcx, r13
call fcn.180039760
jmp 0x180043769
mov edi, r14d
mov dword [rbp - 0x5c], r14d
mov r11d, 0x2460
jmp 0x180044b3d
test word [r13 + 8], r11w
je 0x180044b93
mov rcx, r13
call fcn.180039080
jmp 0x180043769
mov rsi, qword [rsp + 0x70]
mov r9, qword [rsp + 0x60]
mov r8d, 1
mov word [r13 + 8], r8w
lea rdi, [0x180000000]
jmp 0x1800460d1
lea ebx, [rdi - 0xc]
shr ebx, 1
mov dword [r13 + 0xc], ebx
lea edx, [rbx + 2]
cmp dword [r13 + 0x20], edx
jge 0x180044c3e
mov eax, 1
xor r8d, r8d
mov rcx, r13
mov word [r13 + 8], ax
call fcn.180038bb0
test eax, eax
je 0x180044c46
mov r13, qword [rsp + 0x78]
mov r15, qword [rbp - 0x78]
mov eax, 1
movzx r12d, byte [rsp + 0x40]
mov edi, 7
cmp byte [r13 + 0x55], 0
jne 0x180044c23
cmp byte [r13 + 0x56], 0
jne 0x180044c23
cmp dword [r13 + 0xb4], 0
mov byte [r13 + 0x55], 1
jle 0x180044c1c
mov dword [r13 + 0x148], eax
inc dword [r13 + 0x150]
lea rdx, str.out_of_memory
mov rcx, r15
call fcn.18003a440
mov eax, edi
mov edi, 1
jmp 0x18004800c
mov rax, qword [r13 + 0x18]
mov qword [r13 + 0x10], rax
mov rcx, qword [r13 + 0x10]
mov r8, rbx
mov rdx, rsi
call fcn.1800acfd0
mov r11, qword [r13 + 0x10]
mov byte [rbx + r11], 0
mov rax, qword [r13 + 0x10]
mov byte [rbx + rax + 1], 0
mov eax, edi
lea rdi, [0x180000000]
and eax, 1
movzx eax, word [rdi + rax*2 + 0x2b593c]
mov word [r13 + 8], ax
mov rsi, qword [rsp + 0x70]
jmp 0x180043678
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 3]
test al, 0xc0
je 0x180044ca6
cmp edi, 0xc
jb 0x180044ca2
test dil, 1
je 0x180044ccf
test al, al
js 0x180044ccf
mov eax, 0x80
cmp edi, eax
jb 0x180044cb8
lea r8d, [rdi - 0xc]
shr r8d, 1
jmp 0x180044cca
lea rdx, [0x180000000]
mov eax, edi
movzx r8d, byte [rax + rdx + 0x2b6070]
test r8d, r8d
jne 0x180044ce5
lea rcx, [0x1802f0558]
mov r8, r13
mov edx, edi
call fcn.18003e570
jmp 0x180043764
cmp byte [r12 + 4], 0
mov edx, dword [r15 + rcx*4]
mov r9d, r14d
mov rcx, rsi
sete r9b
mov qword [rsp + 0x20], r13
call fcn.180039c10
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18004887d
mov rcx, qword [r13 + 0x10]
mov r8, r13
mov edx, edi
call fcn.18003e570
mov eax, 0xefff
and word [r13 + 8], ax
jmp 0x180043764
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 4]
mov rdi, qword [rax + 0x10]
movzx eax, byte [rdi]
imul rbx, rbx, 0x38
add rbx, rsi
test al, al
je 0x180044179
movzx esi, byte [rsp + 0x68]
movzx r8d, sil
movzx edx, al
mov rcx, rbx
inc rdi
call fcn.180042e20
movzx eax, byte [rdi]
add rbx, 0x38
test al, al
jne 0x180044d50
jmp 0x180043764
mov rcx, qword [rsp + 0x48]
mov rdi, qword [rbp - 0x78]
mov r12, r14
mov eax, dword [rcx + 8]
mov rbx, qword [rcx + 0x10]
movzx r13d, byte [rdi + 0x90]
dec eax
mov r15d, r14d
mov r11, r14
mov qword [rbp - 0x70], r14
movsxd r14, dword [rcx + 4]
imul r14, r14, 0x38
add r14, rsi
movsxd rsi, eax
movsxd rax, dword [rcx + 0xc]
imul rsi, rsi, 0x38
add rsi, r14
mov qword [rbp - 8], rsi
imul rax, rax, 0x38
add rax, qword [rsp + 0x70]
mov qword [rbp - 0x38], rax
test rbx, rbx
je 0x180044e10
movzx eax, byte [rbx]
movzx esi, byte [rsp + 0x68]
mov rdi, r14
nop word [rax + rax]
movzx r8d, sil
movzx edx, al
mov rcx, rdi
call fcn.180042e20
movzx eax, byte [rbx + 1]
inc rbx
add rdi, 0x38
test al, al
jne 0x180044de0
mov r11, qword [rbp - 0x70]
mov rsi, qword [rbp - 8]
nop word [rax + rax]
movzx r10d, word [rsi + 8]
test r10b, 1
je 0x180044e24
xor eax, eax
mov ebx, eax
mov dword [rbp - 0x44], eax
jmp 0x180044e39
lea r8, [rbp - 0x44]
mov r9d, r10d
mov edx, r13d
mov rcx, rsi
call fcn.18003e3d0
mov ebx, dword [rbp - 0x44]
mov edi, eax
mov dword [rsi + 0x24], eax
mov eax, 0x4000
test ax, r10w
je 0x180044e6f
test r12, r12
je 0x180044e60
mov rcx, rsi
call fcn.180038da0
test eax, eax
jne 0x180044bdf
jmp 0x180044e6f
movsxd rcx, dword [rsi]
add r11, rcx
sub ebx, ecx
mov dword [rbp - 0x44], ebx
mov qword [rbp - 0x70], r11
mov eax, ebx
mov r8d, 1
add r12, rax
mov ecx, r8d
cmp edi, 0x7f
jbe 0x180044e9b
mov eax, edi
shr rax, 7
test rax, rax
je 0x180044e9b
nop dword [rax]
shr rax, 7
inc ecx
test rax, rax
jne 0x180044e90
mov r11, qword [rbp - 0x70]
sub rsi, 0x38
add r15d, ecx
cmp rsi, r14
jae 0x180044e10
cmp r15d, 0x7e
jle 0x180044ef0
movsxd rax, r15d
mov edx, r8d
shr rax, 7
test rax, rax
je 0x180044ecf
shr rax, 7
inc edx
test rax, rax
jne 0x180044ec4
add r15d, edx
mov ecx, r8d
movsxd rax, r15d
shr rax, 7
test rax, rax
je 0x180044eec
shr rax, 7
inc ecx
test rax, rax
jne 0x180044ee1
cmp edx, ecx
jge 0x180044ef3
inc r15d
mov rcx, qword [rsp + 0x78]
mov r13, qword [rbp - 0x70]
movsxd rbx, r15d
movsxd rcx, dword [rcx + 0x6c]
add r12, rbx
lea rax, [r12 + r13]
mov qword [rbp - 0x30], r12
cmp rax, rcx
jg 0x180048a6a
mov rdi, qword [rbp - 0x38]
cmp dword [rdi + 0x20], r12d
jge 0x180044f39
xor r8d, r8d
mov edx, r12d
mov rcx, rdi
call fcn.180038bb0
test eax, eax
jne 0x180044bdf
jmp 0x180044f46
mov rax, qword [rdi + 0x18]
and word [rdi + 8], 0xd
mov qword [rdi + 0x10], rax
mov rsi, qword [rdi + 0x10]
mov ecx, 0x80
cmp r15d, ecx
jae 0x180044f62
mov r12d, 1
mov byte [rsi], r15b
mov eax, r12d
jmp 0x180044faf
cmp rbx, 0x7f
ja 0x180044f78
and bl, 0x7f
mov r12d, 1
mov byte [rsi], bl
mov eax, r12d
jmp 0x180044faf
cmp rbx, 0x3fff
ja 0x180044f99
mov rax, rbx
shr rax, 7
or al, cl
and bl, 0x7f
mov byte [rsi], al
mov byte [rsi + 1], bl
mov eax, 2
jmp 0x180044fa9
mov rdx, rbx
mov rcx, rsi
call fcn.18001b180
mov ecx, 0x80
mov r12d, 1
movzx edi, al
xor r13d, r13d
mov r10d, dword [r14 + 0x24]
cmp r10d, ecx
jae 0x180044fca
movsxd rax, edi
mov byte [rax + rsi], r10b
mov eax, r12d
jmp 0x180045009
movsxd rcx, edi
mov rdx, r10
add rcx, rsi
cmp r10, 0x7f
ja 0x180044fe3
and dl, 0x7f
mov eax, r12d
mov byte [rcx], dl
jmp 0x180045009
cmp rdx, 0x3fff
ja 0x180045004
mov rax, rdx
shr rax, 7
or al, 0x80
and dl, 0x7f
mov byte [rcx], al
mov byte [rcx + 1], dl
mov eax, 2
jmp 0x180045009
call fcn.18001b180
movzx eax, al
movsxd r9, r15d
add edi, eax
lea eax, [r10 - 1]
add r9, rsi
cmp eax, 6
ja 0x180045050
mov rdx, qword [r14]
lea rcx, [0x180000000]
or eax, 0xffffffff
movzx ecx, byte [r10 + rcx + 0x2b6070]
mov ebx, ecx
lea r8, [r9 + rcx]
nop dword [rax]
dec r8
mov byte [r8], dl
shr rdx, 8
add ecx, eax
jne 0x180045040
jmp 0x180045072
cmp r10d, 0xc
jb 0x18004506f
mov ebx, dword [r14 + 0xc]
test ebx, ebx
je 0x180045072
mov rdx, qword [r14 + 0x10]
mov r8d, ebx
mov rcx, r9
call fcn.1800acfd0
jmp 0x180045072
mov ebx, r13d
add r14, 0x38
add r15d, ebx
mov ecx, 0x80
cmp r14, qword [rbp - 8]
jbe 0x180044fb5
mov rax, qword [rbp - 0x38]
mov r13, qword [rbp - 0x70]
mov r12, qword [rbp - 0x30]
mov ecx, reloc.WS2_32.dll_recv
mov dword [rax + 0xc], r12d
mov word [rax + 8], cx
test r13, r13
je 0x1800450b2
mov ecx, 0x4010
mov dword [rax], r13d
mov word [rax + 8], cx
mov byte [rax + 0xa], 1
xor r14d, r14d
jmp 0x180043764
mov rax, qword [rsp + 0x48]
mov qword [rbp + 0x18], r14
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x60]
mov rcx, qword [rax + rcx*8]
mov rcx, qword [rcx + 0x18]
cmp dword [rcx + 0x48], 0
jne 0x1800450eb
mov rbx, r14
mov dword [rsp + 0x54], r14d
mov qword [rbp + 0x18], rbx
jmp 0x18004510a
lea rdx, [rbp + 0x18]
call fcn.180035ca0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048001
mov rbx, qword [rbp + 0x18]
mov r11d, 0x2460
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
add rax, qword [r15 + 0x10]
test word [rax + 8], r11w
je 0x180045132
mov rcx, rax
call fcn.180042ef0
mov r11d, 0x2460
jmp 0x18004513b
mov ecx, 4
mov word [rax + 8], cx
mov qword [rax], rbx
mov r12, qword [rsp + 0x48]
mov r9, qword [rsp + 0x60]
mov r8d, 1
jmp 0x1800460d1
mov rax, qword [rsp + 0x48]
mov esi, dword [rax + 4]
mov rdi, qword [rax + 0x10]
mov dword [rbp - 0x70], esi
test esi, esi
jne 0x18004521d
cmp dword [r13 + 0xb0], esi
jg 0x18004888b
mov rcx, rdi
call fcn.18001a360
mov r8d, dword [r13 + 0x278]
xor edx, edx
add r8d, dword [r13 + 0x274]
mov rcx, r13
movsxd rsi, eax
call fcn.1800921e0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048001
lea rdx, [rsi + 0x21]
mov rcx, r13
call fcn.180017520
mov rbx, rax
test rax, rax
je 0x180043764
lea r9, [rax + 0x20]
lea ecx, [rsi + 1]
mov rdx, rdi
movsxd r8, ecx
mov rcx, r9
mov qword [rax], r9
call fcn.1800acfd0
cmp byte [r13 + 0x53], 0
je 0x1800451e9
mov byte [r13 + 0x53], 0
mov byte [r13 + 0x5b], 1
jmp 0x1800451f0
inc dword [r13 + 0x274]
mov rax, qword [r13 + 0x268]
mov qword [rbx + 0x18], rax
mov rax, qword [r13 + 0x280]
mov qword [r13 + 0x268], rbx
mov qword [rbx + 8], rax
mov rax, qword [r13 + 0x288]
mov qword [rbx + 0x10], rax
jmp 0x180043764
mov r12, qword [r13 + 0x268]
test r12, r12
je 0x18004524d
nop dword [rax]
mov rcx, qword [r12]
mov rdx, rdi
call fcn.18001a6d0
test eax, eax
je 0x18004526b
mov r12, qword [r12 + 0x18]
inc r14d
test r12, r12
jne 0x180045230
lea rdx, str.no_such_savepoint:__s
mov r8, rdi
mov rcx, r15
call fcn.18003a440
mov edi, 1
mov eax, edi
jmp 0x180048006
cmp dword [r13 + 0xb0], 0
jle 0x18004527e
cmp esi, 1
je 0x1800488a4
cmp qword [r12 + 0x18], 0
jne 0x1800452e0
cmp byte [r13 + 0x5b], 0
je 0x1800452e0
mov edi, 1
mov r15d, edi
cmp esi, edi
jne 0x1800452e7
mov rbx, qword [rbp - 0x78]
mov rax, qword [rbx]
mov rcx, qword [rax + 0x288]
add rcx, qword [rax + 0x280]
test rcx, rcx
jg 0x180048901
mov rcx, rbx
mov byte [r13 + 0x53], dil
call fcn.18003d580
cmp eax, 5
je 0x1800488bd
mov byte [r13 + 0x5b], 0
mov ecx, dword [rbx + 0x84]
mov dword [rsp + 0x54], ecx
jmp 0x1800453dd
xor ecx, ecx
mov r15d, ecx
jmp 0x1800452e9
xor ecx, ecx
mov eax, dword [r13 + 0x274]
sub eax, r14d
lea r14d, [rax - 1]
mov rax, qword [rsp + 0x78]
cmp esi, 2
jne 0x180045359
mov r13d, dword [r13 + 0x2c]
mov edi, ecx
shr r13d, 1
and r13d, 1
cmp dword [rax + 0x28], 0
jle 0x18004535c
test r13d, r13d
mov esi, ecx
mov rbx, rcx
sete sil
mov rcx, qword [rax + 0x20]
mov r8d, esi
mov edx, 0x204
mov rcx, qword [rcx + rbx + 8]
call fcn.18002f1a0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18004887d
mov rax, qword [rsp + 0x78]
inc edi
add rbx, 0x20
cmp edi, dword [rax + 0x28]
jl 0x180045320
mov esi, dword [rbp - 0x70]
xor ecx, ecx
jmp 0x18004535c
mov r13d, ecx
cmp dword [rax + 0x28], 0
mov edi, ecx
jle 0x18004539f
mov rbx, rcx
nop word [rax + rax]
mov rcx, qword [rax + 0x20]
mov r8d, r14d
mov edx, esi
mov rcx, qword [rcx + rbx + 8]
call fcn.18002f560
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18004887d
mov rax, qword [rsp + 0x78]
inc edi
add rbx, 0x20
cmp edi, dword [rax + 0x28]
jl 0x180045370
test r13d, r13d
mov r13, qword [rsp + 0x78]
je 0x1800453dd
mov rax, qword [r13 + 8]
test rax, rax
je 0x1800453d0
nop word [rax + rax]
or dword [rax + 0x8c], 1
mov rax, qword [rax + 0x58]
test rax, rax
jne 0x1800453c0
mov rcx, r13
call fcn.18005dfd0
or dword [r13 + 0x2c], 2
cmp qword [r13 + 0x268], r12
je 0x18004545a
nop word [rax + rax]
cmp qword [r13 + 0x290], 0
mov rcx, qword [r13 + 0x268]
mov rax, qword [rcx + 0x18]
mov qword [r13 + 0x268], rax
je 0x180045419
mov rdx, rcx
mov rcx, r13
call fcn.180017190
jmp 0x18004544a
cmp rcx, qword [r13 + 0x178]
jb 0x180045445
cmp rcx, qword [r13 + 0x180]
jae 0x180045445
mov rax, qword [r13 + 0x170]
mov qword [rcx], rax
dec dword [r13 + 0x158]
mov qword [r13 + 0x170], rcx
jmp 0x18004544a
call fcn.180017120
dec dword [r13 + 0x274]
cmp qword [r13 + 0x268], r12
jne 0x1800453f0
cmp esi, 1
jne 0x1800454e8
cmp qword [r13 + 0x290], 0
mov rax, qword [r12 + 0x18]
mov qword [r13 + 0x268], rax
je 0x180045486
mov rdx, r12
mov rcx, r13
call fcn.180017190
jmp 0x1800454bb
cmp r12, qword [r13 + 0x178]
jb 0x1800454b3
cmp r12, qword [r13 + 0x180]
jae 0x1800454b3
mov rax, qword [r13 + 0x170]
mov qword [r12], rax
dec dword [r13 + 0x158]
mov qword [r13 + 0x170], r12
jmp 0x1800454bb
mov rcx, r12
call fcn.180017120
test r15d, r15d
jne 0x18004550a
dec dword [r13 + 0x274]
mov r8d, r14d
mov edx, esi
mov rcx, r13
call fcn.1800921e0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048882
xor r14d, r14d
jmp 0x180043764
mov rax, qword [r12 + 8]
mov qword [r13 + 0x280], rax
mov rax, qword [r12 + 0x10]
mov qword [r13 + 0x288], rax
test r15d, r15d
je 0x1800454c7
cmp esi, 2
je 0x1800454c7
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180048882
xor r14d, r14d
jmp 0x180043764
mov rax, qword [rsp + 0x48]
mov edx, dword [rax + 8]
test edx, edx
je 0x180045538
test dword [r13 + 0x2c], 0x2000000
jne 0x18004892b
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x20]
shl rcx, 5
mov rbx, qword [rcx + rax + 8]
test rbx, rbx
je 0x1800456c0
mov rcx, rbx
call fcn.18002dfe0
mov dword [rsp + 0x54], eax
cmp al, 5
je 0x180048935
test eax, eax
jne 0x180048001
mov rax, qword [rsp + 0x48]
cmp dword [rax + 8], 0
je 0x180045659
test byte [r15 + 0x94], 0x10
je 0x180045659
cmp byte [r13 + 0x53], 0
je 0x1800455a0
cmp dword [r13 + 0xac], 1
jle 0x180045659
cmp dword [r15 + 0xa4], 0
jne 0x1800455c6
inc dword [r13 + 0x278]
mov ecx, dword [r13 + 0x278]
add ecx, dword [r13 + 0x274]
mov dword [r15 + 0xa4], ecx
mov r8d, dword [r15 + 0xa4]
xor edx, edx
mov rcx, r13
dec r8d
call fcn.1800921e0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18004563d
mov edi, dword [r15 + 0xa4]
mov rsi, qword [rbx + 8]
cmp byte [rbx + 0x11], al
je 0x180045602
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], al
jne 0x180045602
mov rcx, rbx
call fcn.18002af30
mov rcx, qword [rsi]
cmp edi, dword [rcx + 0x80]
jle 0x180045620
cmp byte [rcx + 0xa], 0
je 0x180045620
mov edx, edi
call fcn.180027350
mov dword [rsp + 0x54], eax
jmp 0x180045625
mov dword [rsp + 0x54], r14d
cmp byte [rbx + 0x11], 0
je 0x180045638
dec dword [rbx + 0x14]
jne 0x180045638
mov rcx, rbx
call fcn.18002af00
mov rsi, qword [rsp + 0x70]
mov rax, qword [r13 + 0x280]
mov qword [r15 + 0xd8], rax
mov rax, qword [r13 + 0x288]
mov qword [r15 + 0xe0], rax
cmp byte [rbx + 0x11], 0
mov rdi, qword [rbx + 8]
je 0x180045674
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x180045674
mov rcx, rbx
call fcn.18002af30
cmp byte [rbx + 0x11], 0
mov rax, qword [rdi + 0x18]
mov rcx, qword [rax + 0x50]
mov edi, dword [rcx + 0x28]
bswap edi
je 0x180045694
dec dword [rbx + 0x14]
jne 0x180045694
mov rcx, rbx
call fcn.18002af00
mov rax, qword [rsp + 0x48]
mov r9, qword [rsp + 0x60]
mov r8d, 1
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x20]
mov r11d, 0x2460
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rcx + 4]
jmp 0x1800456c6
mov edi, r14d
mov eax, r14d
mov r12, qword [rsp + 0x48]
cmp byte [r12 + 3], 0
je 0x1800456e9
cmp edi, dword [r12 + 0xc]
jne 0x180048971
cmp eax, dword [r12 + 0x10]
jne 0x180048971
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180048001
lea rdi, [0x180000000]
jmp 0x1800460d1
mov rbx, qword [rsp + 0x48]
mov rcx, qword [r13 + 0x20]
lea r8, [rbp + 0x48]
movsxd rax, dword [rbx + 4]
mov edx, dword [rbx + 0xc]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.180035b70
movsxd r11, dword [rbx + 8]
mov rax, rbx
mov eax, 0x2460
imul r11, r11, 0x38
add r11, qword [r15 + 0x10]
test word [r11 + 8], ax
je 0x180045763
mov rcx, r11
call fcn.180042ef0
mov r9, qword [rsp + 0x60]
mov r12, rbx
mov r11, rax
movsxd rax, dword [rbp + 0x48]
mov r8d, 1
mov qword [r11], rax
jmp 0x1800460cb
mov r9, qword [rsp + 0x60]
mov eax, 4
mov r12, rbx
mov word [r11 + 8], ax
movsxd rax, dword [rbp + 0x48]
mov r8d, 1
mov qword [r11], rax
jmp 0x1800460cb
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 8]
shl rbx, 5
add rbx, qword [r13 + 0x20]
mov rcx, qword [rbx + 8]
call fcn.180035c00
mov rdx, qword [rsp + 0x48]
mov dword [rsp + 0x54], eax
mov eax, dword [rdx + 8]
cmp eax, 1
jne 0x1800457c9
mov rcx, qword [rbx + 0x18]
mov eax, dword [rdx + 0xc]
mov dword [rcx], eax
or dword [r13 + 0x2c], 2
jmp 0x1800457d9
cmp eax, 2
jne 0x1800457d9
mov rcx, qword [rbx + 0x18]
movzx eax, byte [rdx + 0xc]
mov byte [rcx + 0x70], al
mov rax, rdx
cmp dword [rax + 4], 1
jne 0x180045808
mov rax, qword [r13 + 8]
test rax, rax
je 0x180045800
nop dword [rax + rax]
or dword [rax + 0x8c], 1
mov rax, qword [rax + 0x58]
test rax, rax
jne 0x1800457f0
and dword [r15 + 0x8c], 0xfffffffe
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180048001
mov r9, qword [rsp + 0x60]
mov r12, rdx
lea r8d, [rax + 1]
jmp 0x1800460cb
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x60]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x48]
test rdi, rdi
je 0x180045853
mov eax, dword [rcx + 8]
cmp dword [rdi + 0xc], eax
je 0x180045990
jmp 0x180045853
mov rcx, qword [rsp + 0x48]
test byte [r15 + 0x8c], 1
jne 0x1800489c5
movsxd r13, dword [rcx + 8]
mov edi, r14d
mov r12, r14
movsxd r14, dword [rcx + 0xc]
mov rcx, qword [rsp + 0x78]
mov rax, r14
shl rax, 5
add rax, qword [rcx + 0x20]
mov r15, qword [rax + 8]
cmp bl, 0x37
jne 0x1800458b3
mov rcx, qword [rsp + 0x48]
mov rax, qword [rax + 0x18]
movzx esi, byte [rcx + 3]
movzx ecx, byte [rax + 0x70]
mov rax, qword [rbp - 0x78]
and esi, 8
or esi, 4
cmp cl, byte [rax + 0x90]
jae 0x1800458b5
mov byte [rax + 0x90], cl
jmp 0x1800458b5
xor esi, esi
mov rcx, qword [rsp + 0x48]
test byte [rcx + 3], 0x10
je 0x1800458ed
mov rbx, r13
imul rbx, rbx, 0x38
add rbx, qword [rsp + 0x70]
mov rcx, rbx
call fcn.1800391c0
mov rcx, qword [rsp + 0x48]
mov qword [rbx], rax
mov r13d, dword [rbx]
mov eax, 0x3e00
and word [rbx + 8], ax
or word [rbx + 8], 4
movzx eax, byte [rcx + 1]
cmp al, 0xfa
jne 0x180045909
mov r12, qword [rcx + 0x10]
movzx edi, word [r12 + 8]
movzx eax, word [r12 + 6]
add edi, eax
jmp 0x180045910
cmp al, 0xf2
jne 0x180045910
mov edi, dword [rcx + 0x10]
mov edx, dword [rcx + 4]
mov rcx, qword [rbp - 0x78]
mov r9d, r14d
mov r8d, edi
mov byte [rsp + 0x20], 0
call fcn.180042b80
mov rdi, rax
test rax, rax
je 0x180044bdf
mov rcx, qword [rax + 0x18]
or dword [rax + 8], 4
mov r9, r12
mov qword [rsp + 0x20], rcx
mov r8d, esi
mov edx, r13d
mov rcx, r15
mov byte [rax + 2], 1
mov dword [rax + 0xc], r13d
call fcn.18002f720
mov rcx, qword [rsp + 0x48]
mov r13, qword [rsp + 0x78]
mov r15, qword [rbp - 0x78]
mov rsi, qword [rsp + 0x70]
mov r9, qword [rsp + 0x60]
mov qword [rdi + 0x28], r12
cmp byte [rcx + 1], 0xfa
mov dword [rsp + 0x54], eax
setne al
xor r14d, r14d
mov r11d, 0x2460
lea r8d, [r14 + 1]
mov byte [rdi + 4], al
movzx ecx, byte [rcx + 3]
mov rax, qword [rdi + 0x18]
and cl, 3
mov byte [rax + 0x57], cl
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180048001
mov r12, qword [rsp + 0x48]
lea rdi, [0x180000000]
jmp 0x1800460d1
mov rbx, qword [rsp + 0x48]
or r9d, 0xffffffff
mov rcx, r15
mov r8d, dword [rbx + 8]
mov edx, dword [rbx + 4]
mov byte [rsp + 0x20], 0
call fcn.180042b80
mov rdi, rax
test rax, rax
je 0x180044be8
or dword [rax + 8], 1
mov byte [rax + 2], 1
movzx ecx, byte [rbx + 3]
or ecx, 5
lea r12, [rax + 0x20]
mov dword [rsp + 0x28], 0x41e
mov dword [rsp + 0x20], ecx
mov rcx, qword [r13]
mov r8, r13
mov r9, r12
xor edx, edx
call fcn.18002cd50
test eax, eax
jne 0x180048001
mov rcx, qword [r12]
mov ebx, 1
mov edx, ebx
call fcn.18002dfe0
test eax, eax
jne 0x180048d9a
mov rax, qword [rsp + 0x48]
mov r13, qword [rax + 0x10]
test r13, r13
je 0x180045ac7
movzx esi, byte [rax + 3]
mov rbx, qword [r12]
or esi, 2
cmp byte [rbx + 0x11], 0
je 0x180045a68
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x180045a68
mov rcx, rbx
call fcn.18002af30
lea rdx, [rbp + 0x30]
mov r8d, esi
mov rcx, rbx
call fcn.180035150
cmp byte [rbx + 0x11], 0
mov dword [rsp + 0x54], eax
je 0x180045a92
dec dword [rbx + 0x14]
jne 0x180045a92
mov rcx, rbx
call fcn.18002af00
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180045abc
mov rax, qword [rdi + 0x18]
mov edx, dword [rbp + 0x30]
mov rcx, qword [r12]
mov r9, r13
mov r8d, 4
mov qword [rsp + 0x20], rax
mov qword [rdi + 0x28], r13
call fcn.18002f720
mov dword [rsp + 0x54], eax
mov rsi, qword [rsp + 0x70]
mov byte [rdi + 4], 0
jmp 0x180045ae9
mov rax, qword [rdi + 0x18]
mov rcx, qword [r12]
xor r9d, r9d
lea r8d, [r9 + 4]
mov edx, ebx
mov qword [rsp + 0x20], rax
call fcn.18002f720
mov byte [rdi + 4], bl
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180047f13
mov r12, qword [rsp + 0x48]
mov eax, r14d
cmp byte [r12 + 3], 8
setne al
shl eax, 2
xor eax, dword [rdi + 8]
and eax, 4
xor dword [rdi + 8], eax
jmp 0x18004376e
mov rax, qword [rsp + 0x48]
or r9d, 0xffffffff
mov rcx, r15
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
mov byte [rsp + 0x20], 1
call fcn.180042b80
test rax, rax
je 0x180044be8
mov rdx, qword [rsp + 0x48]
mov r8, rax
mov rcx, qword [rdx + 0x10]
mov qword [rax + 0x28], rcx
mov edx, dword [rdx + 0xc]
mov rcx, r13
call fcn.18004aa40
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048001
jmp 0x180043678
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x60]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rdx + 0x38]
lea rax, [rcx + 1]
mov qword [rdx + 0x38], rax
test rcx, rcx
je 0x1800486fe
jmp case.0x1800430cf.62
mov rax, qword [rsp + 0x48]
or r9d, 0xffffffff
mov rcx, r15
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
mov byte [rsp + 0x20], 3
call fcn.180042b80
test rax, rax
je 0x180044be8
mov rcx, qword [rsp + 0x48]
mov byte [rax + 2], 1
mov ecx, dword [rcx + 8]
mov byte [rax + 4], 1
mov dword [rax + 0x18], ecx
jmp 0x180043678
mov rdx, qword [r15 + 0x60]
mov rax, qword [rsp + 0x48]
mov rcx, r15
movsxd rax, dword [rax + 4]
mov rdx, qword [rdx + rax*8]
call fcn.18003c7f0
mov rax, qword [rsp + 0x48]
movsxd r11, dword [rax + 4]
mov rax, qword [r15 + 0x60]
mov qword [rax + r11*8], r14
jmp 0x180043678
mov rax, qword [rsp + 0x48]
mov r13d, r14d
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x60]
mov rsi, qword [rax + rcx*8]
cmp byte [rsi + 4], 0
mov byte [rsi + 2], 0
je 0x180045cc6
mov rax, qword [rsp + 0x48]
movsxd rdi, dword [rax + 0xc]
imul rdi, rdi, 0x38
add rdi, qword [rsp + 0x70]
movzx eax, byte [rdi + 8]
and al, 0xe
cmp al, 2
jne 0x180045c4a
xor edx, edx
mov rcx, rdi
call fcn.180042ce0
mov rcx, rdi
call fcn.1800391c0
movzx ecx, word [rdi + 8]
mov r12, rax
test cl, 4
jne 0x180045c90
test cl, 8
je 0x1800486e9
movsd xmm0, qword [rdi]
pxor xmm1, xmm1
cvtsi2sd xmm1, rax
comisd xmm1, xmm0
jbe 0x180045c83
test bl, 1
jne 0x180045c90
dec ebx
jmp 0x180045c90
comisd xmm0, xmm1
jbe 0x180045c90
test bl, 1
je 0x180045c90
inc ebx
mov rcx, qword [rsi + 0x18]
lea rax, [rbp - 0x80]
xor r9d, r9d
mov r8, r12
xor edx, edx
mov qword [rsp + 0x20], rax
call fcn.180030460
mov qword [rsi + 0x40], r12
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180047f13
lea rdi, [0x180000000]
jmp 0x180045d6a
mov rax, qword [rsi + 0x18]
mov rcx, qword [rsp + 0x48]
mov edx, 0xffffffff
test byte [rax + 0x57], 2
mov rax, qword [rsi + 0x28]
mov qword [rbp + 0x88], rax
movzx eax, word [rcx + 0x10]
movsxd rcx, dword [rcx + 0xc]
mov word [rbp + 0x98], ax
cmovne r13d, r8d
lea eax, [rbx - 1]
test al, 1
mov eax, r8d
cmovne eax, edx
mov byte [rbp + 0x9a], al
mov eax, 0x4000
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x70]
mov qword [rbp + 0x90], rcx
test word [rcx + 8], ax
je 0x180045d27
call fcn.180038da0
mov byte [rbp + 0x9e], 0
mov rcx, qword [rsi + 0x18]
lea rax, [rbp - 0x80]
lea rdx, [rbp + 0x88]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rax
call fcn.180030460
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180047f13
test r13d, r13d
je 0x180045d6a
cmp byte [rbp + 0x9e], al
je 0x180045e86
mov byte [rsi + 3], 0
mov dword [rsi + 0x58], r14d
mov eax, dword [rbp - 0x80]
cmp ebx, 0x41
jl 0x180045e0c
test eax, eax
js 0x180045d92
jne 0x180045d89
cmp ebx, 0x42
je 0x180045d92
mov dword [rbp - 0x80], r14d
jmp 0x180045e90
mov dword [rbp - 0x80], r14d
mov rcx, qword [rsi + 0x18]
and byte [rcx + 0x54], 0xf9
mov word [rcx + 0x36], r14w
mov dword [rbp - 0x80], r14d
cmp byte [rcx + 0x56], 1
je 0x180045dbb
lea rdx, [rbp - 0x80]
call fcn.180030a00
jmp 0x180045e7a
movsx rax, byte [rcx + 0x58]
mov rdx, qword [rcx + rax*8 + 0x98]
inc word [rcx + rax*2 + 0x70]
movzx eax, word [rcx + rax*2 + 0x70]
cmp ax, word [rdx + 0x12]
jb 0x180045df5
movsx rax, byte [rcx + 0x58]
mov edx, 0xffff
add word [rcx + rax*2 + 0x70], dx
lea rdx, [rbp - 0x80]
call fcn.180030a00
jmp 0x180045e7a
cmp byte [rdx + 4], 0
je 0x180045e05
mov dword [rsp + 0x54], r14d
jmp 0x180045e86
call fcn.180030250
jmp 0x180045e7a
test eax, eax
jg 0x180045e2a
jne 0x180045e17
cmp ebx, 0x3f
je 0x180045e2a
mov rax, qword [rsi + 0x18]
mov ecx, r14d
cmp byte [rax + 0x56], 1
setne cl
mov dword [rbp - 0x80], ecx
jmp 0x180045e86
mov dword [rbp - 0x80], r14d
mov rcx, qword [rsi + 0x18]
mov dword [rbp - 0x80], r14d
and byte [rcx + 0x54], 0xf1
cmp byte [rcx + 0x56], 1
mov word [rcx + 0x36], r14w
jne 0x180045e71
movsx rdx, byte [rcx + 0x58]
cmp word [rcx + rdx*2 + 0x70], 0
je 0x180045e71
mov rax, qword [rcx + rdx*8 + 0x98]
cmp byte [rax + 4], 0
je 0x180045e71
mov eax, 0xffff
mov dword [rsp + 0x54], r14d
add word [rcx + rdx*2 + 0x70], ax
jmp 0x180045e86
lea rdx, [rbp - 0x80]
call fcn.180030bc0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180047f13
cmp dword [rbp - 0x80], 0
jne 0x1800486e9
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
mov r9, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x58]
mov ebx, dword [rsp + 0x50]
mov r8d, 1
mov r11d, 0x2460
test r13d, r13d
je 0x1800460da
add r12, 0x18
jmp 0x1800460da
mov rbx, qword [rsp + 0x48]
mov rax, qword [r15 + 0x60]
mov r13, r14
movsxd rsi, dword [rbx + 0xc]
movsxd rcx, dword [rbx + 4]
mov r12, qword [rax + rcx*8]
imul rsi, rsi, 0x38
add rsi, qword [rsp + 0x70]
cmp dword [rbx + 0x10], 0
jle 0x180045f62
movzx ecx, word [rbx + 0x10]
mov rax, qword [r12 + 0x28]
mov qword [rbp + 0x100], rsi
mov qword [rbp + 0xf8], rax
mov word [rbp + 0x108], cx
mov ebx, r14d
cmp r14w, cx
jae 0x180045f56
mov rdi, r14
mov r15d, 0x4000
nop dword [rax]
test word [rdi + rsi + 8], r15w
je 0x180045f45
movsxd rcx, ebx
imul rcx, rcx, 0x38
add rcx, rsi
call fcn.180038da0
movzx ecx, word [rbp + 0x108]
mov rsi, qword [rbp + 0x100]
inc ebx
movzx eax, cx
add rdi, 0x38
cmp ebx, eax
jl 0x180045f20
mov r15, qword [rbp - 0x78]
lea rbx, [rbp + 0xf8]
jmp 0x180046002
mov rdi, qword [r12 + 0x28]
lea rdx, [rbp + 0x1c0]
movzx ecx, word [rdi + 6]
neg edx
and edx, 7
imul ecx, ecx, 0x38
add ecx, 0x50
lea eax, [rdx + 0xff]
cmp ecx, eax
jle 0x180045fba
movsxd rax, ecx
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x180045f9d
mov rdx, rax
call fcn.180017520
jmp 0x180045fa5
mov rcx, rax
call fcn.180016e00
mov rbx, rax
mov r13, rax
test rax, rax
jne 0x180045fc5
mov r13, qword [rsp + 0x78]
jmp 0x180044be8
movsxd rax, edx
lea rbx, [rbp + rax + 0x1c0]
lea rax, [rbx + 0x18]
mov qword [rbx], rdi
mov qword [rbx + 8], rax
movzx eax, word [rdi + 6]
inc ax
mov word [rbx + 0x10], ax
mov eax, 0x4000
test word [rsi + 8], ax
je 0x180045fee
mov rcx, rsi
call fcn.180038da0
mov r8, qword [rsi + 0x10]
mov edx, dword [rsi + 0xc]
mov rcx, qword [r12 + 0x28]
mov r9, rbx
call fcn.18003e700
mov rax, qword [rsp + 0x48]
mov byte [rbx + 0x12], 0
mov edi, r14d
cmp byte [rax], 0x43
jne 0x18004603f
mov edx, r14d
cmp r14w, word [rbx + 0x10]
jae 0x18004603f
mov rcx, qword [rbx + 8]
add rcx, 8
test byte [rcx], 1
jne 0x18004603a
movzx eax, word [rbx + 0x10]
inc edx
add rcx, 0x38
cmp edx, eax
jl 0x180046025
jmp 0x18004603f
mov edi, 1
mov rcx, qword [r12 + 0x18]
lea rax, [rbp + 0x44]
xor r9d, r9d
xor r8d, r8d
mov rdx, rbx
mov qword [rsp + 0x20], rax
call fcn.180030460
mov rdx, r13
mov r13, qword [rsp + 0x78]
mov rcx, r13
mov dword [rsp + 0x54], eax
call fcn.1800171e0
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180048001
mov eax, dword [rbp + 0x44]
mov rsi, qword [rsp + 0x70]
mov r9, qword [rsp + 0x60]
test eax, eax
mov dword [r12 + 0x30], eax
mov byte [r12 + 3], 0
mov dword [r12 + 0x58], r14d
mov r8d, 1
mov ecx, r14d
sete cl
mov eax, r8d
sub al, cl
mov byte [r12 + 2], al
mov r12, qword [rsp + 0x48]
cmp byte [r12], 0x45
jne 0x1800460f6
test ecx, ecx
jne 0x1800486fe
lea rdi, [0x180000000]
mov r11d, 0x2460
mov r10d, dword [rsp + 0x58]
mov ebx, dword [rsp + 0x50]
mov r13, qword [rsp + 0x78]
mov r15, qword [rbp - 0x78]
add r12, 0x18
movabs rdx, 0x2aaaaaaaaaaaaaab
jmp 0x1800430a7
test edi, edi
jne 0x1800486fe
test ecx, ecx
je 0x1800486fe
jmp 0x1800460c4
mov rbx, qword [rsp + 0x48]
mov rax, qword [r15 + 0x60]
xor r9d, r9d
movsxd rcx, dword [rbx + 4]
xor edx, edx
mov dword [rbp + 4], r14d
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [rbx + 0xc]
mov rcx, qword [rdi + 0x18]
imul rax, rax, 0x38
mov rbx, qword [rax + rsi]
lea rax, [rbp + 4]
mov r8, rbx
mov qword [rsp + 0x20], rax
call fcn.180030460
mov r12, qword [rsp + 0x48]
mov qword [rdi + 0x40], rbx
mov dword [rsp + 0x54], eax
mov eax, dword [rbp + 4]
mov dword [rdi + 0x58], r14d
mov word [rdi + 2], 0
mov dword [rdi + 0x30], eax
test eax, eax
je 0x1800483f6
cmp dword [r12 + 8], 0
jne 0x1800486f3
mov ecx, 0x132c8
call fcn.1800a7cd0
mov dword [rsp + 0x54], eax
jmp 0x1800483fa
mov rbx, qword [rsp + 0x48]
movsxd rdx, dword [rbx + 8]
imul rdx, rdx, 0x38
add rdx, qword [r15 + 0x10]
test word [rdx + 8], r11w
je 0x1800461bd
mov rcx, rdx
call fcn.180042ef0
mov r9, qword [rsp + 0x60]
mov r8d, 1
mov rdx, rax
mov r11d, 0x2460
jmp 0x1800461c6
mov eax, 4
mov word [rdx + 8], ax
mov rax, qword [r15 + 0x60]
movsxd rcx, dword [rbx + 4]
mov r12, rbx
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x38]
mov qword [rdx], rax
movsxd rcx, dword [rbx + 4]
mov rax, rbx
mov rax, qword [r15 + 0x60]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x38]
jmp 0x1800460d1
mov rax, qword [rsp + 0x48]
mov rbx, r14
mov edi, r14d
movsxd r12, dword [rax + 8]
mov qword [rbp - 0x50], rbx
mov dword [rbp - 0x60], r14d
imul r12, r12, 0x38
add r12, qword [r15 + 0x10]
test word [r12 + 8], r11w
je 0x18004622d
mov rcx, r12
call fcn.180042ef0
mov r12, rax
mov rax, qword [rsp + 0x48]
jmp 0x180046238
mov ecx, 4
mov word [r12 + 8], cx
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x60]
mov rsi, qword [rax + rcx*8]
test byte [rsi + 8], 2
jne 0x1800462e5
mov rbx, qword [rsi + 0x18]
cmp byte [rbx + 0x56], 1
jne 0x18004625e
test byte [rbx + 0x54], 8
jne 0x1800462b0
mov rcx, rbx
call fcn.180030000
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048001
cmp byte [rbx + 0x56], al
jne 0x180046281
mov edi, 1
mov dword [rbp - 0x60], edi
jmp 0x18004629f
mov rcx, rbx
mov dword [rbp - 0x60], r14d
call fcn.180030350
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18004629b
or byte [rbx + 0x54], 8
jmp 0x18004629f
and byte [rbx + 0x54], 0xf7
test eax, eax
jne 0x180048001
test edi, edi
je 0x1800462b0
lea ebx, [rax + 1]
jmp 0x1800462e1
mov rbx, qword [rsi + 0x18]
mov rcx, rbx
call fcn.18002f950
mov rbx, qword [rbx + 0x20]
movabs rax, 0x7fffffffffffffff
mov qword [rbp - 0x50], rbx
mov dword [rsp + 0x54], r14d
cmp rbx, rax
jl 0x1800462de
or dword [rsi + 8], 2
jmp 0x1800462e5
inc rbx
mov qword [rbp - 0x50], rbx
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 0xc]
test edx, edx
je 0x180046374
mov rcx, qword [r15 + 0xf8]
test rcx, rcx
je 0x180046329
mov rax, qword [rcx + 8]
test rax, rax
je 0x18004631c
nop dword [rax + rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x180046310
mov rdi, rdx
imul rdi, rdi, 0x38
add rdi, qword [rcx + 0x20]
jmp 0x180046335
mov rdi, rdx
imul rdi, rdi, 0x38
add rdi, qword [rsp + 0x70]
mov rcx, rdi
call fcn.1800391c0
mov ecx, 0x3e00
and word [rdi + 8], cx
or word [rdi + 8], 4
movabs rcx, 0x7fffffffffffffff
mov qword [rdi], rax
cmp rax, rcx
je 0x1800463d8
test byte [rsi + 8], 2
jne 0x1800463d8
inc rax
cmp rbx, rax
cmovl rbx, rax
mov qword [rbp - 0x50], rbx
mov qword [rdi], rbx
test byte [rsi + 8], 2
je 0x1800463e2
mov edi, r14d
nop dword [rax]
lea rdx, [rbp - 0x50]
mov ecx, 8
call fcn.1800197d0
mov rbx, qword [rbp - 0x50]
mov rcx, qword [rsi + 0x18]
movabs rax, 0x3fffffffffffffff
xor r9d, r9d
xor edx, edx
and rbx, rax
lea rax, [rbp - 0x60]
inc rbx
mov qword [rsp + 0x20], rax
mov r8, rbx
mov qword [rbp - 0x50], rbx
call fcn.180030460
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048001
cmp dword [rbp - 0x60], eax
jne 0x1800463e2
inc edi
cmp edi, 0x64
jl 0x180046380
mov eax, recv
jmp 0x180048001
mov byte [rsi + 3], 0
mov dword [rsi + 0x58], r14d
mov qword [r12], rbx
jmp 0x180043764
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
movsxd r9, dword [rax + 8]
mov rax, qword [r15 + 0x60]
imul r9, r9, 0x38
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x48]
add r9, rsi
cmp bl, 0x4b
jne 0x180046427
movsxd rax, dword [rcx + 0xc]
imul rax, rax, 0x38
mov rbx, qword [rax + rsi]
jmp 0x18004642b
movsxd rbx, dword [rcx + 0xc]
test byte [rcx + 3], 1
je 0x180046438
inc dword [r15 + 0x98]
test byte [rcx + 3], 2
je 0x180046446
mov qword [rbp - 0x40], rbx
mov qword [r13 + 0x30], rbx
movzx eax, word [r9 + 8]
test al, 1
je 0x180046457
mov qword [r9 + 0x10], r14
mov dword [r9 + 0xc], r14d
movzx r8d, byte [rcx + 3]
test r8b, 0x10
je 0x180046467
mov edx, dword [rdi + 0x30]
jmp 0x18004646a
mov edx, r14d
mov ecx, 0x4000
test cx, ax
je 0x180046479
mov ecx, dword [r9]
jmp 0x18004647c
mov ecx, r14d
mov dword [rsp + 0x38], edx
movzx eax, r8b
mov r8, rbx
shr eax, 3
xor edx, edx
and eax, 1
mov dword [rsp + 0x30], eax
mov eax, dword [r9 + 0xc]
mov r9, qword [r9 + 0x10]
mov dword [rsp + 0x28], ecx
mov rcx, qword [rdi + 0x18]
mov dword [rsp + 0x20], eax
call fcn.180034a90
mov byte [rdi + 3], 0
mov dword [rdi + 0x58], r14d
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048001
mov r10, qword [r13 + 0x110]
mov r12, qword [rsp + 0x48]
test r10, r10
je 0x18004376e
mov r9, qword [r12 + 0x10]
test r9, r9
je 0x18004376e
movsx rax, byte [rdi + 1]
mov r8, qword [r13 + 0x20]
mov edx, reloc.WS2_32.dll_select
shl rax, 5
test byte [r12 + 3], 4
mov ecx, reloc.WS2_32.dll_socket
mov r8, qword [rax + r8]
cmovne edx, ecx
mov rcx, qword [r13 + 0x108]
mov qword [rsp + 0x20], rbx
call r10
jmp 0x18004376e
cmp qword [r13 + 0x110], 0
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x60]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rsp + 0x48]
je 0x18004654d
cmp qword [rax + 0x10], 0
je 0x18004654d
cmp byte [rdi + 4], 0
je 0x18004654d
mov sil, 1
jmp 0x180046550
xor sil, sil
cmp byte [rax + 3], 0
je 0x180046574
test sil, sil
je 0x180046574
mov rbx, qword [rdi + 0x18]
mov rcx, rbx
call fcn.18002f950
mov r11, qword [rbx + 0x20]
mov rax, qword [rsp + 0x48]
mov qword [rdi + 0x40], r11
movzx edx, byte [rax + 3]
mov rcx, qword [rdi + 0x18]
call fcn.180034d80
mov dword [rdi + 0x58], r14d
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048001
test sil, sil
je 0x1800465cc
mov rax, qword [rdi + 0x40]
movsx rcx, byte [rdi + 1]
mov r8, qword [r13 + 0x20]
shl rcx, 5
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x48]
mov r8, qword [rcx + r8]
mov r9, qword [rax + 0x10]
mov rcx, qword [r13 + 0x108]
mov edx, 9
call qword [r13 + 0x110]
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
mov r9, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x58]
mov ebx, dword [rsp + 0x50]
mov r8d, 1
lea rdi, [0x180000000]
mov r11d, 0x2460
test byte [r12 + 8], r8b
je 0x1800460da
inc dword [r15 + 0x98]
jmp 0x1800460da
mov eax, dword [r15 + 0x98]
add dword [r13 + 0x68], eax
mov dword [r13 + 0x64], eax
mov dword [r15 + 0x98], r14d
jmp case.0x1800430cf.62
mov r8, qword [rsp + 0x48]
mov rax, qword [rsp + 0x48]
lea r9, [rbp - 0x10]
movsxd rdx, dword [r8 + 0xc]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x60]
imul rdx, rdx, 0x38
mov r8d, dword [r8 + 0x10]
mov rcx, qword [rax + rcx*8]
add rdx, rsi
mov dword [rbp - 0x10], r14d
call fcn.18004d990
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048001
mov r12, qword [rsp + 0x48]
mov r9, qword [rsp + 0x60]
lea r8d, [rax + 1]
cmp dword [rbp - 0x10], eax
jne 0x1800486fe
jmp 0x1800460cb
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 8]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x60]
imul rdx, rdx, 0x38
mov rcx, qword [rax + rcx*8]
add rdx, rsi
call fcn.18004d8c0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048001
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r15 + 0x60]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x58], r14d
jmp 0x180043678
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
movsxd rbx, dword [rax + 8]
mov rax, qword [r15 + 0x60]
imul rbx, rbx, 0x38
mov r12, qword [rax + rcx*8]
add rbx, rsi
cmp byte [r12 + 4], 0
mov rsi, qword [r12 + 0x18]
mov rcx, rsi
jne 0x18004670e
call fcn.18002f950
mov rdi, qword [rsi + 0x20]
movsxd rax, dword [r13 + 0x6c]
cmp rdi, rax
jg 0x180048a7b
jmp 0x180046720
call fcn.18002f950
mov edi, dword [rsi + 0x30]
cmp edi, dword [r13 + 0x6c]
ja 0x180048a7b
mov edx, 0x20
cmp edi, edx
cmova edx, edi
cmp dword [rbx + 0x20], edx
jge 0x180046744
xor r8d, r8d
mov rcx, rbx
call fcn.180038bb0
test eax, eax
jne 0x180044be8
jmp 0x180046751
mov rax, qword [rbx + 0x18]
and word [rbx + 8], 0xd
mov qword [rbx + 0x10], rax
mov r9, qword [rbx + 0x10]
mov eax, 0x3e00
xor edx, edx
and word [rbx + 8], ax
or word [rbx + 8], 0x10
mov dword [rbx + 0xc], edi
mov r8d, edi
mov rcx, rsi
cmp byte [r12 + 4], dl
jne 0x180046781
mov dword [rsp + 0x20], r14d
call fcn.18002fb80
jmp 0x180046786
call fcn.18002ff00
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048001
mov byte [rbx + 0xa], 1
jmp 0x180043764
mov rbx, qword [rsp + 0x48]
movsxd rdi, dword [rbx + 8]
imul rdi, rdi, 0x38
add rdi, qword [r15 + 0x10]
test word [rdi + 8], r11w
je 0x1800467d1
mov rcx, rdi
call fcn.180042ef0
mov r9, qword [rsp + 0x60]
mov r8d, 1
mov rdi, rax
mov r11d, 0x2460
jmp 0x1800467da
mov eax, 4
mov word [rdi + 8], ax
movsxd rcx, dword [rbx + 4]
mov rax, qword [r15 + 0x60]
mov rbx, qword [rax + rcx*8]
cmp byte [rbx + 2], 0
je 0x180046802
mov r12, qword [rsp + 0x48]
mov word [rdi + 8], r8w
lea rdi, [0x180000000]
jmp 0x1800460d1
cmp byte [rbx + 3], 0
je 0x18004681d
mov rax, qword [rbx + 0x40]
mov r12, qword [rsp + 0x48]
mov qword [rbp + 0x28], rax
mov qword [rdi], rax
jmp 0x18004376e
cmp byte [rbx], 2
jne 0x18004685f
mov rcx, qword [rbx + 0x18]
lea rdx, [rbp + 0x28]
mov rbx, qword [rcx]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rcx, r15
mov dword [rsp + 0x54], eax
call fcn.18003fb10
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180048001
mov rax, qword [rbp + 0x28]
mov r12, qword [rsp + 0x48]
mov qword [rdi], rax
jmp 0x18004376e
mov rax, qword [rbx + 0x18]
cmp byte [rax + 0x56], 1
je 0x18004687f
mov rcx, rbx
call fcn.18003e380
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048001
jmp 0x180046884
mov dword [rsp + 0x54], r14d
cmp byte [rbx + 2], 0
je 0x1800468ab
mov r12, qword [rsp + 0x48]
mov r9, qword [rsp + 0x60]
mov r8d, 1
mov word [rdi + 8], r8w
lea rdi, [0x180000000]
jmp 0x1800460cb
mov rbx, qword [rbx + 0x18]
mov rcx, rbx
call fcn.18002f950
mov rax, qword [rbx + 0x20]
mov r12, qword [rsp + 0x48]
mov qword [rbp + 0x28], rax
mov dword [rsp + 0x54], r14d
mov qword [rdi], rax
jmp 0x18004376e
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x60]
mov rbx, qword [rax + rcx*8]
cmp byte [rbx], 0
mov byte [rbx + 2], 1
mov dword [rbx + 0x58], r14d
jne 0x18004361b
mov rbx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x40]
call fcn.180017120
mov qword [rbx + 0x40], r14
mov byte [rbx + 0x56], 0
jmp 0x180043678
mov rax, qword [rsp + 0x48]
mov esi, r14d
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x60]
mov rdi, qword [rax + rcx*8]
mov rbx, qword [rdi + 0x18]
cmp byte [rbx + 0x56], 1
jne 0x180046938
test byte [rbx + 0x54], 8
je 0x180046938
mov dword [rsp + 0x54], r14d
jmp 0x18004698b
mov rcx, rbx
call fcn.180030000
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x18004697a
cmp byte [rbx + 0x56], al
jne 0x180046958
mov r8d, 1
mov esi, r8d
jmp 0x180046980
mov rcx, rbx
call fcn.180030350
mov r8d, 1
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046974
or byte [rbx + 0x54], 8
jmp 0x180046980
and byte [rbx + 0x54], 0xf7
jmp 0x180046980
mov r8d, 1
mov r9, qword [rsp + 0x60]
mov r11d, 0x2460
mov rax, qword [rsp + 0x48]
mov byte [rdi + 2], sil
mov byte [rdi + 3], 0
mov dword [rdi + 0x58], r14d
mov eax, dword [rax + 0xc]
mov dword [rdi + 0x30], eax
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180048001
mov r12, qword [rsp + 0x48]
cmp dword [r12 + 8], eax
jle 0x180044822
test esi, esi
mov rsi, qword [rsp + 0x70]
jne 0x1800486fe
lea rdi, [0x180000000]
jmp 0x1800460d1
inc dword [r15 + 0xb0]
mov rax, qword [rsp + 0x48]
mov edi, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x60]
mov rsi, qword [rax + rcx*8]
cmp byte [rsi], 1
mov rbx, qword [rsi + 0x18]
jne 0x180046a4e
cmp byte [rbx + 0x58], 0
mov dword [rsp + 0x54], r14d
jne 0x180046a23
cmp qword [rbx + 0x38], 0
lea rdx, [rbx + 0x38]
je 0x180046a7f
lea rcx, [rbx + 0x60]
mov edi, r14d
call fcn.18004b780
mov dword [rsp + 0x54], eax
jmp 0x180046a7f
mov rcx, rbx
call fcn.18004c210
mov rcx, rbx
mov edx, eax
call fcn.18004af00
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046a7f
mov rcx, rbx
call fcn.18004d5c0
mov edi, r14d
mov dword [rsp + 0x54], eax
jmp 0x180046a7f
mov rcx, rbx
call fcn.180030000
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180046a77
cmp byte [rbx + 0x56], al
jne 0x180046a68
lea edi, [rax + 1]
jmp 0x180046a77
mov rcx, rbx
mov edi, r14d
call fcn.180030250
mov dword [rsp + 0x54], eax
mov byte [rsi + 3], 0
mov dword [rsi + 0x58], r14d
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180048001
mov r12, qword [rsp + 0x48]
mov r9, qword [rsp + 0x60]
mov byte [rsi + 2], dil
mov rsi, qword [rsp + 0x70]
lea r8d, [rax + 1]
test edi, edi
jmp 0x1800460be
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x60]
mov rdi, qword [rax + rcx*8]
mov dword [rbp - 0x68], r14d
mov rbx, qword [rdi + 0x18]
cmp byte [rbx + 0x58], 0
je 0x180046b05
cmp byte [rbx + 0x59], 0
je 0x180046af6
mov rcx, qword [rbx + 0x10]
call fcn.18004a530
mov ecx, r14d
mov dword [rsp + 0x54], eax
mov rax, qword [rbx + 0x10]
cmp qword [rax + 0x18], 0
mov eax, dword [rsp + 0x54]
sete cl
mov dword [rbp - 0x68], ecx
jmp 0x180046b7f
mov rcx, qword [rbx + 0x18]
lea rdx, [rbp - 0x68]
call fcn.18004c020
jmp 0x180046b7b
mov rdx, qword [rbx + 0x38]
mov rax, qword [rdx + 8]
mov qword [rbx + 0x38], rax
mov qword [rdx + 8], r14
cmp qword [rbx + 0x40], 0
jne 0x180046b24
mov rcx, r13
call fcn.18004ac00
cmp qword [rbx + 0x38], 0
mov eax, r14d
sete al
mov dword [rbp - 0x68], eax
mov eax, r14d
jmp 0x180046b7b
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x60]
cmp qword [rax + rcx*8], 0
je 0x18004361b
mov rax, qword [rsp + 0x48]
lea rdx, [rbp - 0x68]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x60]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0xc]
mov dword [rbp - 0x68], eax
mov rax, qword [rsp + 0x48]
mov rcx, qword [rdi + 0x18]
call qword [rax + reloc.WS2_32.dll_recv]
mov dword [rsp + 0x54], eax
mov dword [rdi + 0x58], r14d
test eax, eax
jne 0x180048001
mov r9, qword [rsp + 0x60]
mov r11d, 0x2460
cmp dword [rbp - 0x68], eax
jne 0x180046bb4
mov byte [rdi + 2], al
mov rax, qword [rsp + 0x48]
movzx eax, byte [rax + 3]
inc dword [r15 + rax*4 + 0xa8]
jmp case.0x1800430cf.13
mov byte [rdi + 2], 1
jmp 0x18004748d
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x60]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x48]
movsxd rbx, dword [rcx + 8]
imul rbx, rbx, 0x38
add rbx, rsi
test byte [rcx + 3], 1
je 0x180046beb
inc dword [r15 + 0x98]
mov eax, 0x4000
test word [rbx + 8], ax
je 0x180046c0b
mov rcx, rbx
call fcn.180038da0
test eax, eax
jne 0x180048001
mov rcx, qword [rsp + 0x48]
cmp byte [rcx], 0x6d
jne 0x180046c1d
mov rdx, rbx
mov rcx, rdi
call fcn.18004c350
jmp 0x180046c5c
test byte [rcx + 3], 0x10
je 0x180046c28
mov eax, dword [rdi + 0x30]
jmp 0x180046c2b
mov eax, r14d
movsxd r8, dword [rbx + 0xc]
mov rdx, qword [rbx + 0x10]
mov dword [rsp + 0x38], eax
mov eax, dword [rcx + 0xc]
mov rcx, qword [rdi + 0x18]
lea r9, [0x1802b9a30]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], r14d
call fcn.180034a90
mov dword [rdi + 0x58], r14d
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048001
mov r12, qword [rsp + 0x48]
jmp 0x18004376e
mov rax, qword [rsp + 0x48]
lea rdx, [rbp + 0x160]
xor r9d, r9d
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x60]
xor r8d, r8d
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x48]
mov rax, qword [rbx + 0x28]
mov rdi, qword [rbx + 0x18]
mov byte [rbp + 0x172], 0
mov qword [rbp + 0x160], rax
movzx eax, word [rcx + 0xc]
mov word [rbp + 0x170], ax
movsxd rax, dword [rcx + 8]
mov rcx, rdi
imul rax, rax, 0x38
add rax, rsi
mov qword [rbp + 0x168], rax
lea rax, [rbp + 0x40]
mov qword [rsp + 0x20], rax
call fcn.180030460
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048001
cmp dword [rbp + 0x40], eax
jne 0x180046d00
mov dl, 4
mov rcx, rdi
call fcn.180034d80
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048001
mov r12, qword [rsp + 0x48]
mov dword [rbx + 0x58], r14d
jmp 0x18004376e
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x60]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x18]
cmp byte [rax + 0x56], 1
je 0x180046d4e
mov rcx, rbx
call fcn.18003e380
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048001
mov r9, qword [rsp + 0x60]
lea r8d, [rax + 1]
mov r11d, 0x2460
jmp 0x180046d53
mov dword [rsp + 0x54], r14d
cmp byte [rbx + 2], 0
jne 0x180046dfe
mov rdx, qword [rbx + 0x18]
lea r8, [rbp + 0x38]
mov rcx, r13
mov qword [rbp + 0x38], r14
call fcn.18003f7a0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048001
mov rax, qword [rsp + 0x48]
mov r11d, 0x2460
cmp byte [rax], 0x70
jne 0x180046dbd
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r15 + 0x60]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rbp + 0x38]
mov qword [rdx + 0x40], rax
mov rax, qword [rsp + 0x48]
mov word [rdx + 2], 0x100
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x48], rbx
mov qword [rdx + 0x50], rax
jmp 0x18004513e
movsxd rcx, dword [rax + 8]
imul rcx, rcx, 0x38
add rcx, qword [r15 + 0x10]
test word [rcx + 8], r11w
je 0x180046de0
call fcn.180042ef0
mov r11d, 0x2460
mov rcx, rax
jmp 0x180046de9
mov eax, 4
mov word [rcx + 8], ax
mov rax, qword [rbp + 0x38]
mov qword [rcx], rax
mov eax, 4
mov word [rcx + 8], ax
jmp 0x18004513e
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
add rax, rsi
test word [rax + 8], r11w
je 0x180046e22
mov rcx, rax
call fcn.180039080
jmp 0x180043678
mov r12, qword [rsp + 0x48]
mov word [rax + 8], r8w
jmp 0x1800460d1
mov rax, qword [rsp + 0x48]
cmp bl, 0x74
lea r9, [rbp - 0x64]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x60]
lea r8, [rbp + 0x148]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x48]
mov dword [rbp - 0x64], r14d
mov rax, qword [rdx + 0x28]
mov qword [rbp + 0x148], rax
movzx eax, word [rcx + 0x10]
mov word [rbp + 0x158], ax
sbb al, al
mov byte [rbp + 0x15a], al
movsxd rax, dword [rcx + 0xc]
mov rcx, r13
imul rax, rax, 0x38
add rax, rsi
mov qword [rbp + 0x150], rax
call fcn.18003f9b0
mov dword [rsp + 0x54], eax
mov rax, qword [rsp + 0x48]
test byte [rax], 1
mov eax, dword [rbp - 0x64]
jne 0x180046ea6
neg eax
jmp 0x180046ea8
inc eax
mov ecx, dword [rsp + 0x54]
mov dword [rbp - 0x64], eax
test ecx, ecx
jne 0x180047ffd
mov r12, qword [rsp + 0x48]
mov r9, qword [rsp + 0x60]
lea r8d, [rcx + 1]
test eax, eax
jg 0x1800486fe
jmp 0x1800460cb
mov rcx, qword [rsp + 0x48]
movsxd rdi, dword [rcx + 8]
imul rdi, rdi, 0x38
add rdi, qword [r15 + 0x10]
test word [rdi + 8], r11w
je 0x180046f02
mov rcx, rdi
call fcn.180042ef0
mov rcx, qword [rsp + 0x48]
mov r8d, 1
mov rdi, rax
jmp 0x180046f0b
mov eax, 4
mov word [rdi + 8], ax
mov word [rdi + 8], r8w
mov eax, dword [r13 + 0xb8]
inc eax
cmp dword [r13 + 0xac], eax
jg 0x1800489cf
movsxd r13, dword [rcx + 0xc]
mov esi, dword [rcx + 4]
mov dword [rbp - 0x28], r14d
mov r14, qword [rsp + 0x78]
mov r12, r13
mov rax, qword [r14 + 0x20]
shl r12, 5
mov rbx, qword [r12 + rax + 8]
cmp byte [rbx + 0x11], 0
je 0x180046f5d
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x180046f5d
mov rcx, rbx
call fcn.18002af30
lea r8, [rbp - 0x28]
mov edx, esi
mov rcx, rbx
call fcn.180035860
cmp byte [rbx + 0x11], 0
mov dword [rsp + 0x54], eax
je 0x180046f82
dec dword [rbx + 0x14]
jne 0x180046f82
mov rcx, rbx
call fcn.18002af00
movsxd r8, dword [rbp - 0x28]
mov eax, 4
mov word [rdi + 8], ax
mov eax, dword [rsp + 0x54]
mov qword [rdi], r8
test eax, eax
jne 0x180048d92
test r8d, r8d
je 0x180043b6b
mov rax, qword [rsp + 0x48]
mov r10, qword [r14 + 0x20]
mov r9d, dword [rax + 4]
mov rax, qword [r12 + r10 + 0x18]
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x180046fdb
mov rcx, qword [rdx + 0x10]
mov eax, dword [rcx + 0x38]
cmp eax, r8d
cmove eax, r9d
mov dword [rcx + 0x38], eax
mov rdx, qword [rdx]
test rdx, rdx
jne 0x180046fc2
mov rax, qword [r12 + r10 + 0x18]
mov rdx, qword [rax + 0x28]
test rdx, rdx
je 0x180047009
nop dword [rax]
mov rcx, qword [rdx + 0x10]
mov eax, dword [rcx + 0x58]
cmp eax, r8d
cmove eax, r9d
mov dword [rcx + 0x58], eax
mov rdx, qword [rdx]
test rdx, rdx
jne 0x180046ff0
lea eax, [r13 + 1]
xor r14d, r14d
mov byte [rsp + 0x40], al
jmp 0x180043764
mov rax, qword [rsp + 0x48]
mov rcx, qword [r13 + 0x20]
mov r12, qword [rsp + 0x48]
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 8]
mov edx, dword [r12 + 4]
mov dword [rbp - 0x24], r14d
lea r8, [rbp - 0x24]
cmove r8, r14
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.180035780
cmp dword [r12 + 0xc], 0
mov dword [rsp + 0x54], eax
je 0x18004707a
movsxd rax, dword [rbp - 0x24]
add dword [r15 + 0x98], eax
movsxd rcx, dword [r12 + 0xc]
test ecx, ecx
jle 0x180047076
imul rcx, rcx, 0x38
add qword [rcx + rsi], rax
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180048001
mov r9, qword [rsp + 0x60]
lea r8d, [rax + 1]
jmp 0x1800460cb
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x60]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 1
jne 0x1800470b7
mov rdx, qword [rcx + 0x18]
mov rcx, r13
call fcn.18004b230
jmp 0x180043678
mov rcx, qword [rcx + 0x18]
xor r8d, r8d
mov edx, dword [rcx + 0x48]
mov rcx, qword [rcx]
call fcn.180035780
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048001
jmp 0x180043678
mov rbx, qword [rsp + 0x48]
movsxd rdi, dword [rbx + 8]
imul rdi, rdi, 0x38
add rdi, qword [r15 + 0x10]
test word [rdi + 8], r11w
je 0x1800470ff
mov rcx, rdi
call fcn.180042ef0
mov rdi, rax
jmp 0x180047108
mov eax, 4
mov word [rdi + 8], ax
movsxd rax, dword [rbx + 4]
mov esi, r14d
mov dword [rbp], r14d
shl rax, 5
add rax, qword [r13 + 0x20]
cmp byte [rbx], 0x7a
mov rbx, qword [rax + 8]
setne sil
cmp byte [rbx + 0x11], 0
je 0x18004713d
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x18004713d
mov rcx, rbx
call fcn.18002af30
lea r8d, [rsi + 1]
lea rdx, [rbp]
mov rcx, rbx
call fcn.180035150
cmp byte [rbx + 0x11], 0
mov dword [rsp + 0x54], eax
je 0x180047168
dec dword [rbx + 0x14]
jne 0x180047168
mov rcx, rbx
call fcn.18002af00
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180048001
movsxd rax, dword [rbp]
mov qword [rdi], rax
jmp 0x180043764
mov rbx, qword [rsp + 0x48]
mov r8, qword [r13 + 0x20]
lea rax, str.sqlite_master
movsxd rcx, dword [rbx + 4]
mov qword [rbp + 0xd8], r13
lea r9, str.sqlite_temp_master
cmp ecx, 1
mov dword [rbp + 0xe8], ecx
lea rdx, str.SELECT_name__rootpage__sql_FROM__q._s_WHERE__s_ORDER_BY_rowid
cmovne r9, rax
shl rcx, 5
lea rax, [r15 + 0x48]
mov qword [rbp + 0xe0], rax
mov rax, qword [rbx + 0x10]
mov r8, qword [rcx + r8]
mov rcx, r13
mov qword [rsp + 0x20], rax
call fcn.180019420
mov rbx, rax
test rax, rax
je 0x1800489e1
lea r9, [rbp + 0xd8]
lea r8, [fcn.18007bbb0]
mov rdx, rax
mov rcx, r13
mov byte [r13 + 0xa5], 1
mov dword [rbp + 0xec], r14d
mov qword [rsp + 0x20], r14
call fcn.180076450
mov rdx, rbx
test eax, eax
mov rcx, r13
cmove eax, dword [rbp + 0xec]
mov dword [rsp + 0x54], eax
call fcn.1800171e0
mov ecx, dword [rsp + 0x54]
mov byte [r13 + 0xa5], 0
test ecx, ecx
je 0x180043678
mov edi, 7
mov rcx, r13
call fcn.18005dfd0
mov eax, dword [rsp + 0x54]
movzx r12d, byte [rsp + 0x40]
cmp eax, 7
je 0x180048d88
mov edi, 1
jmp 0x18004800c
mov rax, qword [rsp + 0x48]
mov rcx, r13
mov edx, dword [rax + 4]
call fcn.18005bcb0
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048001
jmp 0x180043678
mov rax, qword [rsp + 0x48]
mov rcx, r13
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.18005e490
jmp 0x180043678
mov rax, qword [rsp + 0x48]
mov rcx, r13
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.18005dc60
jmp 0x180043678
mov rax, qword [rsp + 0x48]
mov rcx, r13
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.18008c500
jmp 0x180043678
mov rax, qword [rsp + 0x48]
mov rcx, qword [r13 + 0x20]
lea rdx, [rbp + 0x20]
movsxd rbx, dword [rax + 0xc]
movsxd rdi, dword [rax + 4]
movzx eax, byte [rax + 3]
imul rbx, rbx, 0x38
imul rdi, rdi, 0x38
mov qword [rsp + 0x20], rdx
mov rdx, qword [rsp + 0x48]
shl rax, 5
mov r8d, dword [rdx + 8]
mov rdx, qword [rdx + 0x10]
mov rcx, qword [rax + rcx + 8]
add rbx, rsi
add rdi, rsi
mov r9d, dword [rbx]
call fcn.180036c10
movsxd r12, dword [rbp + 0x20]
sub qword [rbx], r12
mov rsi, rax
mov eax, 0x2460
test word [rdi + 8], ax
je 0x18004733f
mov rcx, rdi
call fcn.180039080
mov eax, 1
jmp 0x180047348
mov eax, 1
mov word [rdi + 8], ax
test r12d, r12d
je 0x180047374
test rsi, rsi
je 0x180044bed
lea rax, [fcn.180017120]
mov r9b, 1
or r8d, 0xffffffff
mov rdx, rsi
mov rcx, rdi
mov qword [rsp + 0x20], rax
call fcn.1800398d0
test byte [rdi + 8], 2
movzx ecx, byte [rsp + 0x68]
je 0x180043764
movzx eax, byte [rdi + 0xa]
cmp eax, ecx
je 0x180043764
movzx edx, cl
mov rcx, rdi
call fcn.180019bf0
jmp 0x180043764
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 4]
movsxd rdi, dword [rax + 8]
imul rbx, rbx, 0x38
imul rdi, rdi, 0x38
add rbx, rsi
test byte [rbx + 8], 0x20
jne 0x1800473cf
mov rcx, rbx
call fcn.180039600
test byte [rbx + 8], 0x20
je 0x180044be8
mov rdx, qword [rdi + rsi]
mov rcx, qword [rbx]
call fcn.180021a30
mov r12, qword [rsp + 0x48]
jmp 0x18004376e
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 4]
imul rbx, rbx, 0x38
add rbx, rsi
test byte [rbx + 8], 0x20
je 0x180047520
mov rdi, qword [rbx]
movzx eax, word [rdi + 0x32]
test al, 2
jne 0x180047431
test al, 1
jne 0x18004742c
mov rcx, qword [rdi + 0x10]
call fcn.180021af0
mov r9, qword [rsp + 0x60]
mov r8d, 1
mov qword [rdi + 0x10], rax
mov r11d, 0x2460
or word [rdi + 0x32], 2
mov rax, qword [rdi + 0x10]
test rax, rax
je 0x180047520
mov rbx, qword [rax]
mov rax, qword [rax + 8]
mov qword [rdi + 0x10], rax
test rax, rax
jne 0x18004745c
mov rcx, rdi
call fcn.180021920
mov r11d, 0x2460
mov rax, qword [rsp + 0x48]
movsxd rax, dword [rax + 0xc]
imul rax, rax, 0x38
add rax, rsi
test word [rax + 8], r11w
je 0x18004750f
mov rdx, rbx
mov rcx, rax
call fcn.180039540
mov r11d, 0x2460
mov r9, qword [rsp + 0x60]
mov eax, dword [r13 + 0x148]
test eax, eax
jne 0x180048d0f
mov r8, qword [r13 + 0x198]
mov r10d, dword [rsp + 0x58]
mov ebx, dword [rsp + 0x50]
test r8, r8
je 0x180048714
cmp ebx, r10d
jb 0x180048714
mov ecx, dword [r13 + 0x1a8]
xor edx, edx
mov eax, ebx
div ecx
sub ecx, edx
add ecx, ebx
mov dword [rsp + 0x58], ecx
mov rcx, qword [r13 + 0x1a0]
call r8
test eax, eax
jne 0x180048ab4
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
mov r9, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x58]
lea r8d, [rax + 1]
lea rdi, [0x180000000]
mov r11d, 0x2460
jmp 0x1800460da
mov ecx, 4
mov qword [rax], rbx
mov word [rax + 8], cx
jmp 0x180047488
test word [rbx + 8], r11w
je 0x180047534
mov rcx, rbx
call fcn.180039080
jmp 0x180048459
mov word [rbx + 8], r8w
jmp case.0x1800430cf.13
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 4]
movsxd rdi, dword [rax + 0xc]
imul rbx, rbx, 0x38
imul rdi, rdi, 0x38
add rbx, rsi
add rdi, rsi
mov esi, dword [rax + 0x10]
test byte [rbx + 8], 0x20
jne 0x180047574
mov rcx, rbx
call fcn.180039600
test byte [rbx + 8], 0x20
je 0x180044be8
test esi, esi
je 0x18004758f
mov r8, qword [rdi]
mov rcx, qword [rbx]
mov edx, esi
call fcn.180021e30
test eax, eax
jne 0x1800486e9
test esi, esi
js 0x180043764
mov rdx, qword [rdi]
mov rcx, qword [rbx]
call fcn.180021a30
jmp 0x180043764
mov rax, qword [rsp + 0x48]
movsxd rsi, dword [rax + 0xc]
mov r12, qword [rax + 0x10]
imul rsi, rsi, 0x38
add rsi, qword [rsp + 0x70]
cmp byte [rax + 3], 0
je 0x1800475e5
mov rax, qword [r15 + 0xf8]
mov rcx, qword [r12 + 0x18]
test rax, rax
je 0x1800475e5
cmp qword [rax + 0x38], rcx
je 0x180048749
mov rax, qword [rax + 8]
test rax, rax
jne 0x1800475d2
mov eax, dword [r13 + 0x94]
cmp dword [r15 + 0x108], eax
jge 0x1800489ef
test byte [rsi + 8], 0x40
jne 0x180047713
mov ecx, dword [r12 + 0x10]
mov eax, dword [r12 + 0xc]
lea ebx, [rcx + rax]
test ecx, ecx
jne 0x180047616
inc ebx
mov eax, dword [r12 + 0x14]
mov ecx, ebx
imul ecx, ecx, 7
add ecx, dword [r12 + 0x10]
lea ecx, [rax + rcx*8 + 0x78]
movsxd rdx, ecx
mov rcx, r13
call fcn.180017480
mov rdi, rax
test rax, rax
je 0x180044be8
mov eax, 0x2460
test word [rsi + 8], ax
jne 0x180047651
cmp dword [rsi + 0x20], 0
je 0x180047659
mov rcx, rsi
call fcn.180039110
mov rcx, qword [rsp + 0x48]
mov qword [rsi], rdi
mov eax, 0x40
sub rcx, qword [rsp + 0x60]
mov word [rsi + 8], ax
mov qword [rdi], r15
mov dword [rdi + 0x64], ebx
mov eax, dword [r12 + 0x10]
mov dword [rdi + 0x68], eax
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rdi + 0x54], edx
mov rax, qword [r15 + 0x10]
mov qword [rdi + 0x20], rax
mov eax, dword [r15 + 0x38]
mov dword [rdi + 0x5c], eax
mov rax, qword [r15 + 0x60]
mov qword [rdi + 0x30], rax
mov eax, dword [r15 + 0x40]
mov dword [rdi + 0x50], eax
mov rax, qword [r15 + 8]
mov qword [rdi + 0x10], rax
mov eax, dword [r15 + 0x3c]
mov dword [rdi + 0x58], eax
mov rax, qword [r12 + 0x18]
mov qword [rdi + 0x38], rax
mov rax, qword [r15 + 0x120]
mov qword [rdi + 0x28], rax
mov eax, dword [r15 + 0x118]
mov dword [rdi + 0x60], eax
movsxd rax, ebx
imul rax, rax, 0x38
lea rcx, [rax + rdi + 0x78]
lea rax, [rdi + 0x78]
cmp rax, rcx
je 0x180047716
mov edx, 0x80
mov word [rax + 8], dx
mov qword [rax + 0x28], r13
add rax, 0x38
cmp rax, rcx
jne 0x180047700
jmp 0x180047716
mov rdi, qword [rsi]
inc dword [r15 + 0x108]
mov rax, qword [r15 + 0xf8]
lea rsi, [rdi + 0x78]
mov qword [rdi + 8], rax
mov rax, qword [rbp - 0x40]
mov qword [rsp + 0x70], rsi
mov qword [rdi + 0x40], rax
mov eax, dword [r15 + 0x98]
mov dword [rdi + 0x6c], eax
mov rax, qword [r15]
mov ecx, dword [rax + 0x64]
mov dword [rdi + 0x70], ecx
mov rax, qword [r15 + 0x128]
mov qword [rdi + 0x48], rax
mov qword [r15 + 0x128], r14
mov dword [r15 + 0x98], r14d
mov qword [r15 + 0xf8], rdi
mov qword [r15 + 0x10], rsi
movsxd rax, dword [rdi + 0x64]
mov dword [r15 + 0x38], eax
movzx edx, word [rdi + 0x68]
mov rcx, rax
mov dword [r15 + 0x40], edx
imul rcx, rcx, 0x38
add rcx, rsi
mov qword [r15 + 0x60], rcx
mov r8, qword [r12]
lea rcx, [rcx + rdx*8]
mov qword [r15 + 8], r8
mov eax, dword [r12 + 8]
lea rdx, [r8 - 0x18]
mov qword [r15 + 0x120], rcx
mov dword [r15 + 0x3c], eax
movsxd rax, dword [r12 + 0x14]
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x48], rdx
mov r8, rax
xor edx, edx
mov dword [r15 + 0x118], eax
call fcn.1800b45b0
mov r12, qword [rsp + 0x48]
jmp 0x18004376e
mov rdx, qword [rsp + 0x48]
mov rcx, r15
call fcn.180042f40
mov r9, qword [r15 + 0xf8]
movsxd rcx, dword [r9 + 0x54]
lea rdx, [rcx + rcx*2]
mov rcx, qword [r9 + 0x10]
mov r8d, dword [rcx + rdx*8 + 4]
mov rcx, qword [rsp + 0x48]
add r8d, dword [rcx + 4]
mov rcx, rax
movsxd rdx, r8d
mov r8d, 0x1000
imul rdx, rdx, 0x38
add rdx, qword [r9 + 0x20]
call fcn.180039760
jmp 0x180043678
test dword [r13 + 0x2c], 0x1000000
mov rax, qword [rsp + 0x48]
mov r12, rax
je 0x180047846
movsxd rax, dword [rax + 8]
add qword [r13 + 0x288], rax
jmp case.0x1800430cf.62
cmp dword [rax + 4], 0
mov ebx, dword [rsp + 0x50]
movsxd rax, dword [rax + 8]
je 0x180047860
add qword [r13 + 0x280], rax
jmp 0x1800460da
add qword [r15 + 0xd0], rax
jmp 0x1800460da
cmp dword [r12 + 4], 0
je 0x180047895
cmp qword [r13 + 0x280], 0
jne case.0x1800430cf.62
cmp qword [r13 + 0x288], 0
je 0x1800486fe
jmp case.0x1800430cf.62
cmp qword [r15 + 0xd0], 0
jne case.0x1800430cf.62
cmp qword [r13 + 0x288], 0
je 0x1800486fe
jmp case.0x1800430cf.62
mov rcx, qword [r15 + 0xf8]
test rcx, rcx
je 0x1800478ef
mov rax, qword [rcx + 8]
test rax, rax
je 0x1800478dc
nop dword [rax + rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x1800478d0
mov rax, qword [rsp + 0x48]
movsxd rdi, dword [rax + 4]
imul rdi, rdi, 0x38
add rdi, qword [rcx + 0x20]
jmp 0x1800478ff
mov rax, qword [rsp + 0x48]
movsxd rdi, dword [rax + 4]
imul rdi, rdi, 0x38
add rdi, rsi
mov rcx, rdi
call fcn.180039320
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 8]
imul rbx, rbx, 0x38
add rbx, rsi
mov rcx, rbx
call fcn.180039320
mov r11, qword [rbx]
mov r12, qword [rsp + 0x48]
mov r9, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x58]
mov ebx, dword [rsp + 0x50]
mov r8d, 1
cmp qword [rdi], r11
jge 0x180047943
mov qword [rdi], r11
lea rdi, [0x180000000]
mov r11d, 0x2460
jmp 0x1800460da
mov rcx, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rcx, dword [rcx + 4]
imul rcx, rcx, 0x38
mov rdx, qword [rcx + rsi]
test rdx, rdx
jle case.0x1800430cf.62
mov rax, r12
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + rsi], rdx
jmp 0x1800486fe
mov rax, qword [rsp + 0x48]
mov rcx, r15
movsxd rbx, dword [rax + 4]
movsxd rdi, dword [rax + 0xc]
mov rdx, rax
imul rbx, rbx, 0x38
imul rdi, rdi, 0x38
call fcn.180042f40
mov rdx, qword [rbx + rsi]
mov r11, rax
test rdx, rdx
jg 0x1800479c4
mov r12, qword [rsp + 0x48]
or rcx, 0xffffffffffffffff
mov qword [rax], rcx
jmp 0x18004376e
mov rax, qword [rdi + rsi]
mov r12, qword [rsp + 0x48]
mov rcx, r14
test rax, rax
cmovg rcx, rax
add rcx, rdx
mov qword [r11], rcx
jmp 0x18004376e
mov rcx, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rcx, dword [rcx + 4]
imul rcx, rcx, 0x38
mov rdx, qword [rcx + rsi]
test rdx, rdx
je case.0x1800430cf.62
mov rax, r12
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + rsi], rdx
jmp 0x1800486fe
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rax, dword [rax + 4]
imul rax, rax, 0x38
dec qword [rax + rsi]
je 0x1800486fe
jmp case.0x1800430cf.62
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
imul rdx, rdx, 0x38
mov rcx, qword [rdx + rsi]
lea rax, [rcx + 1]
mov qword [rdx + rsi], rax
test rcx, rcx
je 0x1800486fe
jmp case.0x1800430cf.62
mov rax, qword [rsp + 0x48]
mov rcx, r13
movzx ebx, byte [rax + 3]
lea eax, [rbx - 1]
movsxd rdx, eax
lea rdx, [rdx*8 + 0x38]
call fcn.180017520
mov r11, rax
test rax, rax
je 0x180044be8
mov qword [rax + 0x10], r14
mov rax, qword [rsp + 0x48]
mov rcx, qword [rax + 0x10]
mov qword [r11 + 0x18], r15
mov byte [r11 + 0x2a], bl
mov qword [r11 + 8], rcx
mov rcx, rax
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x60]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov rax, qword [rsp + 0x48]
mov dword [r11 + 0x20], edx
mov qword [rax + 0x10], r11
mov word [rax], 0xec90
jmp 0x180047ae1
mov rax, qword [rsp + 0x48]
movsxd r10, dword [rax + 0xc]
mov rbx, qword [rax + 0x10]
imul r10, r10, 0x38
add r10, rsi
cmp qword [rbx + 0x10], r10
je 0x180047b33
movzx edx, byte [rbx + 0x2a]
mov qword [rbx + 0x10], r10
dec edx
movsxd r8, edx
js 0x180047b33
mov r13, qword [rsp + 0x48]
lea r9, [rbx + r8*8 + 0x30]
nop
mov eax, dword [r13 + 8]
sub r9, 8
add eax, edx
dec edx
cdqe
imul rax, rax, 0x38
add rax, rsi
dec r8
mov qword [r9 + 8], rax
jns 0x180047b10
mov r13, qword [rsp + 0x78]
inc dword [r10 + 0xc]
mov qword [rbp + 0x138], r13
mov dword [rbp + 0x130], r14d
lea rax, [rbp + 0x110]
mov edi, 1
lea r8, [rbx + 0x30]
mov word [rbp + 0x118], di
movzx edx, byte [rbx + 0x2a]
mov qword [rbx], rax
mov rax, qword [rbx + 8]
mov rcx, rbx
mov word [rbx + 0x28], 0
call qword [rax + 0x18]
cmp byte [rbx + 0x29], 0
je 0x180047c0f
cmp dword [rbx + 0x24], 0
je 0x180047be0
movzx eax, word [rbp + 0x118]
mov ecx, 0x202
and ax, cx
cmp ax, cx
jne 0x180047ba9
cmp byte [rbp + 0x11a], dil
jne 0x180047ba9
mov rax, qword [rbp + 0x120]
jmp 0x180047bc7
test byte [rbp + 0x118], dil
je 0x180047bb7
mov rax, r14
jmp 0x180047bc7
lea rcx, [rbp + 0x110]
movzx edx, dil
call fcn.180039cb0
lea rdx, [0x1802bbb9c]
mov r8, rax
mov rcx, r15
call fcn.18003a440
mov eax, dword [rbx + 0x24]
mov dword [rsp + 0x54], eax
mov eax, 0x2460
test word [rbp + 0x118], ax
jne 0x180047bf7
cmp dword [rbp + 0x130], 0
je 0x180047c03
lea rcx, [rbp + 0x110]
call fcn.180039110
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180048006
cmp byte [rbx + 0x28], 0
je 0x180047c45
mov rax, qword [rsp + 0x48]
mov r11d, 0x2460
movsxd rax, dword [rax - 0x14]
test eax, eax
je 0x180048730
imul rax, rax, 0x38
add rax, rsi
test word [rax + 8], r11w
je 0x180047c5e
mov rdx, rdi
mov rcx, rax
call fcn.180039540
mov r12, qword [rsp + 0x48]
mov r9, qword [rsp + 0x60]
mov r8, rdi
lea rdi, [0x180000000]
jmp 0x1800460cb
mov r12, qword [rsp + 0x48]
mov r9, qword [rsp + 0x60]
mov ecx, 4
mov r8, rdi
mov qword [rax], rdi
mov word [rax + 8], cx
lea rdi, [0x180000000]
jmp 0x1800460d1
mov rax, qword [rsp + 0x48]
movsxd rbx, dword [rax + 4]
mov rdx, qword [rax + 0x10]
imul rbx, rbx, 0x38
add rbx, rsi
mov rcx, rbx
call fcn.180038f80
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048a08
test byte [rbx + 8], 2
movzx ecx, byte [rsp + 0x68]
je 0x180047cc9
movzx eax, byte [rbx + 0xa]
cmp eax, ecx
je 0x180047cc9
movzx edx, cl
mov rcx, rbx
call fcn.180019bf0
mov rcx, rbx
call fcn.1800396f0
test eax, eax
jne 0x180048a7b
jmp 0x180043678
mov rbx, qword [rsp + 0x48]
lea rax, [rbp + 0x1b8]
lea r9, [rbp + 0x1b4]
mov r8d, dword [rbx + 8]
mov edx, dword [rbx + 4]
mov rcx, r13
mov dword [rbp + 0x1b0], r14d
mov qword [rbp + 0x1b4], 0xffffffffffffffff
mov qword [rsp + 0x20], rax
call fcn.1800a61e0
mov dword [rsp + 0x54], eax
test eax, eax
je 0x180047d37
cmp eax, 5
jne 0x180048001
mov dword [rsp + 0x54], r14d
mov dword [rbp + 0x1b0], 1
movsxd rbx, dword [rbx + 0xc]
mov rdi, r14
mov r11d, 0x2460
imul rbx, rbx, 0x38
add rbx, rsi
mov esi, 4
movsxd rax, dword [rbp + rdi*4 + 0x1b0]
test word [rbx + 8], r11w
je 0x180047d72
mov rdx, rax
mov rcx, rbx
call fcn.180039540
mov r11d, 0x2460
jmp 0x180047d79
mov qword [rbx], rax
mov word [rbx + 8], si
inc rdi
add rbx, 0x38
cmp rdi, 3
jl 0x180047d50
mov rsi, qword [rsp + 0x70]
lea rdi, [0x180000000]
jmp 0x18004513e
mov rdx, qword [rsp + 0x48]
mov rcx, r15
call fcn.180042f40
mov rcx, qword [r13 + 0x20]
mov r12, rax
mov rax, qword [rsp + 0x48]
mov ebx, dword [rax + 0xc]
movsxd rdx, dword [rax + 4]
shl rdx, 5
cmp ebx, 0xffffffff
mov r13, qword [rdx + rcx + 8]
mov rcx, qword [r13 + 8]
mov rdi, qword [rcx]
movzx esi, byte [rdi + 9]
cmove ebx, esi
cmp byte [rdi + 0x15], 3
jae 0x180047de8
mov rax, qword [rdi + 0x50]
cmp qword [rax], 0
je 0x180047dea
cmp qword [rdi + 0x60], 0
jle 0x180047dea
mov ebx, esi
cmp byte [rdi + 0x14], 0
lea rcx, [0x1802b9a30]
jne 0x180047dfe
mov rcx, qword [rdi + 0xd0]
cmp ebx, 5
jne 0x180047e51
call fcn.18001a360
test eax, eax
je 0x180047e18
mov rcx, rdi
call fcn.180027990
test eax, eax
jne 0x180047e51
mov ebx, esi
mov eax, dword [rsp + 0x54]
test eax, eax
je 0x180047e24
mov ebx, esi
mov edx, ebx
mov rcx, rdi
call fcn.180027820
mov ecx, 0xa02
lea rdi, [0x180000000]
mov word [r12 + 8], cx
cmp eax, 6
jne 0x180047ed3
mov rcx, r14
jmp 0x180047edd
cmp ebx, esi
je 0x180047e1a
cmp esi, 5
je 0x180047e5f
cmp ebx, 5
jne 0x180047e1a
mov rax, qword [rsp + 0x78]
cmp byte [rax + 0x53], 0
je 0x180048a1f
cmp dword [rax + 0xac], 1
jg 0x180048a1f
cmp esi, 5
jne 0x180047e9c
mov rcx, rdi
call fcn.180027b80
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180047e22
mov edx, ebx
mov rcx, rdi
call fcn.180027820
jmp 0x180047eb7
cmp esi, 4
jne 0x180047eac
lea edx, [rsi - 2]
mov rcx, rdi
call fcn.180027820
cmp dword [rsp + 0x54], 0
jne 0x180047e22
mov edx, r14d
cmp ebx, 5
mov rcx, r13
sete dl
inc edx
call fcn.180037370
mov dword [rsp + 0x54], eax
jmp 0x180047e1e
cdqe
mov rcx, qword [rdi + rax*8 + 0x2b6f68]
mov qword [r12 + 0x10], rcx
call fcn.18001a360
mov byte [r12 + 0xa], 1
mov dword [r12 + 0xc], eax
movzx eax, byte [rsp + 0x68]
cmp eax, 1
je 0x180047f07
movzx edx, al
mov rcx, r12
call fcn.180019bf0
mov eax, dword [rsp + 0x54]
test eax, eax
je 0x180044c80
mov r13, qword [rsp + 0x78]
jmp 0x180048001
lea rcx, [r15 + 0x48]
mov rdx, r13
call fcn.180090260
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048001
mov r9, qword [rsp + 0x60]
lea r8d, [rax + 1]
jmp 0x1800460cb
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
call fcn.18002eba0
mov dword [rsp + 0x54], eax
test eax, eax
je 0x180043678
cmp eax, 0x65
jne 0x180048001
mov dword [rsp + 0x54], r14d
jmp 0x1800486ee
cmp dword [r12 + 4], 0
jne 0x180047f92
mov rcx, r13
call fcn.18003fae0
jmp case.0x1800430cf.62
or dword [r15 + 0x8c], 1
jmp case.0x1800430cf.62
movzx r8d, byte [r12 + 0xc]
test r8b, r8b
jne 0x180047fb9
mov eax, 0x4000
test dword [r13 + 0x2c], eax
jne 0x1800431d4
movsxd rax, dword [r12 + 4]
mov rcx, qword [r13 + 0x20]
mov edx, dword [r12 + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.1800371d0
mov dword [rsp + 0x54], eax
test eax, eax
je 0x18004367d
cmp al, 6
jne 0x180048001
mov rax, qword [rsp + 0x48]
lea rdx, str.database_table_is_locked:__s
mov r8, qword [rax + 0x10]
mov rcx, r15
call fcn.18003a440
mov eax, dword [rsp + 0x54]
mov edi, 1
movzx r12d, byte [rsp + 0x40]
lea rbx, str.unknown_error
mov esi, 7
cmp byte [r13 + 0x55], 0
cmovne eax, esi
cmp qword [r15 + 0x48], 0
mov dword [rsp + 0x54], eax
jne 0x180048dbf
cmp eax, 0xc0a
je 0x180048dbf
cmp eax, 0x204
je 0x180048da2
movzx eax, al
cmp eax, 0x1a
ja 0x180048da9
lea rcx, [0x180000000]
mov rcx, qword [rcx + rax*8 + 0x2b9600]
test rcx, rcx
je 0x180048da9
mov rbx, rcx
jmp 0x180048da9
mov rax, qword [rsp + 0x48]
mov rcx, r13
mov rbx, qword [rax + 0x10]
mov rdx, rbx
call fcn.1800920e0
mov dword [rsp + 0x54], eax
test rbx, rbx
je 0x18004809e
mov rdx, qword [rbx + 0x10]
mov rcx, r15
call fcn.18003fb10
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180048001
jmp 0x180043678
xor eax, eax
lea rcx, [rbp + 0x50]
mov qword [rbp + 0x78], rax
mov qword [rbp + 0x50], rax
mov qword [rbp + 0x58], rax
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x68], rax
mov qword [rbp + 0x70], rax
mov qword [rbp + 0x80], rax
mov rax, qword [rsp + 0x48]
mov qword [rbp + 0x78], r13
movsxd rdx, dword [rax + 8]
imul rdx, rdx, 0x38
add rdx, rsi
call fcn.1800397b0
mov rcx, qword [rbp + 0x58]
mov edx, 0x202
mov dword [rsp + 0x54], eax
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x18004810d
cmp byte [rbp + 0x5a], 1
jne 0x18004810d
mov rax, qword [rbp + 0x60]
jmp 0x180048121
test cl, 1
jne 0x180048145
lea rcx, [rbp + 0x50]
mov dl, 1
call fcn.180039cb0
mov rcx, qword [rbp + 0x58]
test rax, rax
je 0x180048145
mov r8, rax
mov rax, qword [rsp + 0x48]
lea r9, [r15 + 0x48]
mov edx, dword [rax + 4]
mov rcx, r13
call fcn.180091ae0
mov rcx, qword [rbp + 0x58]
mov dword [rsp + 0x54], eax
mov r11d, 0x2460
test r11w, cx
jne 0x180048157
cmp dword [rbp + 0x70], 0
je 0x180048166
lea rcx, [rbp + 0x50]
call fcn.180039110
mov r11d, 0x2460
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180048001
jmp 0x18004513e
mov rax, qword [rsp + 0x48]
inc dword [r13 + 0xb8]
mov rcx, r13
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.180091e20
dec dword [r13 + 0xb8]
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x180048001
jmp 0x180043678
mov rax, qword [rsp + 0x48]
mov qword [rbp + 0x10], r14
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x180048a60
mov rdi, qword [rbx]
test rdi, rdi
je 0x180048a60
lea rdx, [rbp + 0x10]
mov rcx, rbx
call qword [rdi + 0x30]
mov rdx, rbx
mov rcx, r15
mov dword [rsp + 0x54], eax
call fcn.18003fb10
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180048001
mov rax, qword [rbp + 0x10]
or r9d, 0xffffffff
xor r8d, r8d
mov qword [rax], rbx
mov rax, qword [rsp + 0x48]
mov rcx, r15
mov edx, dword [rax + 4]
mov byte [rsp + 0x20], 2
call fcn.180042b80
mov rcx, qword [rbp + 0x10]
test rax, rax
je 0x180048a58
mov r12, qword [rsp + 0x48]
mov qword [rax + 0x18], rcx
inc dword [rbx + 8]
jmp 0x18004376e
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
movsxd rdx, dword [rax + 0xc]
mov rax, qword [r15 + 0x60]
imul rdx, rdx, 0x38
mov r12, qword [rax + rcx*8]
add rdx, rsi
mov rcx, r14
mov rbx, qword [r12 + 0x18]
movsxd r9, dword [rdx + 0x38]
mov r13d, dword [rdx]
mov rsi, qword [rbx]
lea r10, [rdx + 0x38]
mov rdx, qword [r15 + 0x18]
mov rdi, qword [rsi]
test r9d, r9d
jle 0x18004829a
nop word [rax + rax]
movsxd rax, r8d
inc rcx
inc r8d
imul rax, rax, 0x38
add rax, r10
mov qword [rdx + rcx*8 - 8], rax
cmp rcx, r9
jl 0x180048280
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x20], rdx
mov rcx, rbx
mov r8, qword [rax + 0x10]
mov edx, r13d
call qword [rdi + 0x40]
mov rdx, rsi
mov rcx, r15
mov dword [rsp + 0x54], eax
call fcn.18003fb10
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180047f13
mov rcx, rbx
call qword [rdi + 0x50]
mov rsi, qword [rsp + 0x70]
mov r9, qword [rsp + 0x60]
mov byte [r12 + 2], 0
mov r12, qword [rsp + 0x48]
test eax, eax
mov r8d, 1
jmp 0x1800460be
mov rax, qword [rsp + 0x48]
mov r12, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x60]
movsxd rdi, dword [r12 + 0xc]
imul rdi, rdi, 0x38
mov rcx, qword [rax + rcx*8]
add rdi, rsi
cmp byte [rcx + 2], 0
je 0x180048341
test word [rdi + 8], r11w
je 0x180048330
mov rcx, rdi
call fcn.180039080
jmp 0x18004376e
mov word [rdi + 8], r8w
lea rdi, [0x180000000]
jmp case.0x1800430cf.62
mov rax, qword [rcx + 0x18]
xor edx, edx
mov rbx, qword [rax]
mov rax, qword [rbx]
mov qword [rbp + 0x178], rdx
mov qword [rbp + 0x180], rdx
mov qword [rbp + 0x188], rdx
mov qword [rbp + 0x190], rdx
mov qword [rbp + 0x198], rdx
mov qword [rbp + 0x1a0], rdx
mov qword [rbp + 0x1a8], rdx
mov qword [rbp + 0x178], rdi
mov edx, 0x3e00
and word [rdi + 8], dx
or word [rdi + 8], 1
mov r8d, dword [r12 + 8]
mov rcx, qword [rcx + 0x18]
lea rdx, [rbp + 0x178]
call qword [rax + 0x58]
mov rdx, rbx
mov rcx, r15
mov dword [rsp + 0x54], eax
call fcn.18003fb10
mov eax, dword [rbp + 0x19c]
mov ecx, dword [rsp + 0x54]
test eax, eax
cmovne ecx, eax
test byte [rdi + 8], 2
mov dword [rsp + 0x54], ecx
movzx ecx, byte [rsp + 0x68]
je 0x1800483e6
movzx eax, byte [rdi + 0xa]
cmp eax, ecx
je 0x1800483e6
movzx edx, cl
mov rcx, rdi
call fcn.180019bf0
mov rcx, rdi
call fcn.1800396f0
test eax, eax
jne 0x180048a7b
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180048001
jmp 0x18004376e
mov rax, qword [rsp + 0x48]
movsxd rcx, dword [rax + 4]
mov rax, qword [r15 + 0x60]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], 0
jne 0x180044179
mov rcx, qword [rdi + 0x18]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov rdx, rbx
mov rcx, r15
mov dword [rsp + 0x54], eax
call fcn.18003fb10
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180048001
mov rcx, qword [rdi + 0x18]
call qword [rsi + 0x50]
test eax, eax
jne 0x180047482
mov r9, qword [rsp + 0x60]
mov r11d, 0x2460
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rax, [r9 + rcx*8]
mov qword [rsp + 0x48], rax
jmp 0x18004748d
mov rcx, qword [rsp + 0x48]
movsxd rbx, dword [rcx + 4]
mov rax, qword [rcx + 0x10]
mov rdi, qword [rax + 0x10]
imul rbx, rbx, 0x38
add rbx, rsi
test byte [rbx + 8], 2
je 0x1800484b8
cmp byte [rbx + 0xa], 1
je 0x1800484b8
mov dl, 1
mov rcx, rbx
call fcn.180019bf0
test eax, eax
jne 0x180048001
mov rax, qword [rdi]
mov rdx, qword [rbx + 0x10]
mov rcx, rdi
call qword [rax + 0x98]
mov rdx, rdi
mov rcx, r15
mov dword [rsp + 0x54], eax
call fcn.18003fb10
and dword [r15 + 0x8c], 0xfffffffe
mov eax, dword [rsp + 0x54]
jmp 0x180046c60
mov rax, qword [rsp + 0x48]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x180048a60
mov r10, qword [rbx]
test r10, r10
je 0x180048a60
cmp qword [r10 + 0x68], 0
mov r12, qword [rsp + 0x48]
movsxd rdx, dword [r12 + 8]
je 0x1800460d1
movsxd rcx, dword [r12 + 0xc]
movzx edi, byte [r13 + 0x5a]
mov r8, qword [r15 + 0x18]
imul rcx, rcx, 0x38
add rcx, rsi
mov rax, r14
test edx, edx
jle 0x180048550
nop dword [rax + rax]
mov qword [r8 + rax*8], rcx
inc rax
add rcx, 0x38
cmp rax, rdx
jl 0x180048540
mov rax, r12
lea r9, [rbp + 0xf0]
mov rcx, rbx
movzx eax, byte [rax + 3]
mov byte [r13 + 0x5a], al
call qword [r10 + 0x68]
mov rdx, rbx
mov rcx, r15
mov byte [r13 + 0x5a], dil
mov dword [rsp + 0x54], eax
call fcn.18003fb10
mov eax, dword [rsp + 0x54]
mov rcx, r12
test eax, eax
jne 0x18004859b
cmp dword [rcx + 4], eax
je 0x18004859b
mov rdx, qword [rbp + 0xf0]
mov qword [rbp - 0x40], rdx
mov qword [r13 + 0x30], rdx
cmp al, 0x13
jne 0x1800485dc
mov rax, qword [rcx + 0x10]
cmp byte [rax + 0x1c], 0
je 0x1800485dc
mov rax, r12
movzx eax, byte [rax + 3]
cmp al, 4
jne 0x1800485be
mov dword [rsp + 0x54], r14d
jmp 0x18004376e
cmp al, 5
jne 0x1800485d0
mov eax, 2
mov byte [r15 + 0x8a], al
jmp 0x1800485e3
movzx eax, al
mov byte [r15 + 0x8a], al
jmp 0x1800485e3
inc dword [r15 + 0x98]
mov eax, dword [rsp + 0x54]
test eax, eax
jne 0x180048001
jmp 0x18004376e
mov rdx, qword [rsp + 0x48]
mov rcx, r15
call fcn.180042f40
mov rcx, qword [rsp + 0x48]
movsxd rdx, dword [rcx + 4]
mov rcx, qword [r13 + 0x20]
shl rdx, 5
mov rdx, qword [rdx + rcx + 8]
mov rcx, qword [rdx + 8]
mov edx, dword [rcx + 0x40]
mov qword [rax], rdx
jmp 0x180043678
mov rdx, qword [rsp + 0x48]
mov rcx, r15
call fcn.180042f40
mov rcx, qword [r13 + 0x20]
mov rbx, rax
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
shl rdx, 5
mov r9, qword [rdx + rcx + 8]
mov edx, r14d
test r8d, r8d
je 0x180048666
mov rcx, qword [r9 + 8]
mov edx, dword [rcx + 0x40]
cmp edx, r8d
cmovb edx, r8d
mov rcx, r9
call fcn.18002da50
movsxd rcx, eax
mov qword [rbx], rcx
jmp 0x180043678
cmp qword [r13 + 0xc8], 0
je 0x1800486db
test byte [r15 + 0x8c], 2
jne 0x1800486db
mov rdx, qword [r12 + 0x10]
test rdx, rdx
jne 0x1800486a3
mov rdx, qword [r15 + 0xe8]
test rdx, rdx
je 0x1800486db
mov rcx, r15
call fcn.1800425f0
mov rcx, qword [r13 + 0xd0]
mov rdx, rax
mov rbx, rax
call qword [r13 + 0xc8]
mov rdx, rbx
mov rcx, r13
call fcn.1800171e0
mov r9, qword [rsp + 0x60]
mov r8d, 1
mov r11d, 0x2460
cmp dword [r12 + 8], 0
je 0x1800460d1
jmp 0x1800486fe
mov rsi, qword [rsp + 0x70]
mov r12, qword [rsp + 0x48]
mov r9, qword [rsp + 0x60]
mov r8d, 1
mov eax, dword [r12 + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [r9 + rcx*8]
jmp 0x1800460c4
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
mov r8d, 1
lea rdi, [0x180000000]
jmp 0x1800460da
mov r12, qword [rsp + 0x48]
mov r9, qword [rsp + 0x60]
mov r8, rdi
lea rdi, [0x180000000]
jmp 0x1800460d1
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
jmp case.0x1800430cf.62
mov ecx, dword [rdx + 4]
mov dword [r15 + 0x84], ecx
movzx eax, byte [rdx + 8]
mov dword [r15 + 0x80], ebx
mov byte [r15 + 0x8a], al
test ecx, ecx
je 0x1800487fc
movzx eax, byte [rdx + 3]
test al, al
je 0x1800487b1
movzx eax, al
mov r14, qword [rdi + rax*8 + 0x2b60e8]
test r14, r14
je 0x1800487b1
mov r9, qword [rdx + 0x10]
test r9, r9
je 0x1800487b1
lea rdx, str._s_constraint_failed:__s
mov r8, r14
mov rcx, r15
call fcn.18003a440
jmp 0x1800487d5
mov r8, qword [rdx + 0x10]
mov rcx, r15
test r8, r8
je 0x1800487c6
lea rdx, [0x1802bbb9c]
jmp 0x1800487d0
mov r8, r14
lea rdx, str._s_constraint_failed
call fcn.18003a440
mov rax, qword [r15 + 0x48]
mov r9, qword [r15 + 0xe8]
lea rdx, str.abort_at__d_in___s_:__s
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x48]
mov r8d, ebx
mov ecx, dword [rax + 4]
call fcn.180019770
mov rcx, r15
call fcn.18003d580
cmp eax, 5
jne 0x180048817
mov ebx, eax
mov dword [r15 + 0x84], eax
jmp 0x180048eb3
cmp dword [r15 + 0x84], 0
mov ebx, 0x65
mov eax, 1
cmovne ebx, eax
jmp 0x180048eb3
mov ecx, 0x12c96
call fcn.1800a7cd0
mov r13, qword [rsp + 0x78]
mov r15, rdi
jmp 0x180048001
cmp qword [r12 + 0x68], 0
jne 0x180048873
mov eax, 0x2460
test word [rbp + 0xa8], ax
jne 0x180048867
cmp dword [rbp + 0xc0], 0
je 0x180048873
lea rcx, [rbp + 0xa0]
call fcn.180039110
mov ecx, 0x12cd3
call fcn.1800a7cd0
mov r13, qword [rsp + 0x78]
mov r15, qword [rbp - 0x78]
jmp 0x180048001
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, r15
call fcn.18003a440
mov eax, 5
jmp 0x180048001
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
mov rcx, r15
call fcn.18003a440
mov eax, 5
jmp 0x180048001
mov rcx, qword [rsp + 0x48]
mov r15, rbx
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x60]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [rbx + 0x80], edx
mov ebx, 5
mov byte [r13 + 0x53], 0
mov dword [r15 + 0x84], ebx
jmp 0x180048eb3
lea rdx, str.FOREIGN_KEY_constraint_failed
mov rcx, rbx
mov r15, rbx
mov dword [rbx + 0x84], 0x313
mov byte [rbx + 0x8a], 2
call fcn.18003a440
mov ebx, edi
jmp 0x180048eb3
mov eax, 8
jmp 0x180048001
mov rcx, qword [rsp + 0x48]
mov ebx, dword [rsp + 0x54]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x60]
mov dword [r15 + 0x84], ebx
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r15 + 0x80], edx
jmp 0x180048eb3
mov rdx, qword [r15 + 0x48]
mov rcx, r13
call fcn.1800171e0
lea rdx, str.database_schema_has_changed
mov rcx, r13
call fcn.1800177f0
mov qword [r15 + 0x48], rax
mov rax, r12
movsxd rdx, dword [rax + 4]
mov rax, qword [r13 + 0x20]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
cmp dword [rcx], edi
je 0x1800489b3
mov rcx, r13
call fcn.18005df80
or dword [r15 + 0x8c], 1
mov eax, select
jmp 0x180048001
mov eax, 0x204
jmp 0x180048001
mov eax, 6
mov byte [r15 + 0x8a], 2
jmp 0x180048001
mov edi, 7
mov dword [rsp + 0x54], edi
jmp 0x180047240
lea rdx, str.too_many_levels_of_trigger_recursion
mov rcx, r15
mov dword [rsp + 0x54], r8d
call fcn.18003a440
jmp 0x180047ffd
mov rcx, rbx
call fcn.1800400d0
lea rdx, [0x1802bbb9c]
mov r8, rax
jmp 0x180047ff5
lea rax, str.into
cmp ebx, 5
lea r8, str.out_of
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
mov edi, 1
mov rcx, r15
cmove r8, rax
mov dword [rsp + 0x54], edi
call fcn.18003a440
mov r13, qword [rsp + 0x78]
mov eax, edi
jmp 0x180048006
call qword [rdi + reloc.WS2_32.dll_getservbyport]
jmp 0x180044be8
mov eax, 6
jmp 0x180048001
mov r13, qword [rsp + 0x78]
mov r15, qword [rbp - 0x78]
jmp 0x180048a7b
mov r13, rcx
mov r15, rdi
lea rdx, str.string_or_blob_too_big
mov rcx, r15
call fcn.18003a440
mov eax, reloc.WS2_32.dll_select
jmp 0x180048001
mov rax, qword [r13 + 0x198]
test rax, rax
je 0x180048ac4
cmp dword [rsp + 0x50], r10d
jb 0x180048ac4
mov rcx, qword [r13 + 0x1a0]
call rax
test eax, eax
je 0x180048abe
mov eax, 9
jmp 0x180048001
mov r8d, 1
cmp qword [r15 + 0xd0], 0
mov rcx, r15
jle 0x180048afc
mov dword [r15 + 0x84], 0x313
mov byte [r15 + 0x8a], 2
lea rdx, str.FOREIGN_KEY_constraint_failed
call fcn.18003a440
mov edi, 1
mov eax, edi
jmp 0x180048006
mov edx, r8d
call fcn.18003d3b0
mov eax, dword [r15 + 0x7c]
mov rcx, qword [rsp + 0x48]
add eax, 2
mov edi, r14d
or eax, 1
mov dword [r15 + 0x7c], eax
movsxd rax, dword [rcx + 4]
imul rax, rax, 0x38
add rsi, rax
mov qword [r15 + 0x28], rsi
cmp dword [rcx + 8], 0
jle 0x180048b8c
lea rbx, [rsi + 8]
mov r12d, 0x202
nop dword [rax]
mov eax, 0x1000
test word [rbx], ax
je 0x180048b66
movsxd rcx, edi
imul rcx, rcx, 0x38
add rcx, rsi
call fcn.180038d10
test eax, eax
jne 0x180044be8
mov rcx, qword [rsp + 0x48]
movzx eax, word [rbx]
and ax, r12w
cmp ax, 2
jne 0x180048b81
lea rcx, [rbx - 8]
call fcn.180038e10
mov rcx, qword [rsp + 0x48]
inc edi
add rbx, 0x38
cmp edi, dword [rcx + 8]
jl 0x180048b40
cmp byte [r13 + 0x55], 0
jne 0x180044be8
sub rcx, qword [rsp + 0x60]
movabs rax, 0x2aaaaaaaaaaaaaab
mov ebx, 0x64
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
inc edx
mov dword [r15 + 0x80], edx
jmp 0x180048eb3
mov rax, qword [rsp + 0x48]
mov ebx, dword [rax + 4]
mov ecx, dword [rax + 8]
movzx eax, byte [r13 + 0x53]
cmp ebx, eax
je 0x180048ce0
test ecx, ecx
je 0x180048bfa
mov edx, 0x204
mov rcx, r13
call fcn.1800a5200
mov byte [r13 + 0x53], 1
jmp 0x180048c67
test ebx, ebx
je 0x180048c21
cmp dword [r13 + 0xb0], 0
jle 0x180048c21
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
mov rcx, r15
call fcn.18003a440
mov eax, 5
jmp 0x180048001
mov rax, qword [r15]
mov rcx, qword [rax + 0x288]
add rcx, qword [rax + 0x280]
test rcx, rcx
jle 0x180048c63
lea rdx, str.FOREIGN_KEY_constraint_failed
mov rcx, r15
mov dword [r15 + 0x84], 0x313
mov byte [r15 + 0x8a], 2
call fcn.18003a440
mov ebx, 1
jmp 0x180048eb3
mov byte [r13 + 0x53], bl
mov rcx, r15
call fcn.18003d580
cmp eax, 5
jne 0x180048cbc
mov rcx, qword [rsp + 0x48]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x60]
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov eax, 1
sub al, bl
mov ebx, 5
mov dword [r15 + 0x80], edx
mov byte [r13 + 0x53], al
mov dword [r15 + 0x84], ebx
jmp 0x180048eb3
mov rcx, r13
call fcn.1800a4690
cmp dword [r15 + 0x84], 0
mov ebx, 0x65
mov eax, 1
cmove eax, ebx
mov ebx, eax
jmp 0x180048eb3
test ebx, ebx
jne 0x180048cf3
lea rdx, str.cannot_start_a_transaction_within_a_transaction
mov rcx, r15
jmp 0x180048aeb
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, r15
jmp 0x180048aeb
movzx r12d, byte [rsp + 0x40]
lea rdi, [0x180000000]
cmp byte [r13 + 0x55], 0
mov eax, 9
mov esi, 7
cmovne eax, esi
lea rbx, str.unknown_error
mov dword [rsp + 0x54], eax
mov dword [r15 + 0x84], eax
mov r8, rbx
cmp eax, 0x204
je 0x180048d64
movzx eax, al
cmp eax, 0x1a
ja 0x180048d6b
mov rcx, qword [rdi + rax*8 + 0x2b9600]
test rcx, rcx
je 0x180048d6b
mov r8, rcx
jmp 0x180048d6b
lea r8, str.abort_due_to_ROLLBACK
lea rdx, [0x1802bbb9c]
mov rcx, r15
call fcn.18003a440
mov eax, dword [rsp + 0x54]
mov edi, 1
jmp 0x180048018
mov eax, 1
jmp 0x180044bf8
mov r13, r14
jmp 0x180048001
mov rdi, rbx
jmp 0x180048006
lea rbx, str.abort_due_to_ROLLBACK
lea rdx, [0x1802bbb9c]
mov r8, rbx
mov rcx, r15
call fcn.18003a440
mov eax, dword [rsp + 0x54]
mov dword [r15 + 0x84], eax
cmp eax, 0xc0a
je 0x180048df5
movzx eax, al
cmp eax, 0xe
je 0x180048dda
cmp eax, 0xa
jne 0x180048df5
mov rcx, qword [r13]
mov rax, qword [rcx + 0x80]
test rax, rax
je 0x180048df1
xor r8d, r8d
xor edx, edx
call rax
mov dword [r13 + 0x4c], eax
mov rcx, qword [rsp + 0x48]
mov r9, qword [r15 + 0xe8]
movabs rax, 0x2aaaaaaaaaaaaaab
sub rcx, qword [rsp + 0x60]
imul rcx
mov rax, qword [r15 + 0x48]
mov ecx, dword [rsp + 0x54]
sar rdx, 2
mov qword [rsp + 0x20], rax
mov r8, rdx
shr r8, 0x3f
add r8, rdx
lea rdx, str.statement_aborts_at__d:___s___s
call fcn.180019770
mov rcx, r15
call fcn.18003d580
cmp dword [rsp + 0x54], 0xc0a
jne 0x180048e77
cmp byte [r13 + 0x55], 0
jne 0x180048e77
cmp byte [r13 + 0x56], 0
jne 0x180048e77
cmp dword [r13 + 0xb4], 0
mov byte [r13 + 0x55], 1
jle 0x180048e70
mov dword [r13 + 0x148], edi
inc dword [r13 + 0x150]
mov ebx, edi
mov dword [rsp + 0x54], ebx
test r12b, r12b
je 0x180048eb3
mov rcx, qword [r13 + 0x20]
movzx ebx, r12b
dec ebx
movsxd rax, ebx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.180066b50
cmp ebx, 1
je 0x180048eaf
mov rcx, qword [r13 + 0x20]
mov rcx, qword [rcx + 0x38]
call fcn.180066b50
mov ebx, dword [rsp + 0x54]
mov rax, qword [rbp - 0x40]
mov qword [r13 + 0x30], rax
mov eax, dword [rsp + 0x50]
add dword [r15 + 0xb8], eax
cmp dword [r15 + 0xa0], 0
je 0x180048ed8
mov rcx, r15
call fcn.18003ba60
mov eax, ebx
mov rcx, qword [rbp + 0x2c0]
xor rcx, rsp
call fcn.1800acfa0
lea r11, [rsp + 0x3d0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret