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

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x158]
sub rsp, 0x218
mov rdi, qword [rcx]
xor r15d, r15d
mov rsi, qword [rcx + 0x88]
xor bl, bl
cmp dword [rcx + 0x38], 7
mov edx, r15d
mov r11, qword [rcx + 0x68]
mov r13, rcx
movzx r14d, byte [rdi + 0x5e]
lea r10d, [r15 + 1]
movaps xmmword [rax - 0x58], xmm6
mov r8d, r15d
mov byte [rbp + 0x170], r14b
movaps xmmword [rax - 0x68], xmm7
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x3c], r15d
mov qword [rsp + 0x48], rdi
mov byte [rbp + 0x168], bl
mov dword [rsp + 0x38], edx
mov dword [rbp - 0x74], r15d
mov qword [rsp + 0x40], r11
je 0x14004bb87
mov qword [rcx + 0x48], r15
mov qword [rcx + 0xa0], r15
mov eax, dword [rdi + 0x160]
mov dword [rdi + 0x228], r15d
test eax, eax
jne 0x14004b375
movsxd rax, dword [rcx + 0x34]
xorps xmm7, xmm7
lea rcx, [rax + rax*2]
lea r12, [rsi + rcx*8]
lea rcx, [0x140000000]
movzx ebx, byte [r12]
inc r8d
mov qword [rsp + 0x30], r12
mov r9d, Ordinal_133
mov dword [rbp - 0x74], r8d
cmp ebx, 0xa8
ja case.default.0x1400463a0
mov ecx, dword [rcx + rbx*4 + 0x4bf3c]
lea rax, [0x140000000]
add rcx, rax
jmp rcx
movsxd rax, dword [r12 + 4]
movabs rdx, 0xaaaaaaaaaaaaaaab
imul rcx, rax, 0x38
mov eax, 4
mov word [rcx + r11 + 8], ax
mov rax, r12
sub rax, rsi
sar rax, 3
imul rax, rdx
cdqe
mov qword [rcx + r11], rax
jmp 0x14004b895
movsxd rax, dword [r12 + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + r11]
mov word [rdx + r11 + 8], r9w
lea rcx, [rax + rax*2]
lea r12, [rsi + rcx*8]
jmp 0x140046b43
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
mov eax, dword [r12 + 0xc]
dec eax
cdqe
mov qword [rcx + r11], rax
mov eax, 4
mov word [rcx + r11 + 8], ax
cmp dword [r12 + 8], 0
jne 0x14004b895
jmp case.0x1400463a0.86
movsxd rax, dword [r12 + 4]
imul rdx, rax, 0x38
mov rax, qword [rdx + r11]
lea rcx, [rax + rax*2]
mov eax, dword [rsi + rcx*8 + 8]
dec eax
mov word [rdx + r11 + 8], r9w
cdqe
lea rcx, [rax + rax*2]
lea r12, [rsi + rcx*8]
jmp 0x140046b43
mov rbx, qword [rsp + 0x30]
movsxd rax, dword [rbx + 4]
sub rbx, rsi
imul rdx, rax, 0x38
mov eax, 4
sar rbx, 3
movsxd rcx, dword [rdx + r11]
mov word [rdx + r11 + 8], ax
movabs rax, 0xaaaaaaaaaaaaaaab
imul rax, rbx
lea rcx, [rcx + rcx*2]
cdqe
lea r12, [rsi + rcx*8]
mov qword [rdx + r11], rax
jmp 0x140046b43
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r11 + 8], 1
je case.0x1400463a0.86
mov rcx, qword [rsp + 0x30]
movabs rax, 0xaaaaaaaaaaaaaaab
mov rbx, rcx
sub rbx, rsi
sar rbx, 3
mov edx, dword [rcx + 4]
imul rbx, rax
test edx, edx
jne 0x14004b8c2
mov rcx, qword [r13 + 0x100]
test rcx, rcx
je 0x14004b8bd
mov rax, qword [rcx + 8]
dec dword [r13 + 0x110]
mov qword [r13 + 0x100], rax
mov eax, dword [r13 + 0x3c]
add dword [rdi + 0x78], eax
mov dword [rdi + 0x74], eax
call fcn.14003f300
mov r12, qword [rsp + 0x30]
mov rsi, qword [r13 + 0x88]
mov qword [rsp + 0x50], rsi
cmp dword [r12 + 8], 4
jne 0x14004652e
cdqe
lea rcx, [rax + rax*2]
mov eax, dword [rsi + rcx*8 + 8]
dec eax
mov r11, qword [r13 + 0x68]
mov r10d, 1
cdqe
mov qword [rsp + 0x40], r11
lea rcx, [rax + rax*2]
lea r12, [rsi + rcx*8]
jmp 0x140046b43
movsxd rax, dword [r12 + 8]
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, qword [r13 + 0x68]
test word [rcx + 8], ax
je 0x140046588
call fcn.140046250
mov r11, qword [rsp + 0x40]
mov rcx, rax
movsxd rax, dword [r12 + 4]
mov r10d, 1
mov edx, dword [rsp + 0x38]
mov qword [rcx], rax
jmp case.0x1400463a0.86
mov eax, 4
mov word [rcx + 8], ax
movsxd rax, dword [r12 + 4]
mov qword [rcx], rax
jmp case.0x1400463a0.86
movsxd rax, dword [r12 + 8]
imul rdx, rax, 0x38
mov eax, 0x2400
add rdx, qword [r13 + 0x68]
test word [rdx + 8], ax
je 0x1400465dc
mov rcx, rdx
call fcn.140046250
mov r11, qword [rsp + 0x40]
mov rdx, rax
mov rax, qword [r12 + 0x10]
mov r10d, 1
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x140046b43
mov eax, 4
mov word [rdx + 8], ax
mov rax, qword [r12 + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x140046b43
movsxd rax, dword [r12 + 8]
imul rdx, rax, 0x38
mov eax, 0x2400
add rdx, qword [r13 + 0x68]
test word [rdx + 8], ax
je 0x140046623
mov rcx, rdx
call fcn.140046250
mov r11, qword [rsp + 0x40]
mov rdx, rax
mov r10d, 1
mov eax, 8
mov word [rdx + 8], ax
mov rax, qword [r12 + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
jmp 0x140046b43
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
mov eax, 0x2400
add rbx, qword [r13 + 0x68]
test word [rbx + 8], ax
je 0x14004666a
mov rcx, rbx
call fcn.140046250
mov rcx, qword [rsp + 0x30]
mov rbx, rax
jmp 0x140046673
mov eax, 4
mov word [rbx + 8], ax
mov rdx, qword [rcx + 0x10]
test rdx, rdx
jne 0x140046681
mov eax, r15d
jmp 0x14004669e
mov rax, 0xffffffffffffffff
nop dword [rax + rax]
inc rax
cmp byte [rdx + rax], 0
jne 0x140046690
and eax, 0x3fffffff
mov dword [rcx + 4], eax
cmp r14b, 1
je 0x14004672d
mov r9b, 1
mov qword [rsp + 0x20], r15
mov r8d, 0xffffffff
mov rcx, rbx
call fcn.14003b7b0
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x14004bbdc
test byte [rbx + 8], 2
je 0x1400466ed
cmp byte [rbx + 0xa], r14b
je 0x1400466ed
movzx edx, r14b
mov rcx, rbx
call fcn.14001a110
test eax, eax
jne 0x14004bb80
mov rcx, qword [rsp + 0x30]
mov eax, 0x800
or word [rbx + 8], ax
mov dword [rbx + 0x20], r15d
cmp byte [rcx + 1], 0xf9
jne 0x14004671b
mov rdx, qword [rcx + 0x10]
test rdx, rdx
je 0x14004671b
mov rcx, rdi
call fcn.140017100
mov rcx, qword [rsp + 0x30]
mov byte [rcx + 1], 0xf9
mov rax, qword [rbx + 0x10]
mov qword [rcx + 0x10], rax
mov eax, dword [rbx + 0xc]
mov dword [rcx + 4], eax
cmp eax, dword [rdi + 0x7c]
jg 0x14004bbdc
mov byte [rcx], Ordinal_73
jmp 0x140046740
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, qword [r13 + 0x68]
test word [rcx + 8], ax
je 0x14004675f
call fcn.140046250
mov rcx, rax
mov r12, qword [rsp + 0x30]
mov eax, 0xa02
mov word [rcx + 8], ax
mov r10d, 1
mov rax, qword [r12 + 0x10]
mov qword [rcx + 0x10], rax
mov eax, dword [r12 + 4]
mov dword [rcx + 0xc], eax
mov byte [rcx + 0xa], r14b
jmp 0x140046b3e
mov rbx, qword [rsp + 0x30]
mov r8d, 0x2400
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x68]
test word [rcx + 8], r8w
je 0x1400467ca
call fcn.140046250
mov r11, qword [rsp + 0x40]
mov rcx, rax
mov edx, dword [rsp + 0x38]
mov r10d, 1
mov r8d, 0x2400
jmp 0x1400467d3
mov eax, 4
mov word [rcx + 8], ax
cmp dword [rbx + 4], 0
mov esi, r10d
mov edi, dword [rbx + 0xc]
mov r9d, 0x101
mov eax, dword [rbx + 8]
cmovne si, r9w
sub edi, eax
mov word [rcx + 8], si
mov dword [rcx + 0xc], r15d
lea rbx, [rcx + 8]
test edi, edi
jle 0x14004b78d
test word [rbx + 0x38], r8w
lea rbx, [rbx + 0x38]
je 0x14004681b
lea rcx, [rbx - 8]
call fcn.14003ae50
mov r8d, 0x2400
dec edi
mov word [rbx], si
mov dword [rbx + 4], r15d
test edi, edi
jg 0x140046801
mov r12, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x48]
mov r11, qword [rsp + 0x40]
mov r10d, 1
mov edx, dword [rsp + 0x38]
mov rsi, qword [rsp + 0x50]
jmp case.0x1400463a0.86
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
mov eax, 0xff41
add rcx, r11
and word [rcx + 8], ax
or word [rcx + 8], 1
jmp case.0x1400463a0.86
movsxd rax, dword [r12 + 8]
imul rbx, rax, 0x38
mov eax, 0x2400
add rbx, qword [r13 + 0x68]
test word [rbx + 8], ax
je 0x14004688f
mov rcx, rbx
call fcn.140046250
mov rbx, rax
jmp 0x140046898
mov eax, 4
mov word [rbx + 8], ax
mov rax, qword [rsp + 0x30]
xor r9d, r9d
mov rcx, rbx
mov qword [rsp + 0x20], r15
mov r8d, dword [rax + 4]
mov rdx, qword [rax + 0x10]
call fcn.14003b7b0
mov byte [rbx + 0xa], r14b
mov r12, qword [rsp + 0x30]
mov r10d, 1
mov r11, qword [rsp + 0x40]
jmp 0x140046b43
mov rbx, qword [rsp + 0x30]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
add rdi, qword [r13 + 0x80]
lea rcx, [rdi - 0x38]
call fcn.14003b660
test eax, eax
jne 0x14004bbdc
movsxd rax, dword [rbx + 8]
mov r11, qword [rsp + 0x40]
imul rbx, rax, 0x38
mov eax, 0x2400
add rbx, r11
test word [rbx + 8], ax
je 0x14004691b
mov rcx, rbx
call fcn.14003ae50
mov r11, qword [rsp + 0x40]
movups xmm0, xmmword [rdi - 0x38]
mov r12, qword [rsp + 0x30]
mov ecx, 0xebff
mov r10d, 1
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi - 0x28]
mov rdi, qword [rsp + 0x48]
movsd qword [rbx + 0x10], xmm1
movzx eax, word [rbx + 8]
and ax, cx
mov ecx, 0x840
or ax, cx
mov word [rbx + 8], ax
jmp 0x140046b43
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r11
add rbx, r11
nop word [rax + rax]
mov eax, 0x2400
test word [rbx + 8], ax
jne 0x140046991
cmp dword [rbx + 0x20], 0
je 0x14004699f
mov rcx, rbx
call fcn.14003ae90
mov r10d, 1
movups xmm0, xmmword [rdi]
mov eax, 0x1000
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [rbx + 0x20], xmm0
movsd xmm1, qword [rdi + 0x30]
movsd qword [rbx + 0x30], xmm1
mov word [rdi + 8], r10w
mov dword [rdi + 0x20], r15d
test word [rbx + 8], ax
je 0x1400469e7
mov rcx, rbx
call fcn.14003aab0
test eax, eax
jne 0x14004bb7b
lea r10d, [rax + 1]
add rdi, 0x38
add rbx, 0x38
sub esi, 1
jne 0x140046980
mov r12, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
jmp 0x140046b3e
mov rcx, qword [rsp + 0x30]
mov r14d, 0x1000
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r11
add rbx, r11
nop dword [rax]
mov r8d, r14d
mov rdx, rdi
mov rcx, rbx
call fcn.14003b6d0
test word [rbx + 8], r14w
je 0x140046a55
mov rcx, rbx
call fcn.14003aab0
test eax, eax
jne 0x14004bb7b
mov eax, esi
dec esi
test eax, eax
je 0x14004b797
add rbx, 0x38
add rdi, 0x38
jmp 0x140046a30
mov rcx, qword [rsp + 0x30]
mov r8d, 0x1000
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rdx, r11
add rcx, r11
call fcn.14003b6d0
jmp 0x1400468b9
movsxd rax, dword [r12 + 8]
imul rcx, rax, 0x38
movsxd rax, dword [r12 + 4]
imul rdx, rax, 0x38
add rcx, r11
mov rax, qword [rdx + r11]
mov edx, 0x2400
test word [rcx + 8], dx
je 0x140046acf
mov rdx, rax
call fcn.14003b420
mov r11, qword [rsp + 0x40]
mov r10d, 1
jmp 0x140046b43
mov qword [rcx], rax
mov eax, 4
mov word [rcx + 8], ax
jmp 0x140046b43
mov rbx, qword [rsp + 0x30]
movsxd rax, dword [rbx + 4]
imul r15, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
movsxd rax, dword [rbx + 0xc]
add r15, r11
imul rbx, rax, 0x38
movzx r14d, word [r15 + 8]
add rdi, r11
movzx eax, r14b
add rbx, r11
or al, byte [rdi + 8]
test al, 1
je 0x140046b7e
mov eax, 0x2400
test word [rbx + 8], ax
je 0x140046b65
mov rcx, rbx
call fcn.14003ae50
mov r12, qword [rsp + 0x30]
mov r10d, 1
mov rdi, qword [rsp + 0x48]
movzx r14d, byte [rbp + 0x170]
mov r11, qword [rsp + 0x40]
mov edx, dword [rsp + 0x38]
lea rcx, [0x140000000]
mov r13, qword [rbp + 0x160]
add r12, 0x18
mov r8d, dword [rbp - 0x74]
xor r15d, r15d
jmp 0x14004636c
mov r12, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x48]
movzx r14d, byte [rbp + 0x170]
mov word [rbx + 8], r10w
jmp case.0x1400463a0.86
test r14b, 0x12
jne 0x140046bb8
movzx r12d, byte [rbp + 0x170]
xor r8d, r8d
movzx edx, r12b
mov rcx, r15
call fcn.14003ab70
test eax, eax
jne 0x14004bb7b
movzx r14d, word [r15 + 8]
mov eax, 0xfffd
and r14w, ax
mov eax, 0x4000
jmp 0x140046bee
mov eax, 0x4000
test ax, r14w
je 0x140046be6
mov rcx, r15
call fcn.14003ab10
test eax, eax
jne 0x14004bb7b
movzx r14d, word [r15 + 8]
mov eax, 0xfffd
and r14w, ax
mov eax, 0x4000
movzx r12d, byte [rbp + 0x170]
movzx esi, word [rdi + 8]
test sil, 0x12
jne 0x140046c09
xor r8d, r8d
movzx edx, r12b
mov rcx, rdi
call fcn.14003ab70
jmp 0x140046c16
test ax, si
je 0x140046c2a
mov rcx, rdi
call fcn.14003ab10
test eax, eax
jne 0x14004bb7b
movzx esi, word [rdi + 8]
mov eax, 0xfffd
and si, ax
mov r10, qword [rsp + 0x48]
mov r13d, dword [r15 + 0xc]
add r13d, dword [rdi + 0xc]
movsxd r12, r13d
movsxd rax, dword [r10 + 0x7c]
cmp r12, rax
jg 0x14004bbd5
xor r8d, r8d
lea edx, [r13 + 3]
cmp rbx, rdi
mov rcx, rbx
sete r8b
call fcn.14003a820
test eax, eax
jne 0x14004be11
mov eax, 0x3e40
and word [rbx + 8], ax
or word [rbx + 8], 2
cmp rbx, rdi
je 0x140046c8d
movsxd r8, dword [rdi + 0xc]
mov rdx, qword [rdi + 0x10]
mov rcx, qword [rbx + 0x10]
call fcn.14011b4a0
mov word [rdi + 8], si
movsxd rcx, dword [rdi + 0xc]
add rcx, qword [rbx + 0x10]
movsxd r8, dword [r15 + 0xc]
mov rdx, qword [r15 + 0x10]
call fcn.14011b4a0
mov word [r15 + 8], r14w
mov rax, qword [rbx + 0x10]
movzx r14d, byte [rbp + 0x170]
mov byte [r12 + rax], 0
mov rax, qword [rbx + 0x10]
mov byte [rax + r12 + 1], 0
mov rax, qword [rbx + 0x10]
mov byte [rax + r12 + 2], 0
mov eax, 0x200
or word [rbx + 8], ax
mov dword [rbx + 0xc], r13d
mov byte [rbx + 0xa], r14b
jmp 0x140046828
movsxd rax, dword [r12 + 4]
imul rdi, rax, 0x38
add rdi, r11
mov rcx, rdi
call fcn.140046230
movzx ebx, ax
movsxd rax, dword [r12 + 8]
imul rsi, rax, 0x38
add rsi, qword [rsp + 0x40]
mov rcx, rsi
call fcn.140046230
mov r11, qword [rsp + 0x40]
movzx edx, ax
movsxd rax, dword [r12 + 0xc]
and dl, bl
imul r14, rax, 0x38
movzx eax, word [rsi + 8]
or ax, word [rdi + 8]
add r14, r11
test dl, 4
je 0x140046e32
movzx ecx, byte [r12]
mov rdx, qword [rsi]
mov r8, qword [rdi]
mov qword [rbp - 0x70], rdx
sub ecx, 0x67
je 0x140046dd4
sub ecx, 1
je 0x140046dc2
sub ecx, 1
je 0x140046db0
cmp ecx, 1
je 0x140046d84
test r8, r8
je 0x140046f3e
cmp r8, 0xffffffffffffffff
mov rax, rdx
mov ecx, 1
cqo
cmove r8, rcx
idiv r8
mov qword [rbp - 0x70], rdx
jmp 0x140046e15
test r8, r8
je 0x140046f3e
cmp r8, 0xffffffffffffffff
jne 0x140046da6
movabs rax, 0x8000000000000000
cmp rdx, rax
je 0x140046e3a
mov rax, rdx
cqo
idiv r8
jmp 0x140046e11
mov rdx, r8
lea rcx, [rbp - 0x70]
call fcn.14001baf0
test eax, eax
jne 0x140046e3a
jmp 0x140046e15
mov rdx, r8
lea rcx, [rbp - 0x70]
call fcn.14001ba80
test eax, eax
jne 0x140046e3a
jmp 0x140046e15
test r8, r8
js 0x140046df2
test rdx, rdx
jle 0x140046e0d
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, r8
jge 0x140046e0d
jmp 0x140046e3a
test rdx, rdx
jns 0x140046e0d
movabs rcx, 0x8000000000000001
lea rax, [r8 + 1]
sub rcx, rdx
cmp rcx, rax
jg 0x140046e3a
lea rax, [r8 + rdx]
mov qword [rbp - 0x70], rax
mov rax, qword [rbp - 0x70]
mov ecx, 0x3e40
mov qword [r14], rax
movzx eax, word [r14 + 8]
and ax, cx
or ax, 4
jmp 0x140046f0e
test al, 1
jne 0x140046f3e
mov rcx, rdi
call fcn.14003b060
mov rcx, rsi
movaps xmm6, xmm0
call fcn.14003b060
movzx edx, byte [r12]
sub edx, 0x67
je 0x140046ebe
sub edx, 1
je 0x140046eb8
sub edx, 1
je 0x140046eb2
cmp edx, 1
je 0x140046ea2
mov rcx, rdi
call fcn.14003b000
mov rcx, rsi
mov rbx, rax
call fcn.14003b000
mov qword [rbp - 0x70], rax
test rbx, rbx
je 0x140046f39
cmp rbx, 0xffffffffffffffff
mov ecx, 1
cqo
xorps xmm0, xmm0
cmove rbx, rcx
idiv rbx
cvtsi2sd xmm0, rdx
jmp 0x140046ec2
ucomisd xmm6, xmm7
je 0x140046f39
divsd xmm0, xmm6
jmp 0x140046ec2
mulsd xmm0, xmm6
jmp 0x140046ec2
subsd xmm0, xmm6
jmp 0x140046ec2
addsd xmm0, xmm6
movabs rcx, 0xfffffffffffff
movsd qword [rbp + 0x178], xmm0
mov rax, qword [rbp + 0x178]
movabs rdx, 0x7ff0000000000000
test rcx, rax
setne cl
and rax, rdx
cmp rax, rdx
sete al
test al, cl
jne 0x140046f39
movzx eax, word [r14 + 8]
mov ecx, 0x3e40
and ax, cx
movsd qword [r14], xmm0
or ax, 8
mov word [r14 + 8], ax
mov rdi, qword [rsp + 0x48]
mov r11, qword [rsp + 0x40]
mov r10d, 1
movzx r14d, byte [rbp + 0x170]
mov edx, dword [rsp + 0x38]
mov rsi, qword [rsp + 0x50]
jmp case.0x1400463a0.86
mov r11, qword [rsp + 0x40]
mov eax, 0x2400
test word [r14 + 8], ax
je 0x140046f54
mov rcx, r14
call fcn.14003ae50
jmp 0x140046f13
mov rdi, qword [rsp + 0x48]
mov r10d, 1
mov edx, dword [rsp + 0x38]
mov rsi, qword [rsp + 0x50]
mov word [r14 + 8], r10w
movzx r14d, byte [rbp + 0x170]
jmp case.0x1400463a0.86
movsxd rax, dword [r12 + 4]
test eax, eax
je case.0x1400463a0.86
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, r11
test word [rcx + 8], ax
je 0x140046fb0
xor edx, edx
call fcn.14003b420
mov r11, qword [rsp + 0x40]
mov r10d, 1
jmp 0x140046b43
mov eax, 4
mov qword [rcx], r15
mov word [rcx + 8], ax
jmp case.0x1400463a0.86
mov rcx, qword [rsp + 0x30]
mov r12, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
movsxd rax, dword [r12 + 0xc]
add rdi, r11
imul rsi, rax, 0x38
add rcx, r11
add rsi, r11
movzx eax, byte [rcx + 8]
or al, byte [rdi + 8]
test al, 1
je 0x140047024
mov eax, 0x2400
test word [rsi + 8], ax
je 0x140047010
mov rcx, rsi
call fcn.14003ae50
jmp 0x14004682d
mov rdi, qword [rsp + 0x48]
mov word [rsi + 8], r10w
mov rsi, qword [rsp + 0x50]
jmp case.0x1400463a0.86
call fcn.14003b000
mov rcx, rdi
mov rbx, rax
call fcn.14003b000
movzx edx, byte [r12]
mov rcx, rax
cmp dl, 0x63
jne 0x140047046
and rbx, rax
jmp 0x1400470ba
cmp dl, 0x64
jne 0x140047050
or rbx, rcx
jmp 0x1400470ba
test rcx, rcx
je 0x1400470ba
jns 0x14004706a
mov eax, reloc.WLDAP32.dll_Ordinal_203
sub al, dl
movzx edx, al
cmp rcx, 0xffffffffffffffc0
jle 0x140047070
neg rcx
cmp rcx, 0x40
jl 0x140047088
test rbx, rbx
jns 0x140047083
cmp dl, 0x65
je 0x140047083
mov rbx, 0xffffffffffffffff
jmp 0x1400470ba
mov rbx, r15
jmp 0x1400470ba
cmp dl, 0x65
jne 0x140047095
shl rbx, cl
mov r8, rbx
jmp 0x1400470b7
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x1400470b7
mov eax, 0x40
mov rdx, 0xffffffffffffffff
sub al, cl
movzx ecx, al
shl rdx, cl
or r8, rdx
mov rbx, r8
mov eax, 0x3e40
mov qword [rsi], rbx
and word [rsi + 8], ax
or word [rsi + 8], 4
jmp 0x14004682d
movsxd rax, dword [r12 + 4]
imul rbx, rax, 0x38
add rbx, r11
mov rcx, rbx
call fcn.14003b000
mov r11, qword [rsp + 0x40]
mov rcx, rax
mov qword [rbx], rax
mov r10d, 1
mov eax, 0x3e40
and word [rbx + 8], ax
or word [rbx + 8], 4
movsxd rax, dword [r12 + 8]
add rax, rcx
mov qword [rbx], rax
jmp 0x140046b43
movsxd rax, dword [r12 + 4]
imul rbx, rax, 0x38
add rbx, r11
movzx eax, word [rbx + 8]
test al, 4
jne 0x140047163
movzx r8d, r14b
mov dl, 0x43
mov rcx, rbx
call fcn.1400460d0
movzx eax, word [rbx + 8]
test al, 4
jne 0x140047154
cmp dword [r12 + 8], 0
je 0x14004b98b
mov r10d, 1
jmp 0x14004b895
mov r11, qword [rsp + 0x40]
mov r10d, 1
mov edx, dword [rsp + 0x38]
mov ecx, 0x3e40
and ax, cx
or ax, 4
mov word [rbx + 8], ax
jmp case.0x1400463a0.86
movsxd rax, dword [r12 + 4]
imul rbx, rax, 0x38
add rbx, r11
test byte [rbx + 8], 0x24
je case.0x1400463a0.86
mov rcx, rbx
call fcn.14003b060
mov r11, qword [rsp + 0x40]
mov eax, 0x3e40
and word [rbx + 8], ax
mov r10d, 1
or word [rbx + 8], 8
movsd qword [rbx], xmm0
jmp 0x140046b43
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
mov eax, 0x4000
add rbx, r11
test word [rbx + 8], ax
je 0x140047211
mov rcx, rbx
call fcn.14003ab10
mov r12, qword [rsp + 0x30]
movzx r8d, r14b
mov rcx, rbx
mov dword [rsp + 0x3c], eax
movzx edx, byte [r12 + 8]
call fcn.14003b2e0
cmp dword [rsp + 0x3c], 0
jne 0x14004bb1f
mov r11, qword [rsp + 0x40]
mov r10d, 1
jmp 0x140046b43
movzx edx, byte [rcx + 8]
movzx r8d, r14b
mov rcx, rbx
mov dword [rsp + 0x3c], r15d
call fcn.14003b2e0
jmp 0x1400468b9
mov rcx, qword [rsp + 0x30]
mov r12, rcx
movsxd rax, dword [rcx + 4]
lea r15, [rcx + 2]
imul rsi, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul r14, rax, 0x38
add rsi, r11
add r14, r11
movzx edi, word [rsi + 8]
movzx ebx, word [r14 + 8]
movzx edx, bx
or dx, di
test dl, 1
je 0x1400472fb
movzx eax, word [r15]
test al, al
jns 0x1400472a0
movzx eax, bl
and al, dil
test al, 1
je 0x14004728b
mov eax, 0x100
test ax, bx
jne 0x14004728b
movzx eax, byte [rcx]
xor edx, edx
jmp 0x1400474a3
movzx eax, bx
not ax
and eax, 1
lea edx, [rax*2 - 1]
jmp 0x14004747a
test al, 0x20
je 0x1400472dc
movsxd rax, dword [r12 + 8]
mov edx, r10d
mov rdi, qword [rsp + 0x48]
movzx r14d, byte [rbp + 0x170]
mov rsi, qword [rsp + 0x50]
imul rcx, rax, 0x38
mov eax, 0x3e40
mov dword [rsp + 0x38], edx
add rcx, r11
and word [rcx + 8], ax
or word [rcx + 8], 1
jmp case.0x1400463a0.86
mov rsi, qword [rsp + 0x50]
test al, 0x10
jne 0x14004b895
mov rdi, qword [rsp + 0x48]
movzx r14d, byte [rbp + 0x170]
jmp 0x140046b43
movzx eax, byte [r15]
and al, 0x47
cmp al, 0x43
jb 0x1400473fd
movzx ecx, bx
test dl, 2
je 0x140047345
movzx eax, dil
and al, 0x2e
cmp al, 2
jne 0x14004732a
xor edx, edx
mov rcx, rsi
call fcn.140045fa0
movzx ebx, word [r14 + 8]
movzx eax, bl
movzx ecx, bx
and al, 0x2e
cmp al, 2
jne 0x140047345
xor edx, edx
mov rcx, r14
call fcn.140045fa0
movzx ecx, word [r14 + 8]
movzx eax, byte [rsi + 8]
and al, cl
test al, 4
je 0x140047462
mov rax, qword [r14]
cmp rax, qword [rsi]
movzx eax, byte [r12]
jle 0x1400473ed
mov r10d, 1
mov edx, r10d
lea rcx, [0x140000000]
movzx ecx, byte [rax + rcx + 0x145864]
mov word [rsi + 8], di
mov word [r14 + 8], bx
movzx r9d, word [r15]
movzx r8d, cl
test r9b, 0x20
je 0x1400474bd
movsxd rax, dword [r12 + 8]
mov r11, qword [rsp + 0x40]
imul rcx, rax, 0x38
mov dword [rsp + 0x38], edx
add rcx, r11
test r9b, 8
je 0x1400473c5
xor eax, eax
cmp byte [r12], 0x35
sete al
cmp eax, r8d
je 0x1400475f8
mov rdi, qword [rsp + 0x48]
mov eax, 0x3e40
and word [rcx + 8], ax
or word [rcx + 8], 4
movzx r14d, byte [rbp + 0x170]
mov rsi, qword [rsp + 0x50]
mov qword [rcx], r8
jmp case.0x1400463a0.86
jge 0x140047284
mov edx, 0xffffffff
jmp 0x140047483
cmp al, 0x42
jne 0x140047462
movzx r13d, byte [rbp + 0x170]
test dil, 2
jne 0x140047436
test dil, 0x2c
je 0x140047436
mov r8b, 1
movzx edx, r13b
mov rcx, rsi
call fcn.14003ab70
movzx eax, di
mov ecx, 0x3e40
xor ax, word [rsi + 8]
and ax, cx
xor di, ax
test bl, 2
jne 0x140047462
test bl, 0x2c
je 0x140047462
mov r8b, 1
movzx edx, r13b
mov rcx, r14
call fcn.14003ab70
movzx eax, word [r14 + 8]
mov ecx, 0x3e40
xor ax, bx
and ax, cx
xor bx, ax
mov r8, qword [r12 + 0x10]
mov rdx, rsi
mov rcx, r14
call fcn.140041980
mov edx, eax
mov r10d, 1
movzx eax, byte [r12]
test edx, edx
jns 0x14004749d
lea rcx, [0x140000000]
mov r10d, 1
movzx ecx, byte [rax + rcx + 0x149480]
jmp 0x14004737c
jne 0x14004736d
lea rcx, [0x140000000]
mov r10d, 1
movzx ecx, byte [rax + rcx + 0x14bec4]
jmp 0x14004737c
mov rsi, qword [rsp + 0x50]
test cl, cl
jne 0x14004b895
jmp 0x140046b31
test edx, edx
jne 0x14004b895
jmp case.0x1400463a0.86
mov rax, qword [rsp + 0x30]
test byte [rax + 2], 1
jne 0x1400474ec
mov r13, r15
jmp 0x1400474f4
mov r13, qword [rax - 8]
add r13, 4
mov rdx, qword [rax + 0x10]
mov edi, r15d
mov r8d, dword [rax + 4]
mov rbx, r15
mov r9d, dword [rax + 8]
movsxd rax, dword [rax + 0xc]
mov qword [rbp - 0x20], rdx
mov dword [rbp + 0x178], r8d
mov dword [rsp + 0x68], r9d
mov qword [rbp + 0x18], rax
test rax, rax
jle 0x140047a99
lea r14, [rdx + 0x20]
nop dword [rax + rax]
test r13, r13
je 0x14004753c
mov ecx, dword [r13 + rbx*4]
jmp 0x14004753e
mov ecx, edi
mov rax, qword [rdx + 0x18]
movzx esi, byte [rbx + rax]
lea eax, [rcx + r9]
movsxd r12, eax
and esi, 1
lea eax, [rcx + r8]
mov r8, qword [r14]
movsxd r15, eax
imul rcx, r15, 0x38
imul rdx, r12, 0x38
add rcx, r11
add rdx, r11
call fcn.140041980
mov r11, qword [rsp + 0x40]
mov edx, eax
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x1400475bd
mov rdx, qword [rbp - 0x20]
inc edi
mov r8d, dword [rbp + 0x178]
inc rbx
mov r9d, dword [rsp + 0x68]
add r14, 8
cmp rbx, qword [rbp + 0x18]
jl 0x140047530
mov r12, qword [rsp + 0x30]
lea r10d, [rax + 1]
mov rdi, qword [rsp + 0x48]
mov edx, eax
movzx r14d, byte [rbp + 0x170]
mov rsi, qword [rsp + 0x50]
jmp case.0x1400463a0.86
mov rax, qword [rbp - 0x20]
mov rax, qword [rax + 0x18]
test byte [rbx + rax], 2
je 0x1400475e9
imul rax, r15, 0x38
test byte [rax + r11 + 8], 1
jne 0x1400475e3
imul rax, r12, 0x38
test byte [rax + r11 + 8], 1
je 0x1400475e9
neg edx
mov dword [rsp + 0x38], edx
mov r12, qword [rsp + 0x30]
test esi, esi
je 0x1400475f8
neg edx
mov dword [rsp + 0x38], edx
mov rdi, qword [rsp + 0x48]
mov r10d, 1
movzx r14d, byte [rbp + 0x170]
mov rsi, qword [rsp + 0x50]
jmp case.0x1400463a0.86
test edx, edx
jns 0x14004762f
mov eax, dword [r12 + 4]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [rsi + rcx*8]
jmp case.0x1400463a0.86
jne 0x140047647
mov eax, dword [r12 + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [rsi + rcx*8]
jmp case.0x1400463a0.86
mov eax, dword [r12 + 0xc]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [rsi + rcx*8]
jmp case.0x1400463a0.86
movsxd rax, dword [r12 + 4]
mov r15d, 2
imul rcx, rax, 0x38
mov edx, r15d
add rcx, r11
call fcn.14003b090
movsxd rcx, dword [r12 + 8]
mov edx, r15d
imul rcx, rcx, 0x38
mov ebx, eax
add rcx, qword [rsp + 0x40]
call fcn.14003b090
mov rdx, qword [rsp + 0x30]
lea rcx, [0x140000000]
lea eax, [rax + rbx*2]
add eax, ebx
cmp byte [rdx], 0x2c
cdqe
jne 0x1400476b2
movzx r8d, byte [rax + rcx + 0x1484c0]
jmp 0x1400476bb
movzx r8d, byte [rax + rcx + 0x14c718]
movsxd rax, dword [rdx + 0xc]
mov r11, qword [rsp + 0x40]
imul rdx, rax, 0x38
mov eax, 0x3e40
movzx ecx, word [rdx + r11 + 8]
and cx, ax
cmp r8b, r15b
jne 0x1400476f5
mov r12, qword [rsp + 0x30]
or cx, 1
mov word [rdx + r11 + 8], cx
mov r10d, 1
jmp 0x140046b43
mov r12, qword [rsp + 0x30]
or cx, 4
movzx eax, r8b
mov r10d, 1
mov qword [rdx + r11], rax
mov word [rdx + r11 + 8], cx
jmp 0x140046b43
mov rbx, qword [rsp + 0x30]
movsxd rax, dword [rbx + 4]
mov edx, dword [rbx + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.14003b090
movsxd rdx, dword [rbx + 0x10]
mov r11, qword [rsp + 0x40]
movsxd rcx, eax
mov rax, rbx
movsxd rax, dword [rbx + 8]
xor rdx, rcx
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, r11
test word [rcx + 8], ax
je 0x140047761
call fcn.14003b420
jmp 0x1400468b9
mov r12, qword [rsp + 0x30]
mov eax, 4
mov qword [rcx], rdx
mov word [rcx + 8], ax
lea r10d, [rax - 3]
jmp 0x140046b43
mov rbx, qword [rsp + 0x30]
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rcx, r11
add rbx, r11
test byte [rcx + 8], 1
jne 0x1400477d7
xor edx, edx
call fcn.14003b090
test eax, eax
mov rcx, r15
mov eax, 0x2400
sete cl
test word [rbx + 8], ax
je 0x1400477c6
mov rdx, rcx
mov rcx, rbx
call fcn.14003b420
jmp 0x1400468b9
mov eax, 4
mov qword [rbx], rcx
mov word [rbx + 8], ax
jmp 0x1400468b9
mov eax, 0x2400
test word [rbx + 8], ax
je 0x1400477ef
mov rcx, rbx
call fcn.14003ae50
jmp 0x1400468b9
mov word [rbx + 8], r10w
mov r12, qword [rsp + 0x30]
jmp case.0x1400463a0.86
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rdi, r11
mov eax, 0x2400
add rbx, r11
test word [rbx + 8], ax
je 0x140047837
mov rcx, rbx
call fcn.14003ae50
mov r11, qword [rsp + 0x40]
mov edx, dword [rsp + 0x38]
jmp 0x14004783c
mov word [rbx + 8], r10w
test byte [rdi + 8], 1
jne 0x14004b78d
mov eax, 4
mov rcx, rdi
mov word [rbx + 8], ax
call fcn.14003b000
mov rdi, qword [rsp + 0x48]
not rax
mov qword [rbx], rax
jmp 0x1400468b9
mov rcx, qword [r13 + 0x100]
test rcx, rcx
je 0x1400478c9
mov r8, qword [rcx + 0x30]
movabs rdx, 0xaaaaaaaaaaaaaaab
mov rax, r12
sub rax, qword [r13 + 0x88]
sar rax, 3
imul rax, rdx
mov edx, eax
and eax, 7
shr rdx, 3
movzx ecx, byte [rdx + r8]
bt ecx, eax
jb 0x14004b895
bts ecx, eax
mov byte [rdx + r8], cl
mov rcx, qword [r13 + 0x88]
mov edx, dword [rsp + 0x38]
mov eax, dword [rcx + 4]
mov dword [r12 + 4], eax
jmp case.0x1400463a0.86
mov rcx, qword [r13 + 0x88]
mov eax, dword [r12 + 4]
cmp dword [rcx + 4], eax
je 0x14004b895
mov eax, dword [rcx + 4]
mov dword [r12 + 4], eax
jmp case.0x1400463a0.86
movsxd rax, dword [r12 + 4]
mov edx, dword [r12 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.14003b090
mov r10d, 1
test eax, eax
jne 0x14004b895
jmp 0x140046b3e
mov rax, qword [rsp + 0x30]
mov edx, r15d
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 4]
sete dl
imul rcx, rax, 0x38
add rcx, r11
call fcn.14003b090
mov r12, qword [rsp + 0x30]
mov r10d, 1
test eax, eax
je 0x14004b895
jmp 0x140046b3e
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 8], 1
jne 0x14004b895
jmp case.0x1400463a0.86
movsxd rax, dword [r12 + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 8], 1
je 0x14004b895
jmp case.0x1400463a0.86
movsxd rcx, dword [r12 + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 2], 0
je case.0x1400463a0.86
movsxd rax, dword [r12 + 0xc]
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, r11
test word [rcx + 8], ax
je 0x1400479bd
call fcn.14003ae50
mov r10d, 1
jmp 0x14004b895
mov word [rcx + 8], r10w
jmp 0x14004b895
movsxd rcx, dword [r12 + 4]
lea rdx, [rsp + 0x70]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov qword [rsp + 0x60], rcx
lea rcx, [rsp + 0x60]
mov eax, dword [r12 + 8]
mov dword [rsp + 0x70], eax
call fcn.140040f00
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be31
mov r10, qword [rsp + 0x60]
mov rax, qword [rsp + 0x30]
mov rdi, qword [rbp + 0x160]
mov r11, qword [rsp + 0x40]
mov r12, qword [r10 + 0x60]
movsxd rax, dword [rax + 0xc]
imul r13, rax, 0x38
mov eax, dword [rdi + 0x30]
add r13, r11
cmp dword [r10 + 0x28], eax
je 0x140047b69
cmp byte [r10 + 2], 0
je 0x140047aa8
cmp byte [r10], 3
jne 0x140047a70
movsxd rax, dword [r10 + 0x2c]
imul rdx, rax, 0x38
mov ecx, dword [rdx + r11 + 0xc]
mov dword [r10 + 0x74], ecx
mov rax, qword [rsp + 0x60]
mov dword [rax + 0x70], ecx
mov rcx, qword [rdx + r11 + 0x10]
mov rax, qword [rsp + 0x60]
mov qword [rax + 0x68], rcx
mov rcx, qword [rsp + 0x60]
jmp 0x140047af0
mov eax, 0x2400
test word [r13 + 8], ax
je 0x140047a8e
mov rcx, r13
call fcn.14003ae50
mov rdi, qword [rsp + 0x48]
jmp 0x1400468b9
mov r10d, 1
mov word [r13 + 8], r10w
mov r12, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x48]
jmp 0x140046b43
mov rbx, qword [r10 + 0x38]
mov rcx, rbx
call fcn.140030440
mov edx, dword [rbx + 0x40]
mov rcx, rbx
mov rax, qword [rsp + 0x60]
mov dword [rax + 0x70], edx
mov rdx, qword [rsp + 0x60]
add rdx, 0x74
call fcn.140030bb0
mov rcx, qword [rsp + 0x60]
mov r10, qword [rsp + 0x48]
mov qword [rcx + 0x68], rax
mov rcx, qword [rsp + 0x60]
mov eax, dword [r10 + 0x7c]
cmp dword [rcx + 0x70], eax
ja 0x14004bbd5
mov eax, dword [rdi + 0x30]
mov dword [rcx + 0x28], eax
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + 0x68]
movzx eax, byte [rcx]
cmp al, 0x80
jae 0x140047b0e
mov dword [r12], eax
mov al, 1
jmp 0x140047b16
mov rdx, r12
call fcn.14001b8e0
movzx ecx, al
mov rax, qword [rsp + 0x60]
mov dword [rax + 0x48], ecx
mov rax, qword [rsp + 0x60]
mov word [rax + 0x52], r15w
mov r10, qword [rsp + 0x60]
mov eax, dword [r12]
cmp dword [r10 + 0x74], eax
jae 0x140047c2b
mov qword [r10 + 0x68], r15
mov rax, qword [rsp + 0x60]
mov dword [rax + 0x74], r15d
mov eax, dword [r12]
cmp eax, 0x18003
ja 0x140047d45
mov r10, qword [rsp + 0x60]
cmp eax, dword [r10 + 0x70]
ja 0x140047d45
movzx eax, word [r10 + 0x52]
movsxd r8, dword [rsp + 0x70]
cmp eax, r8d
jg 0x140047dfa
mov eax, dword [r12]
cmp dword [r10 + 0x48], eax
jae 0x140047d72
mov rcx, qword [r10 + 0x68]
mov qword [rbp + 0x178], rcx
test rcx, rcx
jne 0x140047be2
xorps xmm0, xmm0
lea r9, [rbp + 0x40]
movups xmmword [rbp + 0x40], xmm0
xor eax, eax
xor edx, edx
movups xmmword [rbp + 0x50], xmm0
mov qword [rbp + 0x70], rax
movups xmmword [rbp + 0x60], xmm0
mov r8d, dword [r12]
mov rcx, qword [r10 + 0x38]
call fcn.14003bba0
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x14004be25
mov rcx, qword [rbp + 0x50]
mov eax, dword [r12]
mov r10, qword [rsp + 0x60]
mov qword [rbp + 0x178], rcx
movzx r14d, word [r10 + 0x52]
mov ebx, dword [r10 + 0x48]
mov edi, r14d
add rbx, rcx
mov r15d, eax
add r15, rcx
mov ecx, 0x80
mov esi, dword [r12 + r14*4]
movzx eax, byte [rbx]
mov dword [rsp + 0x58], eax
mov dword [r10 + rdi*4 + 0x78], eax
mov eax, dword [rsp + 0x58]
cmp eax, ecx
jae 0x140047c31
movzx eax, al
lea rdx, [0x140000000]
inc rbx
movzx eax, byte [rax + rdx + 0x148a30]
jmp 0x140047c74
mov rcx, qword [r10 + 0x68]
jmp 0x140047bdb
lea rdx, [rsp + 0x58]
mov rcx, rbx
call fcn.14001b8e0
mov rcx, qword [rsp + 0x60]
movzx eax, al
add rbx, rax
mov eax, dword [rsp + 0x58]
mov dword [rcx + rdi*4 + 0x78], eax
mov ecx, 0x80
mov eax, dword [rsp + 0x58]
cmp eax, ecx
jb 0x140047c65
add eax, 0xfffffff4
shr eax, 1
jmp 0x140047c74
lea rdx, [0x140000000]
movzx eax, byte [rax + rdx + 0x148a30]
inc r14d
add rsi, rax
movsxd rdi, r14d
mov dword [r12 + rdi*4], esi
mov r10, qword [rsp + 0x60]
cmp r14d, dword [rsp + 0x70]
jg 0x140047c98
cmp rbx, r15
jb 0x140047c00
jmp 0x140047c9d
cmp rbx, r15
jb 0x140047cab
cmp rbx, r15
ja 0x140047cb4
mov eax, dword [r10 + 0x70]
cmp rsi, rax
jne 0x140047cb4
mov eax, dword [r10 + 0x70]
cmp rsi, rax
jbe 0x140047cc1
cmp dword [r12], 0
jne 0x140047d17
xor r14d, r14d
mov rbx, r15
sub ebx, dword [rbp + 0x178]
mov word [r10 + 0x52], r14w
mov rax, qword [rsp + 0x60]
mov dword [rax + 0x48], ebx
mov r10, qword [rsp + 0x60]
cmp qword [r10 + 0x68], 0
jne 0x140047cff
mov eax, 0x2400
test word [rbp + 0x48], ax
jne 0x140047cf1
cmp dword [rbp + 0x60], 0
je 0x140047cff
lea rcx, [rbp + 0x40]
call fcn.14003ae90
mov r10, qword [rsp + 0x60]
mov r8d, dword [rsp + 0x70]
mov edx, dword [rsp + 0x58]
movzx r14d, byte [rbp + 0x170]
mov rsi, qword [rsp + 0x50]
jmp 0x140047d79
cmp qword [r10 + 0x68], 0
jne 0x140047d38
mov eax, 0x2400
test word [rbp + 0x48], ax
jne 0x140047d2f
cmp dword [rbp + 0x60], 0
je 0x140047d38
lea rcx, [rbp + 0x40]
call fcn.14003ae90
movzx r14d, byte [rbp + 0x170]
mov rsi, qword [rsp + 0x50]
mov eax, dword [rsi + 0xc]
test eax, eax
jle 0x14004b996
mov rdi, qword [rsp + 0x48]
dec eax
mov r11, qword [rsp + 0x40]
mov r10d, 1
movsxd rcx, eax
lea rax, [rcx + rcx*2]
lea r12, [rsi + rax*8]
jmp 0x140046b43
mov edx, r15d
mov dword [rsp + 0x58], edx
movzx eax, word [r10 + 0x52]
cmp eax, r8d
jg 0x140047e03
mov r12, qword [rsp + 0x30]
cmp byte [r12 + 1], 0xf5
jne 0x140047dbc
mov rdx, qword [r12 + 0x10]
mov r8d, 0x800
mov rcx, r13
call fcn.14003b6d0
mov r11, qword [rsp + 0x40]
mov r10d, 1
mov rdi, qword [rsp + 0x48]
jmp 0x140046b43
mov eax, 0x2400
test word [r13 + 8], ax
je 0x140047de5
mov rcx, r13
call fcn.14003ae50
mov r11, qword [rsp + 0x40]
mov r10d, 1
mov rdi, qword [rsp + 0x48]
jmp 0x140046b43
mov rdi, qword [rsp + 0x48]
mov r10d, 1
mov word [r13 + 8], r10w
jmp 0x140046b3e
mov edx, dword [r10 + r8*4 + 0x78]
mov dword [rsp + 0x58], edx
mov eax, 0x2400
test word [r13 + 8], ax
je 0x140047e25
mov rcx, r13
call fcn.14003ae50
mov r10, qword [rsp + 0x60]
mov r8d, dword [rsp + 0x70]
mov edx, dword [rsp + 0x58]
lea eax, [r8 + 1]
movsxd rcx, eax
mov eax, dword [r12 + rcx*4]
cmp dword [r10 + 0x74], eax
jb 0x140047f07
movsxd rax, r8d
mov edi, dword [r12 + rax*4]
add rdi, qword [r10 + 0x68]
cmp edx, 0xc
jae 0x140047e5f
mov r8, r13
mov rcx, rdi
call fcn.140040fd0
mov rdi, qword [rsp + 0x48]
jmp 0x1400468b9
lea ebx, [rdx - 0xc]
mov byte [r13 + 0xa], r14b
shr ebx, 1
mov dword [r13 + 0xc], ebx
lea edx, [rbx + 2]
cmp dword [r13 + 0x20], edx
jge 0x140047e98
mov ecx, 1
xor r8d, r8d
mov word [r13 + 8], cx
mov rcx, r13
call fcn.14003a820
test eax, eax
jne 0x14004be11
mov rcx, qword [r13 + 0x10]
jmp 0x140047ea0
mov rcx, qword [r13 + 0x18]
mov qword [r13 + 0x10], rcx
mov r8d, ebx
mov rdx, rdi
call fcn.14011b4a0
mov rax, qword [r13 + 0x10]
lea rcx, [0x140000000]
mov r12, qword [rsp + 0x30]
mov r10d, 1
mov rdi, qword [rsp + 0x48]
mov r11, qword [rsp + 0x40]
mov edx, dword [rsp + 0x38]
mov byte [rbx + rax], 0
mov rax, qword [r13 + 0x10]
mov byte [rax + rbx + 1], 0
mov eax, dword [rsp + 0x58]
and eax, 1
movzx eax, word [rcx + rax*2 + 0x144014]
mov word [r13 + 8], ax
mov r13, qword [rbp + 0x160]
add r12, 0x18
mov r8d, dword [rbp - 0x74]
xor r15d, r15d
jmp 0x14004636c
mov rax, qword [rsp + 0x30]
mov byte [r13 + 0xa], r14b
mov edx, dword [rsp + 0x58]
movzx eax, word [rax + 2]
test al, 0xc0
je 0x140047f2a
cmp edx, 0xc
jb 0x140047f26
test dl, 1
je 0x140047f51
test al, al
js 0x140047f51
mov eax, 0x80
cmp edx, eax
jb 0x140047f3c
lea r8d, [rdx - 0xc]
shr r8d, 1
jmp 0x140047f4c
lea rcx, [0x140000000]
movzx r8d, byte [rdx + rcx + 0x148a30]
test r8d, r8d
jne 0x140047f6a
mov r8, r13
lea rcx, [0x1401b2a40]
call fcn.140040fd0
mov rdi, qword [rsp + 0x48]
jmp 0x1400468b9
movsxd rax, dword [rsp + 0x70]
mov r9, r13
mov rcx, qword [rsp + 0x60]
mov edx, dword [r12 + rax*4]
mov rcx, qword [rcx + 0x38]
call fcn.14003bba0
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be2a
mov edx, dword [rsp + 0x58]
mov r8, r13
mov rcx, qword [r13 + 0x10]
call fcn.140040fd0
mov rdi, qword [rsp + 0x48]
mov eax, 0xefff
and word [r13 + 8], ax
jmp 0x1400468b9
mov rax, qword [rsp + 0x30]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
movzx eax, byte [rdi]
add rbx, r11
nop
movzx r8d, r14b
movzx edx, al
mov rcx, rbx
call fcn.1400460d0
cmp byte [rdi], 0x45
jne 0x140048031
movzx ecx, word [rbx + 8]
test cl, 4
je 0x140048031
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
mov eax, 0xfffb
ja 0x14004801a
and cx, ax
or cx, 0x20
jmp 0x14004802d
xorps xmm0, xmm0
and cx, ax
cvtsi2sd xmm0, rdx
or cx, 8
movsd qword [rbx], xmm0
mov word [rbx + 8], cx
movzx eax, byte [rdi + 1]
inc rdi
test al, al
je 0x14004b797
add rbx, 0x38
jmp 0x140047fd0
mov rcx, qword [rsp + 0x30]
xor edx, edx
xor r12d, r12d
mov qword [rsp + 0x68], rdx
movsxd rax, dword [rcx + 4]
mov rdi, qword [rcx + 0x10]
imul r13, rax, 0x38
mov eax, dword [rcx + 8]
dec eax
add r13, r11
cdqe
imul rsi, rax, 0x38
mov rax, qword [rbp + 0x160]
add rsi, r13
mov qword [rbp - 0x20], rsi
movzx r9d, byte [rax + 0xc3]
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
mov byte [rbp + 0x178], r9b
add rcx, r11
mov qword [rbp + 0x18], rcx
test rdi, rdi
je 0x1400480fc
movzx eax, byte [rdi]
lea rbx, [r13 + 8]
mov esi, 0xfffb
nop dword [rax]
lea rcx, [rbx - 8]
movzx r8d, r14b
movzx edx, al
call fcn.1400460d0
cmp byte [rdi], 0x45
jne 0x1400480d6
movzx eax, word [rbx]
test al, 4
je 0x1400480d6
and ax, si
or ax, 0x20
mov word [rbx], ax
movzx eax, byte [rdi + 1]
inc rdi
add rbx, 0x38
test al, al
jne 0x1400480b0
movzx r9d, byte [rbp + 0x178]
mov r10d, 1
mov rdx, qword [rsp + 0x68]
mov rsi, qword [rbp - 0x20]
lea r14, [rsi + 0x24]
movzx ecx, word [r14 - 0x1c]
test cl, 1
je 0x140048125
mov eax, 0x4000
and cx, ax
neg cx
sbb eax, eax
and eax, 0xa
mov dword [r14], eax
inc r12d
jmp 0x1400482a1
test cl, 0x24
je 0x140048220
mov r8, qword [r14 - 0x24]
mov rdx, r8
test r8, r8
jns 0x14004813d
not rdx
inc r12d
cmp rdx, 0x7f
ja 0x140048170
mov rax, r8
and eax, 1
cmp rax, r8
jne 0x140048162
cmp r9b, 4
jb 0x140048162
lea eax, [rdx + 8]
mov dword [r14], eax
jmp 0x1400482a1
mov eax, r10d
inc r15
mov dword [r14], eax
jmp 0x1400482a1
cmp rdx, 0x7fff
ja 0x14004818a
mov eax, 2
add r15, 2
mov dword [r14], eax
jmp 0x1400482a1
cmp rdx, 0x7fffff
ja 0x1400481a4
mov eax, 3
add r15, 3
mov dword [r14], eax
jmp 0x1400482a1
cmp rdx, 0x7fffffff
ja 0x1400481be
mov eax, 4
add r15, 4
mov dword [r14], eax
jmp 0x1400482a1
movabs rax, 0x7fffffffffff
cmp rdx, rax
ja 0x1400481de
mov eax, 5
add r15, 6
mov dword [r14], eax
jmp 0x1400482a1
add r15, 8
test cl, 0x20
je 0x140048213
mov eax, 0xffdf
xorps xmm0, xmm0
and cx, ax
mov eax, 7
cvtsi2sd xmm0, r8
or cx, 8
mov word [r14 - 0x1c], cx
movsd qword [r14 - 0x24], xmm0
mov dword [r14], eax
jmp 0x1400482a1
mov eax, 6
mov dword [r14], eax
jmp 0x1400482a1
test cl, 8
je 0x140048236
inc r12d
mov eax, 7
add r15, 8
mov dword [r14], eax
jmp 0x1400482a1
mov edi, dword [r14 - 0x18]
mov eax, ecx
shr eax, 1
and eax, 1
bt cx, 0xe
lea esi, [rdi + 6]
lea esi, [rax + rsi*2]
jae 0x14004827d
movsxd rax, dword [r14 - 0x24]
lea esi, [rsi + rax*2]
test r15, r15
je 0x140048275
lea rcx, [r14 - 0x24]
call fcn.14003ab10
test eax, eax
jne 0x14004be11
add edi, dword [r14 - 0x24]
lea r10d, [rax + 1]
jmp 0x14004827d
add rdx, rax
mov qword [rsp + 0x68], rdx
mov eax, edi
mov ecx, r10d
add r15, rax
mov eax, esi
shr rax, 7
test rax, rax
je 0x14004829b
inc ecx
shr rax, 7
test rax, rax
jne 0x140048290
add r12d, ecx
mov dword [r14], esi
lea rax, [r14 - 0x24]
cmp rax, r13
je 0x1400482c0
movzx r9d, byte [rbp + 0x178]
sub r14, 0x38
mov rdx, qword [rsp + 0x68]
jmp 0x140048100
cmp r12d, 0x7e
jle 0x140048301
movsxd rax, r12d
mov edx, r10d
shr rax, 7
test rax, rax
je 0x1400482e0
inc edx
shr rax, 7
test rax, rax
jne 0x1400482d5
add r12d, edx
mov ecx, r10d
movsxd rax, r12d
shr rax, 7
test rax, rax
je 0x1400482fd
inc ecx
shr rax, 7
test rax, rax
jne 0x1400482f2
cmp edx, ecx
jge 0x140048304
inc r12d
mov rsi, qword [rbp + 0x18]
mov rdi, qword [rsp + 0x68]
movsxd r14, r12d
movsxd rdx, dword [rsi + 0x20]
lea rbx, [r14 + r15]
lea rcx, [rbx + rdi]
cmp rcx, rdx
jle 0x140048358
mov r10, qword [rsp + 0x48]
movsxd rax, dword [r10 + 0x7c]
cmp rcx, rax
jg 0x14004bbd5
cmp edx, ebx
jge 0x140048352
xor r8d, r8d
mov edx, ebx
mov rcx, rsi
call fcn.14003a820
test eax, eax
jne 0x14004be11
lea r10d, [rax + 1]
jmp 0x140048360
mov r10d, 1
mov rax, qword [rsi + 0x18]
mov qword [rsi + 0x10], rax
mov dword [rsi + 0xc], ebx
mov eax, 0x10
mov word [rsi + 8], ax
test rdi, rdi
je 0x14004837c
mov eax, 0x4010
mov dword [rsi], edi
mov word [rsi + 8], ax
mov rdi, qword [rsi + 0x10]
mov ecx, 0x80
lea rsi, [r14 + rdi]
cmp r12d, ecx
jae 0x140048396
mov byte [rdi], r12b
mov eax, r10d
jmp 0x1400483aa
mov rdx, r14
mov rcx, rdi
call fcn.14001b6b0
mov ecx, 0x80
lea r10d, [rcx - 0x7f]
mov r14, qword [rbp - 0x20]
movzx eax, al
add rdi, rax
mov ebx, dword [r13 + 0x24]
cmp ebx, ecx
jae 0x1400483c3
mov byte [rdi], bl
mov eax, r10d
jmp 0x1400483ce
mov rdx, rbx
mov rcx, rdi
call fcn.14001b6b0
movzx eax, al
mov r8d, ebx
mov rdx, r13
mov rcx, rsi
add rdi, rax
call fcn.140040f50
mov eax, eax
mov ecx, 0x80
add rsi, rax
add r13, 0x38
lea r10d, [rcx - 0x7f]
cmp r13, r14
jbe 0x1400483b4
mov r12, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x48]
mov r11, qword [rsp + 0x40]
movzx r14d, byte [rbp + 0x170]
mov edx, dword [rsp + 0x38]
mov rsi, qword [rsp + 0x50]
jmp case.0x1400463a0.86
mov rax, qword [rsp + 0x30]
lea rdx, [rbp + 0x20]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rcx, qword [rcx + 0x38]
mov qword [rbp + 0x20], r15
call fcn.140037f50
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be31
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, qword [r13 + 0x68]
test word [rcx + 8], ax
je 0x14004847f
call fcn.140046250
mov rcx, rax
mov rax, qword [rbp + 0x20]
mov qword [rcx], rax
jmp 0x1400468b9
mov eax, 4
mov word [rcx + 8], ax
mov rax, qword [rbp + 0x20]
mov qword [rcx], rax
jmp 0x1400468b9
mov rax, qword [rsp + 0x30]
mov r14d, dword [rax + 4]
mov rdi, qword [rax + 0x10]
mov dword [rbp + 0x178], r14d
test r14d, r14d
jne 0x140048586
mov rax, qword [rsp + 0x48]
cmp dword [rax + 0xd0], r14d
jg 0x14004b9cb
test rdi, rdi
jne 0x1400484cd
mov ebx, r15d
jmp 0x1400484e3
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rdi + rbx], 0
jne 0x1400484d4
and ebx, 0x3fffffff
mov r8d, dword [rax + 0x280]
xor edx, edx
add r8d, dword [rax + 0x27c]
mov rcx, rax
call fcn.1400a11f0
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be31
mov rcx, qword [rsp + 0x48]
mov edx, ebx
add rdx, 0x21
call fcn.1400174f0
mov rsi, rax
test rax, rax
je 0x14004b797
lea rcx, [rax + 0x20]
mov rdx, rdi
lea r8d, [rbx + 1]
mov qword [rax], rcx
call fcn.14011b4a0
mov rdi, qword [rsp + 0x48]
cmp byte [rdi + 0x5f], r12b
je 0x14004854e
mov byte [rdi + 0x5f], r12b
mov byte [rdi + 0x67], 1
jmp 0x140048554
inc dword [rdi + 0x27c]
mov rax, qword [rdi + 0x270]
mov r12, qword [rsp + 0x30]
mov qword [rsi + 0x18], rax
mov rax, qword [rdi + 0x288]
mov qword [rdi + 0x270], rsi
mov qword [rsi + 8], rax
mov rax, qword [rdi + 0x290]
mov qword [rsi + 0x10], rax
jmp 0x140046f18
mov r10, qword [rsp + 0x48]
mov rsi, qword [r10 + 0x270]
test rsi, rsi
je 0x1400485bb
nop word [rax + rax]
mov rcx, qword [rsi]
mov rdx, rdi
call fcn.14001aba0
test eax, eax
je 0x1400485d8
mov rsi, qword [rsi + 0x18]
inc r15d
test rsi, rsi
jne 0x1400485a0
mov r8, rdi
lea rdx, str.no_such_savepoint:__s
mov rcx, r13
call fcn.14003c650
mov r12d, 1
jmp 0x14004be31
mov rdi, qword [rsp + 0x48]
cmp dword [rdi + 0xd0], 0
jle 0x1400485f0
cmp r14d, 1
je 0x14004b9e5
cmp qword [rsi + 0x18], 0
jne 0x140048648
cmp byte [rdi + 0x67], 0
je 0x140048648
mov eax, 1
mov r13d, eax
cmp r14d, eax
jne 0x14004864b
mov rbx, qword [rbp + 0x160]
mov edx, eax
mov rcx, rbx
call fcn.140040080
test eax, eax
jne 0x14004bf04
mov rcx, rbx
mov byte [rdi + 0x5f], r13b
call fcn.1400400d0
cmp eax, 5
je 0x14004b9ff
mov byte [rdi + 0x67], 0
mov ecx, dword [rbx + 0x38]
mov dword [rsp + 0x3c], ecx
jmp 0x140048753
xor r13d, r13d
mov eax, dword [rdi + 0x27c]
sub eax, r15d
lea r15d, [rax - 1]
mov eax, dword [rdi + 0x28]
cmp r14d, 2
jne 0x1400486c2
mov r12d, dword [rdi + 0x2c]
xor edi, edi
and r12d, 1
test eax, eax
jle 0x1400486c5
mov r14d, r12d
xor r14d, 1
xor ebx, ebx
nop dword [rax + rax]
mov r10, qword [rsp + 0x48]
mov r8d, r14d
mov edx, 0x204
mov rcx, qword [r10 + 0x20]
mov rcx, qword [rcx + rbx + 8]
call fcn.14002fdd0
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x14004be25
mov rax, qword [rsp + 0x48]
inc edi
add rbx, 0x20
mov eax, dword [rax + 0x28]
cmp edi, eax
jl 0x140048680
mov r14d, dword [rbp + 0x178]
jmp 0x1400486c5
xor r12d, r12d
xor edi, edi
test eax, eax
jle 0x140048710
mov rax, qword [rsp + 0x48]
xor ebx, ebx
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [rax + 0x20]
mov r8d, r15d
mov edx, r14d
mov rcx, qword [rcx + rbx + 8]
call fcn.140030060
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x14004be25
mov rax, qword [rsp + 0x48]
inc edi
add rbx, 0x20
cmp edi, dword [rax + 0x28]
jl 0x1400486e0
mov rdi, qword [rsp + 0x48]
test r12d, r12d
je 0x140048753
mov rax, qword [rdi + 8]
test rax, rax
je 0x140048747
nop dword [rax]
nop word [rax + rax]
and dword [rax + 0xc8], 0xfffffffd
or dword [rax + 0xc8], 1
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140048730
mov rcx, rdi
call fcn.140066770
or dword [rdi + 0x2c], 1
mov rcx, qword [rdi + 0x270]
cmp rcx, rsi
je 0x140048788
nop
mov rax, qword [rcx + 0x18]
mov rdx, rcx
mov rcx, rdi
mov qword [rdi + 0x270], rax
call fcn.140017100
mov rcx, qword [rdi + 0x270]
dec dword [rdi + 0x27c]
cmp rcx, rsi
jne 0x140048760
cmp r14d, 1
jne 0x1400487d6
mov rax, qword [rsi + 0x18]
mov rdx, rsi
mov rcx, rdi
mov qword [rdi + 0x270], rax
call fcn.140017100
test r13d, r13d
jne 0x1400487f7
dec dword [rdi + 0x27c]
mov r8d, r15d
mov edx, r14d
mov rcx, rdi
call fcn.1400a11f0
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be2a
mov r12, qword [rsp + 0x30]
jmp 0x140046f18
mov rax, qword [rsi + 8]
mov qword [rdi + 0x288], rax
mov rax, qword [rsi + 0x10]
mov qword [rdi + 0x290], rax
test r13d, r13d
je 0x1400487af
cmp r14d, 2
je 0x1400487af
mov r12d, dword [rsp + 0x3c]
test r12d, r12d
jne 0x14004be2a
mov r12, qword [rsp + 0x30]
jmp 0x140046f18
mov rcx, qword [rsp + 0x30]
mov dword [rbp + 0x178], r15d
mov edx, dword [rcx + 8]
test edx, edx
je 0x140048830
mov eax, dword [rdi + 0x30]
bt rax, 0x14
jb 0x14004ba38
movsxd rcx, dword [rcx + 4]
mov rax, qword [rdi + 0x20]
shl rcx, 5
mov rbx, qword [rcx + rax + 8]
test rbx, rbx
je 0x14004896a
lea r8, [rbp + 0x178]
mov rcx, rbx
call fcn.14002e710
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004ba43
mov r12, qword [rsp + 0x30]
cmp dword [r12 + 8], eax
je 0x140048909
test byte [r13 + 0xc8], 0x80
je 0x140048909
cmp byte [rdi + 0x5f], al
je 0x140048894
cmp dword [rdi + 0xcc], 1
jle 0x140048909
mov r8d, dword [r13 + 0x40]
test r8d, r8d
jne 0x1400488b5
inc dword [rdi + 0x280]
mov r8d, dword [rdi + 0x27c]
add r8d, dword [rdi + 0x280]
mov dword [r13 + 0x40], r8d
dec r8d
xor edx, edx
mov rcx, rdi
call fcn.1400a11f0
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x1400488f3
mov rax, qword [rbx + 8]
mov edx, dword [r13 + 0x40]
mov rcx, qword [rax]
cmp edx, dword [rcx + 0x80]
jle 0x1400488ee
cmp byte [rcx + 0xa], 0
je 0x1400488ee
call fcn.140027bc0
mov dword [rsp + 0x3c], eax
jmp 0x1400488f3
mov dword [rsp + 0x3c], r15d
mov rax, qword [rdi + 0x288]
mov qword [r13 + 0x58], rax
mov rax, qword [rdi + 0x290]
mov qword [r13 + 0x60], rax
mov r11, qword [rsp + 0x40]
mov r10d, 1
cmp word [r12 + 2], 0
je 0x14004895a
mov eax, dword [r12 + 0xc]
cmp dword [rbp + 0x178], eax
jne 0x14004ba76
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [rdi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x10]
cmp dword [rcx + 4], eax
jne 0x14004ba76
mov r12, qword [rsp + 0x30]
cmp dword [rsp + 0x3c], 0
jne 0x14004bb1f
jmp 0x140046b43
mov r12, qword [rsp + 0x30]
jmp 0x140048914
mov rcx, qword [rdi + 0x20]
lea r8, [rbp - 8]
mov rax, qword [rsp + 0x30]
mov r12, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
mov edx, dword [r12 + 0xc]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.140037e30
movsxd rax, dword [r12 + 8]
imul rcx, rax, 0x38
mov eax, 0x2400
add rcx, qword [r13 + 0x68]
test word [rcx + 8], ax
je 0x1400489d1
call fcn.140046250
mov r11, qword [rsp + 0x40]
mov rcx, rax
movsxd rax, dword [rbp - 8]
mov r10d, 1
mov qword [rcx], rax
jmp 0x140046b43
mov r11, qword [rsp + 0x40]
mov eax, 4
mov word [rcx + 8], ax
mov r10d, 1
movsxd rax, dword [rbp - 8]
mov qword [rcx], rax
jmp 0x140046b43
mov rax, qword [rsp + 0x30]
movsxd rbx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 8]
shl rbx, 5
add rbx, qword [rdi + 0x20]
mov rcx, qword [rbx + 8]
call fcn.140037e80
mov dword [rsp + 0x3c], eax
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 8]
cmp eax, 1
jne 0x140048a37
mov rcx, qword [rbx + 0x18]
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0xc]
mov dword [rcx], eax
or dword [rdi + 0x2c], 1
jmp 0x140048a4c
cmp eax, 2
jne 0x140048a4c
mov rax, qword [rsp + 0x30]
mov rcx, qword [rbx + 0x18]
movzx eax, byte [rax + 0xc]
mov byte [rcx + 0x70], al
mov r12, qword [rsp + 0x30]
cmp dword [r12 + 4], 1
jne 0x140048a81
mov rax, qword [rdi + 8]
test rax, rax
je 0x140048a79
and dword [rax + 0xc8], 0xfffffffd
or dword [rax + 0xc8], 1
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140048a62
and dword [r13 + 0xc8], 0xfffffffc
cmp dword [rsp + 0x3c], 0
jne 0x14004bb1f
mov r11, qword [rsp + 0x40]
mov r10d, 1
jmp 0x140046b43
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x30]
test rdi, rdi
je 0x140048aca
mov eax, dword [rcx + 8]
cmp dword [rdi + 0x4c], eax
je 0x140048c37
jmp 0x140048aca
mov rcx, qword [rsp + 0x30]
mov eax, dword [r13 + 0xc8]
and al, 3
cmp al, 1
je 0x14004bae6
movsxd r12, dword [rcx + 0xc]
mov edi, r15d
mov r10, qword [rsp + 0x48]
mov rax, r12
movsxd r14, dword [rcx + 8]
shl rax, 5
add rax, qword [r10 + 0x20]
mov r13, qword [rax + 8]
cmp bl, 0x62
jne 0x140048b6c
mov rax, qword [rax + 0x18]
movzx esi, word [rcx + 2]
and esi, 8
or esi, 4
movzx ecx, byte [rax + 0x70]
mov rax, qword [rbp + 0x160]
cmp cl, byte [rax + 0xc3]
jae 0x140048b26
mov byte [rax + 0xc3], cl
mov rcx, qword [rsp + 0x30]
test byte [rcx + 2], 0x10
je 0x140048b59
imul rbx, r14, 0x38
add rbx, r11
mov rcx, rbx
call fcn.14003b000
mov rcx, qword [rsp + 0x30]
mov qword [rbx], rax
mov eax, 0x3e40
and word [rbx + 8], ax
or word [rbx + 8], 4
mov r14d, dword [rbx]
movzx eax, byte [rcx + 1]
cmp al, 0xf7
jne 0x140048b70
mov r15, qword [rcx + 0x10]
movzx edi, word [r15 + 8]
jmp 0x140048b77
xor esi, esi
jmp 0x140048b2b
cmp al, 0xfd
jne 0x140048b77
mov edi, dword [rcx + 0x10]
mov edx, dword [rcx + 4]
mov r9d, r12d
mov rcx, qword [rbp + 0x160]
mov r8d, edi
mov byte [rsp + 0x20], 0
call fcn.140045e60
mov rdi, rax
test rax, rax
je 0x14004be11
or dword [rax + 8], 4
mov byte [rax + 2], 1
mov dword [rax + 0x4c], r14d
mov rax, qword [rax + 0x38]
cmp r14d, 1
jge 0x140048be7
lea rax, [0x140166684]
mov r9d, 0x108ea
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
mov ecx, reloc.Cabinet.dll_FCIAddFile
call fcn.140019dd0
mov dword [rsp + 0x3c], reloc.Cabinet.dll_FCIAddFile
jmp 0x140048c01
mov r9, r15
mov qword [rsp + 0x20], rax
mov r8d, esi
mov edx, r14d
mov rcx, r13
call fcn.140030130
mov dword [rsp + 0x3c], eax
mov rcx, qword [rsp + 0x30]
mov r10d, 1
mov r13, qword [rbp + 0x160]
mov r11, qword [rsp + 0x40]
movzx r14d, byte [rbp + 0x170]
mov edx, dword [rsp + 0x38]
mov rsi, qword [rsp + 0x50]
mov qword [rdi + 0x40], r15
cmp byte [rcx + 1], 0xf7
setne al
mov byte [rdi + 4], al
movzx ecx, byte [rcx + 2]
mov rax, qword [rdi + 0x38]
and cl, 3
mov r12d, dword [rsp + 0x3c]
mov byte [rax + 3], cl
test r12d, r12d
jne 0x14004be31
mov r12, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x48]
jmp case.0x1400463a0.86
mov rax, qword [rsp + 0x30]
mov r9d, 0xffffffff
mov byte [rsp + 0x20], 0
movsxd rcx, dword [rax + 8]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, r13
mov rax, qword [rsp + 0x30]
movsx r8d, word [rbx + 0x50]
mov edx, dword [rax + 4]
call fcn.140045e60
mov r8, rax
test rax, rax
je 0x14004bb80
or dword [rax + 8], 1
mov byte [rax + 2], 1
mov r9, qword [rbx + 0x40]
mov qword [rax + 0x40], r9
movzx ecx, byte [rbx + 4]
mov byte [rax + 4], cl
mov ecx, dword [rbx + 0x4c]
mov dword [rax + 0x4c], ecx
mov eax, dword [rbx + 8]
xor eax, dword [r8 + 8]
and eax, 4
xor dword [r8 + 8], eax
mov rax, qword [r8 + 0x38]
cmp ecx, 1
jge 0x140048d0a
lea rax, [0x140166684]
mov r9d, 0x108ea
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
mov ecx, reloc.Cabinet.dll_FCIAddFile
call fcn.140019dd0
mov dword [rsp + 0x3c], reloc.Cabinet.dll_FCIAddFile
jmp 0x1400468b9
mov edx, ecx
mov qword [rsp + 0x20], rax
mov rcx, qword [rbx + 0x10]
mov r8d, 4
call fcn.140030130
mov dword [rsp + 0x3c], eax
jmp 0x1400468b9
mov rax, qword [rsp + 0x30]
movsxd rdx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rdx*8]
test rbx, rbx
je 0x140048d76
mov rcx, qword [rbx + 0x10]
mov qword [rbx + 0x18], r15
mov dword [rbx + 0x28], r15d
test rcx, rcx
je 0x140048ef7
mov edx, dword [rbx + 0x4c]
xor r8d, r8d
call fcn.140037a30
mov r11, qword [rsp + 0x40]
mov r12d, eax
mov dword [rsp + 0x3c], eax
mov r10d, 1
jmp 0x140048efc
mov rax, qword [rsp + 0x30]
mov r9d, 0xffffffff
mov rcx, r13
mov byte [rsp + 0x20], 0
mov r8d, dword [rax + 8]
call fcn.140045e60
mov rbx, rax
test rax, rax
je 0x14004bb80
or dword [rax + 8], 1
lea r9, [rbx + 0x10]
mov rax, qword [rsp + 0x30]
xor edx, edx
mov dword [rsp + 0x28], 0x41e
movzx ecx, word [rax + 2]
mov rax, qword [rsp + 0x48]
or ecx, 5
mov dword [rsp + 0x20], ecx
mov r8, rax
mov rcx, qword [rax]
call fcn.14002db60
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x140048ec7
mov rcx, qword [rbx + 0x10]
mov r12d, 1
mov edx, r12d
xor r8d, r8d
call fcn.14002e710
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x140048ec7
mov rax, qword [rsp + 0x30]
mov rcx, qword [rbx + 0x10]
mov r14, qword [rax + 0x10]
mov qword [rbx + 0x40], r14
test r14, r14
je 0x140048e96
movzx r8d, word [rax + 2]
lea rdx, [rbx + 0x4c]
or r8d, 2
call fcn.140037300
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x140048e90
mov edx, dword [rbx + 0x4c]
mov rax, qword [rbx + 0x38]
cmp edx, r12d
jge 0x140048e75
lea rax, [0x140166684]
mov r9d, 0x108ea
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
lea ecx, [r12 + 0xa]
call fcn.140019dd0
mov dword [rsp + 0x3c], reloc.Cabinet.dll_FCIAddFile
mov byte [rbx + 4], 0
jmp 0x140048eba
mov rcx, qword [rbx + 0x10]
mov r9, r14
mov r8d, 4
mov qword [rsp + 0x20], rax
call fcn.140030130
mov dword [rsp + 0x3c], eax
mov byte [rbx + 4], 0
jmp 0x140048eba
mov rax, qword [rbx + 0x38]
xor r9d, r9d
mov edx, r12d
mov dword [rbx + 0x4c], r12d
mov qword [rsp + 0x20], rax
lea r8d, [r9 + 4]
call fcn.140030220
mov dword [rsp + 0x3c], eax
mov byte [rbx + 4], r12b
mov rsi, qword [rsp + 0x50]
movzx r14d, byte [rbp + 0x170]
mov rax, qword [rsp + 0x30]
mov ecx, r15d
mov rdi, qword [rsp + 0x48]
mov r10d, 1
mov r11, qword [rsp + 0x40]
cmp word [rax + 2], 8
mov eax, 4
cmovne ecx, eax
mov eax, dword [rbx + 8]
and eax, 0xfffffffb
or ecx, eax
mov dword [rbx + 8], ecx
mov r12d, dword [rsp + 0x3c]
test r12d, r12d
jne 0x14004be31
mov r12, qword [rsp + 0x30]
mov byte [rbx + 2], 1
jmp 0x140046b43
mov rax, qword [rsp + 0x30]
mov r9d, 0xffffffff
mov rcx, r13
mov byte [rsp + 0x20], 1
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.140045e60
test rax, rax
je 0x14004bb80
mov rdx, qword [rsp + 0x30]
mov r8, rax
mov rcx, qword [rdx + 0x10]
mov qword [rax + 0x40], rcx
mov rcx, rdi
mov edx, dword [rdx + 0xc]
call fcn.14004dbd0
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be31
jmp 0x1400468b9
mov rax, qword [rsp + 0x30]
mov r12, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rdx + 0x18]
lea rax, [rcx + 1]
mov qword [rdx + 0x18], rax
test rcx, rcx
je 0x14004b895
jmp 0x140046b43
mov rax, qword [rsp + 0x30]
mov r9d, 0xffffffff
mov rcx, r13
mov byte [rsp + 0x20], 3
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
call fcn.140045e60
test rax, rax
je 0x14004bb80
mov r12, qword [rsp + 0x30]
mov r10d, 1
mov r11, qword [rsp + 0x40]
mov byte [rax + 2], 1
mov ecx, dword [r12 + 8]
mov dword [rax + 0x2c], ecx
lea rcx, [0x1401b2a50]
mov qword [rax + 0x38], rcx
mov byte [rax + 4], 1
jmp 0x140046b43
mov rdx, qword [r13 + 0x78]
mov rcx, r13
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
mov rdx, qword [rdx + rax*8]
call fcn.14003eff0
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov qword [rax + rcx*8], r15
jmp 0x1400468b9
mov rax, qword [rsp + 0x30]
mov r12d, r15d
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov r14, qword [rax + rcx*8]
cmp byte [r14 + 4], 0
mov word [r14 + 2], 0
mov dword [r14 + 0x28], r15d
je 0x140049147
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 0xc]
imul rdi, rax, 0x38
add rdi, r11
movzx esi, word [rdi + 8]
movzx eax, sil
and al, 0x2e
cmp al, 2
jne 0x140049073
xor edx, edx
mov rcx, rdi
call fcn.140045fa0
mov rcx, rdi
call fcn.14003b000
movzx edx, word [rdi + 8]
mov r15, rax
mov word [rdi + 8], si
test dl, 0x24
jne 0x14004910f
test dl, 8
jne 0x1400490eb
test dl, 1
jne 0x14004b1cf
cmp ebx, 0x18
jae 0x14004b1cf
mov rcx, qword [r14 + 0x38]
lea rdx, [rsp + 0x5c]
call fcn.1400310b0
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x14004bb1f
cmp dword [rsp + 0x5c], 0
jne 0x14004b1cf
mov r11, qword [rsp + 0x40]
test r12d, r12d
mov r12, qword [rsp + 0x30]
mov edx, dword [rsp + 0x38]
je 0x1400475f8
add r12, 0x18
jmp 0x1400475f8
movsd xmm0, qword [rdi]
xorps xmm1, xmm1
cvtsi2sd xmm1, r15
comisd xmm0, xmm1
jae 0x140049106
test bl, 1
je 0x14004910f
dec ebx
jmp 0x14004910f
jbe 0x14004910f
test bl, 1
jne 0x14004910f
inc ebx
mov rcx, qword [r14 + 0x38]
lea rax, [rsp + 0x5c]
xor r9d, r9d
mov qword [rsp + 0x20], rax
mov r8, r15
xor edx, edx
call fcn.140031130
mov dword [rsp + 0x3c], eax
mov qword [r14 + 0x58], r15
test eax, eax
jne 0x14004bb1f
mov rsi, qword [rsp + 0x50]
xor r15d, r15d
jmp 0x1400491d0
mov rcx, qword [r14 + 0x38]
mov edx, 2
call fcn.140039830
mov rcx, qword [rsp + 0x30]
test eax, eax
mov rax, qword [r14 + 0x40]
mov edx, 1
cmovne r12d, edx
mov qword [rbp - 0x68], rax
test dl, bl
mov byte [rbp - 0x52], 0
movzx eax, word [rcx + 0x10]
mov word [rbp - 0x58], ax
mov eax, edx
mov edx, 0xffffffff
cmovne eax, edx
xor r9d, r9d
mov byte [rbp - 0x56], al
lea rdx, [rbp - 0x68]
movsxd rax, dword [rcx + 0xc]
xor r8d, r8d
imul rcx, rax, 0x38
lea rax, [rsp + 0x5c]
add rcx, qword [rsp + 0x40]
mov qword [rbp - 0x60], rcx
mov rcx, qword [r14 + 0x38]
mov qword [rsp + 0x20], rax
call fcn.140031130
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x14004bb1f
test r12d, r12d
je 0x1400491d0
cmp byte [rbp - 0x52], al
je 0x1400490c0
mov eax, dword [rsp + 0x5c]
cmp ebx, 0x18
jl 0x140049230
test eax, eax
js 0x1400491ee
jne 0x1400491e4
cmp ebx, 0x19
je 0x1400491ee
mov dword [rsp + 0x5c], r15d
jmp 0x1400490cb
mov dword [rsp + 0x5c], r15d
xor edx, edx
mov rcx, qword [r14 + 0x38]
call fcn.1400318a0
mov dword [rsp + 0x3c], eax
test eax, eax
je 0x1400490c0
mov r12d, eax
cmp eax, 0x65
jne 0x14004be31
mov r12, qword [rsp + 0x30]
mov r10d, 1
mov dword [rsp + 0x5c], r10d
mov dword [rsp + 0x3c], r15d
jmp 0x14004b895
test eax, eax
jg 0x14004924d
jne 0x14004923b
cmp ebx, 0x16
je 0x14004924d
mov rcx, qword [r14 + 0x38]
call fcn.1400316f0
mov dword [rsp + 0x5c], eax
jmp 0x1400490c0
mov dword [rsp + 0x5c], r15d
xor edx, edx
mov rcx, qword [r14 + 0x38]
call fcn.1400319f0
jmp 0x1400491fe
mov rax, qword [rsp + 0x30]
mov r12, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 8]
shl eax, 3
xor eax, dword [rdx + 8]
and eax, 8
xor dword [rdx + 8], eax
jmp 0x140046b43
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
test byte [rcx + 8], 8
jne 0x1400477f4
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rsi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 0xc]
mov ecx, dword [rcx + 0x10]
imul rbx, rax, 0x38
add rbx, r11
test ecx, ecx
jle 0x1400492ea
mov rax, qword [rsi + 0x40]
lea rdi, [rbp - 0x68]
mov qword [rbp - 0x68], rax
mov r14, r15
mov word [rbp - 0x58], cx
mov qword [rbp - 0x60], rbx
jmp 0x140049336
mov eax, 0x4000
test word [rbx + 8], ax
je 0x140049305
mov rcx, rbx
call fcn.14003ab10
test eax, eax
jne 0x14004bb80
mov rcx, qword [rsi + 0x40]
call fcn.140041220
mov rdi, rax
mov r14, rax
test rax, rax
je 0x14004bb7b
mov r8, qword [rbx + 0x10]
mov r9, rax
mov edx, dword [rbx + 0xc]
mov rcx, qword [rsi + 0x40]
call fcn.140041280
mov r10d, 1
mov rax, qword [rsp + 0x30]
mov ebx, r15d
mov byte [rdi + 0x12], 0
cmp byte [rax], 0x1b
jne 0x140049374
movzx edx, word [rdi + 0x10]
mov ecx, r15d
test edx, edx
je 0x140049374
mov rax, qword [rdi + 8]
add rax, 8
nop word [rax + rax]
test byte [rax], 1
jne 0x140049371
inc ecx
add rax, 0x38
cmp ecx, edx
jl 0x140049360
jmp 0x140049374
mov ebx, r10d
mov rcx, qword [rsi + 0x38]
lea rax, [rbp - 0x30]
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, rdi
call fcn.140031130
mov rdi, qword [rsp + 0x48]
mov r12d, eax
mov dword [rsp + 0x3c], eax
test r14, r14
je 0x1400493ab
mov rdx, r14
mov rcx, rdi
call fcn.140017100
test r12d, r12d
jne 0x14004be31
mov eax, dword [rbp - 0x30]
mov ecx, r15d
mov dword [rsi + 0x2c], eax
mov eax, dword [rbp - 0x30]
test eax, eax
mov byte [rsi + 3], r12b
mov r12, qword [rsp + 0x30]
sete cl
test eax, eax
mov dword [rsi + 0x28], r15d
setne al
mov byte [rsi + 2], al
cmp byte [r12], 0x1d
jne 0x1400493f9
mov rsi, qword [rsp + 0x50]
mov r10d, 1
test ecx, ecx
jne 0x14004b895
jmp 0x140046b36
test ebx, ebx
jne 0x14004b1d4
mov rsi, qword [rsp + 0x50]
lea r10d, [rbx + 1]
test ecx, ecx
je 0x14004b895
jmp 0x140046b36
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r11
test byte [rcx + 8], 0x24
jne case.0x1400463a0.31
movups xmm0, xmmword [rcx]
movzx r8d, r14b
mov dl, 0x43
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rbp + 0xb0], xmm0
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rbp + 0xc0], xmm1
movsd xmm1, qword [rcx + 0x30]
lea rcx, [rbp + 0xb0]
movups xmmword [rbp + 0xd0], xmm0
movsd qword [rbp + 0xe0], xmm1
call fcn.1400460d0
test byte [rbp + 0xb8], 4
je 0x14004af4a
mov rdi, qword [rbp + 0xb0]
jmp 0x140049493
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov rdi, qword [rcx + r11]
mov rax, qword [rsp + 0x30]
xor r9d, r9d
mov r8, rdi
xor edx, edx
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
lea rax, [rsp + 0x7c]
mov qword [rsp + 0x20], rax
mov rcx, qword [rbx + 0x38]
mov dword [rsp + 0x7c], r15d
call fcn.140031130
mov r12, qword [rsp + 0x30]
mov qword [rbx + 0x58], rdi
mov word [rbx + 2], 0
mov dword [rbx + 0x28], r15d
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x7c]
mov dword [rbx + 0x2c], eax
cmp dword [rsp + 0x7c], 0
je 0x140049507
cmp dword [r12 + 8], 0
jne 0x140047149
mov ecx, 0x159cf
call fcn.1400c0050
mov edi, eax
mov dword [rsp + 0x3c], eax
jmp 0x14004950b
mov edi, dword [rsp + 0x3c]
test edi, edi
jne 0x14004bb1f
mov rdi, qword [rsp + 0x48]
mov r10d, 1
mov r11, qword [rsp + 0x40]
jmp 0x140046b43
mov rbx, qword [rsp + 0x30]
mov rcx, r13
mov rdx, rbx
call fcn.140046280
mov rcx, qword [r13 + 0x78]
movsxd rdx, dword [rbx + 4]
mov rdx, qword [rcx + rdx*8]
mov rcx, qword [rdx + 0x18]
mov qword [rax], rcx
mov rax, rbx
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [rbx + 4]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x18]
jmp 0x1400468b9
mov rbx, qword [rsp + 0x30]
mov rcx, r13
mov rdx, rbx
mov qword [rsp + 0x68], r15
mov dword [rbp + 0x178], r15d
call fcn.140046280
movsxd rdx, dword [rbx + 4]
mov rsi, rax
mov rcx, qword [r13 + 0x78]
mov rdi, qword [rcx + rdx*8]
test byte [rdi + 8], 2
jne 0x1400495c5
mov rcx, qword [rdi + 0x38]
lea rdx, [rbp + 0x178]
call fcn.1400310b0
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be31
cmp dword [rbp + 0x178], eax
je 0x140049606
mov ecx, 1
mov qword [rsp + 0x68], rcx
movabs r12, 0x7fffffffffffffff
movsxd rdx, dword [rbx + 0xc]
test edx, edx
je 0x140049671
mov rcx, qword [r13 + 0x100]
test rcx, rcx
je 0x140049633
mov rax, qword [rcx + 8]
test rax, rax
je 0x1400495fc
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x1400495f0
imul rbx, rdx, 0x38
add rbx, qword [rcx + 0x20]
jmp 0x14004963c
mov rcx, qword [rdi + 0x38]
call fcn.1400304a0
movabs r12, 0x7fffffffffffffff
mov qword [rsp + 0x68], rax
cmp rax, r12
jl 0x140049629
or dword [rdi + 8], 2
jmp 0x1400495cf
inc rax
mov qword [rsp + 0x68], rax
jmp 0x1400495cf
imul rbx, rdx, 0x38
add rbx, qword [rsp + 0x40]
mov rcx, rbx
call fcn.14003b140
mov rax, qword [rbx]
cmp rax, r12
je 0x1400496e1
test byte [rdi + 8], 2
jne 0x1400496e1
mov rcx, qword [rsp + 0x68]
inc rax
cmp rcx, rax
cmovl rcx, rax
mov qword [rsp + 0x68], rcx
mov qword [rbx], rcx
test byte [rdi + 8], 2
je 0x1400496ec
mov ebx, r15d
nop
lea rdx, [rsp + 0x68]
mov ecx, 8
call fcn.140019eb0
mov r8, qword [rsp + 0x68]
movabs rax, 0x3fffffffffffffff
and r8, rax
xor r9d, r9d
inc r8
lea rax, [rbp + 0x178]
mov qword [rsp + 0x68], r8
xor edx, edx
mov rcx, qword [rdi + 0x38]
mov qword [rsp + 0x20], rax
call fcn.140031130
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be31
cmp dword [rbp + 0x178], eax
jne 0x1400496ec
inc ebx
cmp ebx, 0x64
jl 0x140049680
mov r12d, reloc.Cabinet.dll_FCIFlushCabinet
jmp 0x14004be31
mov byte [rdi + 3], 0
mov dword [rdi + 0x28], r15d
mov rax, qword [rsp + 0x68]
mov qword [rsi], rax
jmp 0x140046828
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [r13 + 0x78]
add rdx, r11
mov rbx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x30]
cmp byte [rax + 1], 0xfa
mov r8, qword [rcx + r11]
mov qword [rbp - 0x60], r8
jne 0x140049763
cmp qword [rdi + 0x120], 0
je 0x140049763
mov rax, qword [rdi + 0x20]
movsx rcx, byte [rbx + 1]
shl rcx, 5
mov rsi, qword [rcx + rax]
mov rax, qword [rsp + 0x30]
mov rdi, qword [rax + 0x10]
jmp 0x140049769
mov rdi, r15
mov rsi, r15
movzx ecx, word [rax + 2]
test cl, 1
je 0x14004977a
inc dword [r13 + 0x3c]
movzx ecx, word [rax + 2]
test cl, 0x20
je 0x14004978c
mov r10, qword [rsp + 0x48]
mov qword [r10 + 0x38], r8
movzx ecx, word [rax + 2]
mov rax, qword [rdx + 0x10]
mov qword [rbp - 0x58], rax
mov eax, dword [rdx + 0xc]
mov dword [rbp - 0x44], eax
test cl, 0x10
je 0x1400497a5
mov r9d, dword [rbx + 0x2c]
jmp 0x1400497a8
mov r9d, r15d
mov eax, 0x4000
test word [rdx + 8], ax
je 0x1400497ba
mov eax, dword [rdx]
mov dword [rbp - 0x40], eax
jmp 0x1400497be
mov dword [rbp - 0x40], r15d
movzx r8d, cx
lea rdx, [rbp - 0x68]
mov qword [rbp - 0x68], r15
and r8d, 0xa
mov rcx, qword [rbx + 0x38]
call fcn.1400369c0
mov dword [rsp + 0x3c], eax
mov r12d, eax
mov byte [rbx + 3], 0
mov dword [rbx + 0x28], r15d
test eax, eax
jne 0x14004be31
test rdi, rdi
je 0x14004b797
mov rax, qword [rsp + 0x30]
mov edx, 0x12
mov r9, qword [rdi]
mov r8, rsi
mov rdi, qword [rsp + 0x48]
test byte [rax + 2], 4
mov eax, Ordinal_26
mov rcx, qword [rdi + 0x118]
cmovne edx, eax
mov rax, qword [rbp - 0x60]
mov qword [rsp + 0x20], rax
call qword [rdi + 0x120]
mov r12, qword [rsp + 0x30]
jmp 0x140046832
mov rax, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
cmp byte [rdx + 1], 0xfa
mov r14d, dword [rax + 8]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
jne 0x140049897
cmp qword [rdi + 0x120], 0
je 0x140049897
mov rax, qword [rdi + 0x20]
movsx rcx, byte [rbx + 1]
mov rdi, qword [rdx + 0x10]
shl rcx, 5
test byte [rdx + 2], 2
mov rsi, qword [rcx + rax]
je 0x14004989d
cmp byte [rbx + 4], 0
je 0x14004989d
mov rcx, qword [rbx + 0x38]
call fcn.1400304a0
mov rdx, qword [rsp + 0x30]
mov qword [rbx + 0x58], rax
jmp 0x14004989d
mov rsi, r15
mov rdi, r15
movzx edx, byte [rdx + 2]
mov rcx, qword [rbx + 0x38]
call fcn.140036e10
mov dword [rsp + 0x3c], eax
mov r12d, eax
mov qword [rbx + 0x28], 0
test eax, eax
jne 0x14004be31
test r14b, 1
je 0x14004b797
inc dword [r13 + 0x3c]
mov rax, qword [rsp + 0x48]
mov r10, qword [rax + 0x120]
test r10, r10
je 0x14004b797
test byte [rdi + 0x40], 0x20
jne 0x14004b797
mov r9, qword [rdi]
lea edx, [r12 + 9]
mov rax, qword [rbx + 0x58]
mov r8, rsi
mov rdi, qword [rsp + 0x48]
mov qword [rsp + 0x20], rax
mov rcx, qword [rdi + 0x118]
call r10
mov r12, qword [rsp + 0x30]
jmp 0x140046f18
mov edx, dword [r13 + 0x3c]
mov rcx, rdi
call fcn.140042980
mov r11, qword [rsp + 0x40]
mov r10d, 1
mov dword [r13 + 0x3c], r15d
jmp 0x140046b43
mov rbx, qword [rsp + 0x30]
lea r9, [rbp - 0x2c]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [rbx + 4]
mov r8d, dword [rbx + 0x10]
mov rcx, qword [rax + rcx*8]
movsxd rax, dword [rbx + 0xc]
imul rdx, rax, 0x38
mov rax, rbx
mov dword [rbp - 0x2c], r15d
add rdx, r11
call fcn.14004fc10
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be31
lea r10d, [rax + 1]
mov r12, rbx
cmp dword [rbp - 0x2c], eax
jne 0x14004b895
jmp 0x140046b3e
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [r13 + 0x78]
add rdx, r11
mov rcx, qword [rax + rcx*8]
call fcn.14004fb50
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be31
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x28], r15d
jmp 0x1400468b9
mov rdx, qword [rsp + 0x30]
mov rcx, r13
call fcn.140046280
mov rcx, qword [r13 + 0x78]
mov rbx, rax
mov rax, qword [rsp + 0x30]
movsxd rdx, dword [rax + 4]
mov rdx, qword [rcx + rdx*8]
mov rdi, qword [rdx + 0x38]
mov rcx, rdi
call fcn.1400304c0
mov r10, qword [rsp + 0x48]
cmp eax, dword [r10 + 0x7c]
ja 0x14004bbdc
mov r9, rbx
mov r8d, eax
xor edx, edx
mov rcx, rdi
call fcn.14003bba0
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be31
mov r12, qword [rsp + 0x30]
cmp dword [r12 + 0xc], eax
jne 0x14004b79c
mov eax, 0x1000
test word [rbx + 8], ax
je 0x14004b79c
mov rcx, rbx
call fcn.14003aab0
mov rdi, qword [rsp + 0x48]
test eax, eax
jne 0x14004bb80
mov r11, qword [rsp + 0x40]
lea r10d, [rax + 1]
jmp 0x140046b43
mov rbx, qword [rsp + 0x30]
mov rcx, r13
mov rdx, rbx
call fcn.140046280
movsxd rdx, dword [rbx + 4]
mov rdi, rax
mov rcx, qword [r13 + 0x78]
mov rbx, qword [rcx + rdx*8]
cmp byte [rbx + 2], 0
je 0x140049ab5
mov r12, qword [rsp + 0x30]
mov r10d, 1
mov rdi, qword [rsp + 0x48]
mov word [rax + 8], r10w
jmp 0x140046b3e
cmp byte [rbx + 3], 0
je 0x140049ad0
mov rax, qword [rbx + 0x58]
mov qword [rbp + 8], rax
mov qword [rdi], rax
mov rdi, qword [rsp + 0x48]
jmp 0x1400468b9
cmp byte [rbx], 2
jne 0x140049b14
mov rcx, qword [rbx + 0x38]
lea rdx, [rbp + 8]
mov rbx, qword [rcx]
mov rax, qword [rbx]
call qword [rax + reloc.WLDAP32.dll_Ordinal_96]
mov rdx, rbx
mov rcx, r13
mov dword [rsp + 0x3c], eax
call fcn.1400429c0
mov r12d, dword [rsp + 0x3c]
test r12d, r12d
jne 0x14004be31
mov rax, qword [rbp + 8]
mov qword [rdi], rax
mov rdi, qword [rsp + 0x48]
jmp 0x1400468b9
mov rcx, rbx
call fcn.140040ef0
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be31
cmp byte [rbx + 2], al
je 0x140049b4a
mov r12, qword [rsp + 0x30]
mov r10d, 1
mov word [rdi + 8], r10w
mov rdi, qword [rsp + 0x48]
jmp 0x140046b3e
mov rcx, qword [rbx + 0x38]
call fcn.1400304a0
mov qword [rbp + 8], rax
mov qword [rdi], rax
mov rdi, qword [rsp + 0x48]
jmp 0x1400468b9
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 0
mov byte [rcx + 2], 1
mov dword [rcx + 0x28], r15d
jne 0x14004b78d
mov rcx, qword [rcx + 0x38]
call fcn.14002bdb0
jmp 0x1400468b9
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rsi, qword [rdi + 0x38]
mov dword [rbp - 0x80], r15d
cmp bl, 0x82
jne 0x140049bc9
mov rcx, rsi
mov dword [rdi + 0x2c], 0xffffffff
call fcn.140030490
test eax, eax
jne 0x14004b797
lea rdx, [rbp - 0x80]
mov rcx, rsi
call fcn.1400310b0
mov dword [rsp + 0x3c], eax
movzx eax, byte [rbp - 0x80]
mov r12d, dword [rsp + 0x3c]
mov byte [rdi + 2], al
mov byte [rdi + 3], 0
mov dword [rdi + 0x28], r15d
test r12d, r12d
jne 0x14004be31
mov r12, qword [rsp + 0x30]
cmp dword [r12 + 8], 0
jle 0x14004b79c
cmp dword [rbp - 0x80], 0
mov r10d, 1
mov rsi, qword [rsp + 0x50]
jne 0x14004b895
mov rdi, qword [rsp + 0x48]
jmp 0x140046b3e
mov rax, qword [rsp + 0x30]
lea rdx, [rbp - 0x7c]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x38]
mov rcx, rbx
call fcn.140031060
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be31
cmp dword [rbp - 0x7c], eax
jne 0x14004af4a
mov rcx, rbx
call fcn.140031700
test rax, rax
js 0x140049c92
mov rcx, rax
call fcn.14001bc10
mov r12, qword [rsp + 0x30]
movsx ecx, ax
cmp ecx, dword [r12 + 0xc]
jge 0x140049c97
mov r10d, 1
mov dword [rbp - 0x7c], r10d
jmp 0x14004b895
mov r12, qword [rsp + 0x30]
cmp dword [rbp - 0x7c], 0
mov r10d, 1
jne 0x14004b895
jmp 0x140046b3e
inc dword [r13 + 0xdc]
mov rax, qword [rsp + 0x30]
lea rdx, [rsp + 0x74]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov dword [rsp + 0x74], r10d
cmp byte [rbx], 1
jne 0x140049cdd
mov rcx, rbx
call fcn.14004f920
jmp 0x140049cee
mov rcx, qword [rbx + 0x38]
call fcn.140031060
mov byte [rbx + 3], 0
mov dword [rbx + 0x28], r15d
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be31
movzx eax, byte [rsp + 0x74]
mov r10d, 1
mov r12, qword [rsp + 0x30]
mov byte [rbx + 2], al
cmp dword [rsp + 0x74], 0
jne 0x14004b895
jmp 0x140046b3e
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, rdi
mov rdx, rbx
call fcn.14004fa40
jmp 0x140049d5e
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x30]
mov rcx, qword [rbx + 0x38]
mov edx, dword [rax + 0xc]
call qword [rax + 0x10]
mov dword [rsp + 0x3c], eax
mov r12d, eax
mov dword [rbx + 0x28], r15d
test eax, eax
jne 0x140049d86
mov byte [rbx + 2], al
mov rax, qword [rsp + 0x30]
movzx eax, word [rax + 2]
inc dword [r13 + rax*4 + 0xd4]
jmp case.0x1400463a0.11
cmp r12d, 0x65
jne 0x14004be31
mov dword [rsp + 0x3c], r15d
mov byte [rbx + 2], 1
jmp 0x14004b360
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rbx, r11
test byte [rcx + 2], 1
je 0x140049dc9
inc dword [r13 + 0x3c]
mov eax, 0x4000
test word [rbx + 8], ax
je 0x140049df1
mov rcx, rbx
call fcn.14003ab10
mov r12d, eax
test eax, eax
jne 0x14004be31
mov rcx, qword [rsp + 0x30]
mov r11, qword [rsp + 0x40]
cmp byte [rcx], 0x83
jne 0x140049e03
mov rdx, rbx
mov rcx, rdi
call fcn.14004eb50
jmp 0x140049e58
movsxd rax, dword [rbx + 0xc]
mov qword [rbp - 0x60], rax
mov rax, qword [rbx + 0x10]
mov qword [rbp - 0x68], rax
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp - 0x50], rcx
mov rcx, qword [rsp + 0x30]
movzx r8d, word [rcx + 2]
movzx eax, word [rcx + 0x10]
mov word [rbp - 0x48], ax
test r8b, 0x10
je 0x140049e40
mov r9d, dword [rdi + 0x2c]
jmp 0x140049e43
mov r9d, r15d
mov rcx, qword [rdi + 0x38]
lea rdx, [rbp - 0x68]
and r8d, 0xa
call fcn.1400369c0
mov dword [rdi + 0x28], r15d
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be31
mov rdi, qword [rsp + 0x48]
jmp 0x1400468b9
mov rax, qword [rsp + 0x30]
lea rdx, [rbp - 0x68]
xor r9d, r9d
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rbx + 0x40]
mov rdi, qword [rbx + 0x38]
mov qword [rbp - 0x68], rax
movzx eax, word [rcx + 0xc]
mov word [rbp - 0x58], ax
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
lea rax, [rbp - 4]
mov byte [rbp - 0x56], 0
add rcx, r11
mov qword [rsp + 0x20], rax
mov qword [rbp - 0x60], rcx
mov rcx, rdi
call fcn.140031130
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be31
cmp dword [rbp - 4], eax
jne 0x140049ef6
mov dl, 4
mov rcx, rdi
call fcn.140036e10
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be31
mov rdi, qword [rsp + 0x48]
mov qword [rbx + 0x28], 0
jmp 0x1400468b9
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, rbx
call fcn.140040ef0
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be31
cmp byte [rbx + 2], al
jne 0x140049fab
mov qword [rbp + 0x10], r15
lea r8, [rbp + 0x10]
mov rdx, qword [rbx + 0x38]
mov rcx, rdi
call fcn.140042640
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be31
mov rax, qword [rsp + 0x30]
cmp byte [rax], 0x86
jne 0x140049f94
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
mov byte [rdx + 2], r12b
mov rax, qword [rbp + 0x10]
mov qword [rdx + 0x58], rax
mov rax, qword [rsp + 0x30]
mov byte [rdx + 3], 1
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x20], rax
mov qword [rdx + 0x30], rbx
jmp 0x1400468b9
mov rdx, rax
mov rcx, r13
call fcn.140046280
mov rcx, qword [rbp + 0x10]
mov qword [rax], rcx
jmp 0x1400468b9
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x40]
call fcn.14003b400
jmp 0x1400468b9
mov rax, qword [rsp + 0x30]
lea r9, [rsp + 0x78]
cmp bl, 0x27
lea r8, [rbp - 0x68]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rdx + 0x40]
mov qword [rbp - 0x68], rax
movzx eax, word [rcx + 0x10]
mov word [rbp - 0x58], ax
sbb al, al
mov byte [rbp - 0x56], al
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
mov dword [rsp + 0x78], r15d
add rcx, r11
mov qword [rbp - 0x60], rcx
mov rcx, rdi
call fcn.140042850
mov dword [rsp + 0x3c], eax
mov rax, qword [rsp + 0x30]
test byte [rax], 1
mov eax, dword [rsp + 0x78]
je 0x14004a030
neg eax
jmp 0x14004a032
inc eax
mov r12d, dword [rsp + 0x3c]
mov dword [rsp + 0x78], eax
test r12d, r12d
jne 0x14004be31
mov r12, qword [rsp + 0x30]
mov r10d, 1
test eax, eax
jg 0x14004b895
jmp 0x140046b3e
mov rdx, qword [rsp + 0x30]
mov rcx, r13
call fcn.140046280
mov ecx, 1
mov rbx, rax
mov word [rax + 8], cx
mov ecx, dword [rdi + 0xd8]
inc ecx
cmp dword [rdi + 0xcc], ecx
jg 0x14004baf1
mov rax, qword [rsp + 0x30]
lea r8, [rbp - 0x78]
mov rsi, qword [rsp + 0x48]
mov dword [rbp - 0x78], r15d
movsxd rdi, dword [rax + 0xc]
mov rcx, qword [rsi + 0x20]
mov r9, rdi
mov edx, dword [rax + 4]
shl r9, 5
mov rcx, qword [r9 + rcx + 8]
call fcn.140037e20
mov dword [rsp + 0x3c], eax
mov eax, 4
mov r12d, dword [rsp + 0x3c]
mov word [rbx + 8], ax
movsxd rax, dword [rbp - 0x78]
mov qword [rbx], rax
test r12d, r12d
jne 0x14004be31
mov r8d, dword [rbp - 0x78]
test r8d, r8d
je 0x14004b797
mov rax, qword [rsp + 0x30]
mov edx, edi
mov rcx, rsi
mov r9d, dword [rax + 4]
call fcn.14006aa30
mov r12, qword [rsp + 0x30]
lea r9d, [rdi + 1]
mov byte [rbp + 0x168], r9b
mov rdi, rsi
jmp 0x140046832
mov rax, qword [rsp + 0x30]
lea r8, [rbp + 0x178]
mov rcx, qword [rdi + 0x20]
mov r12, qword [rsp + 0x30]
mov dword [rbp + 0x178], r15d
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 8]
mov edx, dword [r12 + 4]
cmove r8, r15
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.140037a30
cmp dword [r12 + 0xc], 0
mov edi, eax
mov r11, qword [rsp + 0x40]
mov dword [rsp + 0x3c], eax
je 0x14004a17b
movsxd rdx, dword [rbp + 0x178]
add dword [r13 + 0x3c], edx
movsxd rax, dword [r12 + 0xc]
test eax, eax
jle 0x14004a17b
imul rcx, rax, 0x38
add qword [rcx + r11], rdx
test edi, edi
jne 0x14004bb1f
mov rdi, qword [rsp + 0x48]
mov r10d, 1
jmp 0x140046b43
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 1
jne 0x14004a1ba
mov rdx, qword [rcx + 0x38]
mov rcx, rdi
call fcn.14004e000
jmp 0x1400468b9
mov rcx, qword [rcx + 0x38]
call fcn.140037ae0
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be31
jmp 0x1400468b9
mov rdx, qword [rsp + 0x30]
mov rcx, r13
call fcn.140046280
mov rbx, rax
mov dword [rbp - 0x28], r15d
mov rax, qword [rsp + 0x30]
lea rdx, [rbp - 0x28]
movsxd rcx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
shl rcx, 5
add rcx, qword [rdi + 0x20]
mov rcx, qword [rcx + 8]
call fcn.140037720
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be31
movsxd rax, dword [rbp - 0x28]
mov qword [rbx], rax
jmp 0x1400468b9
mov rax, qword [rsp + 0x30]
xor r9d, r9d
inc byte [rdi + 0x6a]
xor r8d, r8d
mov rcx, rdi
mov qword [rsp + 0x20], r15
mov rdx, qword [rax + 0x10]
call fcn.140081770
dec byte [rdi + 0x6a]
mov r12d, eax
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x14004be31
jmp 0x1400468b9
mov rax, qword [rsp + 0x30]
mov rcx, qword [rax + 0x10]
movsxd rbx, dword [rax + 4]
test rcx, rcx
jne 0x14004a2b8
mov rcx, qword [rdi + 0x20]
mov rax, rbx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.140070360
and dword [rdi + 0x2c], 0xffffffef
lea r8, [r13 + 0xa8]
mov r9d, 1
mov edx, ebx
mov rcx, rdi
call fcn.140087c30
or dword [rdi + 0x2c], 1
mov r12d, eax
and dword [r13 + 0xc8], 0xfffffffc
mov dword [rsp + 0x3c], eax
jmp 0x14004a36b
mov r8, qword [rdi + 0x20]
lea rax, [r13 + 0xa8]
mov qword [rbp - 0x60], rax
lea r9, str.sqlite_master
mov qword [rbp - 0x68], rdi
lea rdx, str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
mov dword [rbp - 0x58], ebx
mov rax, rbx
shl rax, 5
mov dword [rbp - 0x50], r15d
mov qword [rsp + 0x20], rcx
mov rcx, rdi
mov r8, qword [rax + r8]
call fcn.140019b60
mov rbx, rax
mov rcx, rdi
test rax, rax
je 0x14004bb04
lea r9, [rbp - 0x68]
mov byte [rdi + 0xb5], 1
lea r8, [fcn.140087820]
mov dword [rbp - 0x54], r15d
mov rdx, rax
mov dword [rbp - 0x4c], r15d
mov qword [rsp + 0x20], r15
call fcn.140081770
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x14004a354
mov eax, dword [rbp - 0x54]
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x14004a354
cmp dword [rbp - 0x4c], eax
jne 0x14004a354
mov ecx, 0x15f51
call fcn.1400c0050
mov dword [rsp + 0x3c], eax
mov rdx, rbx
mov rcx, rdi
call fcn.140017100
mov r12d, dword [rsp + 0x3c]
mov byte [rdi + 0xb5], 0
test r12d, r12d
je 0x1400468b9
mov rcx, rdi
call fcn.140066770
movzx ebx, byte [rbp + 0x168]
cmp r12d, 7
je 0x14004bb87
jmp 0x14004be38
mov rax, qword [rsp + 0x30]
mov rcx, rdi
mov edx, dword [rax + 4]
call fcn.140063ad0
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be31
jmp 0x1400468b9
mov rax, qword [rsp + 0x30]
mov rcx, rdi
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.140067020
jmp 0x1400468b9
mov rax, qword [rsp + 0x30]
mov rcx, rdi
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.140066390
jmp 0x1400468b9
mov rax, qword [rsp + 0x30]
mov rcx, rdi
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.14009a0a0
jmp 0x1400468b9
mov rcx, qword [rsp + 0x30]
lea r8, [rbp]
mov r10, qword [rsp + 0x48]
mov r12, qword [rsp + 0x30]
mov qword [rsp + 0x20], r8
movsxd rax, dword [rcx + 0xc]
mov rdx, qword [rcx + 0x10]
mov r8d, dword [r12 + 8]
add rdx, 4
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movzx eax, word [rcx + 2]
add rdi, r11
mov rcx, qword [r10 + 0x20]
add rbx, r11
shl rax, 5
mov r9d, dword [rdi]
inc r9d
mov rcx, qword [rax + rcx + 8]
call fcn.140038e60
mov rcx, rbx
mov rsi, rax
call fcn.14003b400
mov edx, dword [rbp]
test edx, edx
je 0x14004a49b
test rsi, rsi
je 0x14004bb7b
dec edx
lea rax, [0x140017070]
movsxd r8, edx
mov r9b, 1
sub qword [rdi], r8
mov rdx, rsi
mov r8d, 0xffffffff
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.14003b7b0
movzx edx, r14b
mov rcx, rbx
call fcn.14003a800
jmp 0x14004682d
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rdi, rax, 0x38
add rbx, r11
add rdi, r11
test byte [rbx + 8], 0x10
jne 0x14004a4dd
mov rcx, rbx
call fcn.14003b500
test eax, eax
jne 0x14004bb7b
mov rdx, qword [rdi]
mov rcx, qword [rbx + 0x10]
call fcn.140022390
mov rdi, qword [rsp + 0x48]
jmp 0x1400468b9
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r11
test byte [rbx + 8], 0x10
je 0x14004a53a
mov rcx, qword [rbx + 0x10]
lea rdx, [rbp + 0x30]
call fcn.140022800
test eax, eax
je 0x14004a53a
mov rax, qword [rsp + 0x30]
mov rdx, qword [rbp + 0x30]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x40]
call fcn.14003b460
jmp 0x14004b360
mov rcx, rbx
call fcn.14003b400
jmp case.0x1400463a0.11
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
mov edi, dword [rcx + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rsi, rax, 0x38
add rbx, r11
add rsi, r11
test byte [rbx + 8], 0x10
jne 0x14004a57b
mov rcx, rbx
call fcn.14003b500
test eax, eax
jne 0x14004bb7b
test edi, edi
je 0x14004a59d
mov r8, qword [rsi]
mov edx, edi
mov rcx, qword [rbx + 0x10]
call fcn.140022880
test eax, eax
jne 0x14004b1cf
test edi, edi
js 0x14004b797
mov rdx, qword [rsi]
mov rcx, qword [rbx + 0x10]
call fcn.140022390
jmp 0x140046828
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 0xc]
mov r15, qword [rcx + 0x10]
imul r14, rax, 0x38
add r14, r11
cmp word [rcx + 2], 0
je 0x14004a5f3
mov rax, qword [r13 + 0x100]
mov rcx, qword [r15 + 0x20]
test rax, rax
je 0x14004a5f3
nop dword [rax]
cmp qword [rax + 0x38], rcx
je 0x14004b8ab
mov rax, qword [rax + 8]
test rax, rax
jne 0x14004a5e0
mov eax, dword [r13 + 0x110]
cmp eax, dword [rdi + 0xa4]
jge 0x14004bb0b
test byte [r14 + 8], 0x10
jne 0x14004a72a
mov edx, dword [r15 + 0x10]
mov ecx, dword [r15 + 0xc]
add ecx, edx
test edx, edx
lea edi, [rcx + 1]
cmovne edi, ecx
lea eax, [rdi + 2]
imul ecx, eax, 7
mov eax, dword [r15 + 8]
add ecx, edx
add eax, 7
jns 0x14004a637
add eax, 7
sar eax, 3
lea ebx, [rax + rcx*8]
mov rcx, qword [rsp + 0x48]
movsxd rdx, ebx
call fcn.140017440
mov rsi, rax
test rax, rax
je 0x14004bb7b
mov rcx, r14
call fcn.14003af80
mov qword [r14 + 0x10], rsi
mov eax, 0x410
mov word [r14 + 8], ax
lea rax, [0x14003e5d0]
mov qword [r14 + 0x30], rax
mov rax, qword [rsp + 0x30]
sub rax, qword [rsp + 0x50]
mov dword [r14 + 0xc], ebx
sar rax, 3
mov dword [rsi + 0x60], edi
mov qword [rsi], r13
mov ecx, dword [r15 + 0x10]
mov dword [rsi + 0x64], ecx
movabs rcx, 0xaaaaaaaaaaaaaaab
imul rax, rcx
mov dword [rsi + 0x54], eax
mov rax, qword [r13 + 0x68]
mov qword [rsi + 0x20], rax
mov eax, dword [r13 + 0x28]
mov dword [rsi + 0x5c], eax
mov rax, qword [r13 + 0x78]
mov qword [rsi + 0x28], rax
mov eax, dword [r13 + 0x2c]
mov dword [rsi + 0x50], eax
mov rax, qword [r13 + 0x88]
mov qword [rsi + 0x10], rax
mov eax, dword [r13 + 0x90]
mov dword [rsi + 0x58], eax
mov rax, qword [r15 + 0x20]
mov qword [rsi + 0x38], rax
movsxd rax, edi
mov rdi, qword [rsp + 0x48]
add rax, 2
imul rcx, rax, 0x38
lea rax, [rsi + 0x70]
add rcx, rsi
cmp rax, rcx
je 0x14004a721
mov edx, 0x80
nop dword [rax]
nop word [rax + rax]
mov word [rax + 8], dx
mov qword [rax + 0x28], rdi
add rax, 0x38
cmp rax, rcx
jne 0x14004a710
mov eax, dword [r13 + 0x110]
jmp 0x14004a72e
mov rsi, qword [r14 + 0x10]
inc eax
lea r8, [rsi + 0x70]
mov dword [r13 + 0x110], eax
mov rax, qword [r13 + 0x100]
mov qword [rsi + 8], rax
mov rax, qword [rdi + 0x38]
mov qword [rsi + 0x40], rax
mov eax, dword [r13 + 0x3c]
mov dword [rsi + 0x68], eax
mov rax, qword [r13]
mov qword [rsp + 0x40], r8
mov ecx, dword [rax + 0x74]
mov dword [rsi + 0x6c], ecx
mov rax, qword [r13 + 0x120]
mov qword [rsi + 0x48], rax
mov qword [r13 + 0x68], r8
mov qword [r13 + 0x120], 0
mov dword [r13 + 0x3c], 0
mov qword [r13 + 0x100], rsi
movsxd rcx, dword [rsi + 0x60]
mov dword [r13 + 0x28], ecx
movzx eax, word [rsi + 0x64]
mov dword [r13 + 0x2c], eax
imul rdx, rcx, 0x38
add rdx, r8
mov qword [r13 + 0x78], rdx
movsxd rax, dword [r15 + 0x10]
lea rcx, [rdx + rax*8]
mov qword [rsi + 0x30], rcx
mov eax, dword [r15 + 8]
add eax, 7
cdq
and edx, 7
add eax, edx
xor edx, edx
sar eax, 3
movsxd r8, eax
call fcn.14011adb0
mov rsi, qword [r15]
movzx r14d, byte [rbp + 0x170]
mov qword [r13 + 0x88], rsi
mov eax, dword [r15 + 8]
mov dword [r13 + 0x90], eax
lea rax, [rsi - 0x18]
mov qword [rsp + 0x50], rsi
jmp 0x14004b35b
mov rdx, qword [rsp + 0x30]
mov rcx, r13
call fcn.140046280
mov r9, qword [r13 + 0x100]
mov r12, qword [rsp + 0x30]
movsxd rcx, dword [r9 + 0x54]
lea rdx, [rcx + rcx*2]
mov rcx, qword [r9 + 0x10]
mov r8d, dword [rcx + rdx*8 + 4]
add r8d, dword [r12 + 4]
movsxd rcx, r8d
mov r8d, 0x1000
imul rdx, rcx, 0x38
mov rcx, rax
add rdx, qword [r9 + 0x20]
call fcn.14003b6d0
mov r11, qword [rsp + 0x40]
mov r10d, 1
jmp 0x140046b43
mov eax, dword [rdi + 0x30]
bt rax, 0x13
mov rax, qword [rsp + 0x30]
mov r12, rax
jae 0x14004a873
movsxd rax, dword [rax + 8]
add qword [rdi + 0x290], rax
jmp case.0x1400463a0.86
cmp dword [rax + 4], 0
lea rcx, [0x140000000]
movsxd rax, dword [rax + 8]
je 0x14004a8a2
add qword [rdi + 0x288], rax
mov r13, qword [rbp + 0x160]
add r12, 0x18
mov r8d, dword [rbp - 0x74]
xor r15d, r15d
jmp 0x14004636c
add qword [r13 + 0x50], rax
mov r13, qword [rbp + 0x160]
add r12, 0x18
mov r8d, dword [rbp - 0x74]
xor r15d, r15d
jmp 0x14004636c
cmp dword [r12 + 4], 0
je 0x14004a8e6
cmp qword [rdi + 0x288], 0
jne case.0x1400463a0.86
cmp qword [rdi + 0x290], 0
je 0x14004b895
jmp case.0x1400463a0.86
cmp qword [r13 + 0x50], 0
jne case.0x1400463a0.86
cmp qword [rdi + 0x290], 0
je 0x14004b895
jmp case.0x1400463a0.86
mov rcx, qword [r13 + 0x100]
test rcx, rcx
je 0x14004a93f
mov rax, qword [rcx + 8]
test rax, rax
je 0x14004a92c
nop dword [rax]
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x14004a920
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x20]
jmp 0x14004a94f
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r11
mov rcx, rdi
call fcn.14003b140
mov r12, qword [rsp + 0x30]
movsxd rax, dword [r12 + 8]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x40]
mov rcx, rbx
call fcn.14003b140
mov rax, qword [rbx]
mov r11, qword [rsp + 0x40]
mov edx, dword [rsp + 0x38]
cmp qword [rdi], rax
jge 0x1400475f8
mov qword [rdi], rax
mov r10d, 1
mov rdi, qword [rsp + 0x48]
jmp case.0x1400463a0.86
mov rax, qword [rsp + 0x30]
mov r12, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + r11]
test rdx, rdx
jle 0x140046b43
mov rax, r12
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + r11], rdx
jmp 0x14004b895
mov rcx, qword [rsp + 0x30]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
mov rcx, r13
imul rdi, rax, 0x38
add rbx, r11
add rdi, r11
call fcn.140046280
mov rcx, qword [rbx]
mov rsi, rax
mov qword [rbp + 0x28], rcx
test rcx, rcx
jle 0x14004aa24
mov rdx, qword [rdi]
lea rcx, [rbp + 0x28]
test rdx, rdx
cmovle rdx, r15
call fcn.14001ba30
test eax, eax
jne 0x14004aa24
mov rax, qword [rbp + 0x28]
mov qword [rsi], rax
jmp 0x140046828
mov qword [rsi], 0xffffffffffffffff
jmp 0x140046828
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
test rax, rax
je 0x1400477f4
mov r12, qword [rsp + 0x30]
jle 0x14004b895
dec rax
mov qword [rcx + r11], rax
jmp 0x14004b895
mov rax, qword [rsp + 0x30]
movabs r8, 0x8000000000000000
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
cmp rax, r8
jle 0x14004aa88
dec rax
mov qword [rcx + r11], rax
mov r12, qword [rsp + 0x30]
test rax, rax
je 0x14004b895
jmp case.0x1400463a0.86
mov rax, qword [rsp + 0x30]
mov r14, qword [rsp + 0x48]
mov rcx, r14
movzx edi, word [rax + 2]
mov esi, edi
lea rdx, [rdi*8 + 0x68]
call fcn.1400174f0
mov rbx, rax
test rax, rax
je 0x14004be1d
add rsi, 6
mov qword [rax + 0x10], r15
mov r8d, 1
mov rdx, r14
lea rcx, [rax + rsi*8]
mov qword [rax], rcx
call fcn.14003b3e0
mov rax, qword [rsp + 0x30]
movabs rdx, 0xaaaaaaaaaaaaaaab
mov rsi, qword [rsp + 0x50]
mov r11, qword [rsp + 0x40]
mov rcx, qword [rax + 0x10]
mov qword [rbx + 8], rcx
mov rcx, rax
mov byte [rbx + 0x29], dil
sub rcx, rsi
mov qword [rbx + 0x18], r13
mov rdi, r14
movzx r14d, byte [rbp + 0x170]
mov byte [rbx + 0x28], 0
mov dword [rbx + 0x24], r15d
sar rcx, 3
imul rcx, rdx
mov dword [rbx + 0x20], ecx
mov word [rax], 0xf09b
mov qword [rax + 0x10], rbx
jmp 0x14004ab41
mov rax, qword [rsp + 0x30]
mov rbx, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul r10, rax, 0x38
add r10, r11
mov qword [rbp + 0x178], r10
cmp qword [rbx + 0x10], r10
je 0x14004aba8
movzx eax, byte [rbx + 0x29]
mov edx, eax
mov qword [rbx + 0x10], r10
sub rdx, 1
lea r9d, [rax - 1]
js 0x14004aba8
mov r10, qword [rsp + 0x30]
lea r8, [rdx + 6]
lea r8, [rbx + r8*8]
nop
mov eax, dword [r10 + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, r11
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x14004ab80
mov r10, qword [rbp + 0x178]
inc dword [r10 + 0xc]
lea r8, [rbx + 0x30]
mov r12, qword [rsp + 0x30]
mov rcx, rbx
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x29]
cmp dword [r12 + 4], 0
je 0x14004abcd
call qword [rax + 0x30]
jmp 0x14004abd0
call qword [rax + reloc.ODBC32.dll_SQLAllocHandle]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x14004b79c
jle 0x14004abfe
mov rcx, qword [rbx]
call fcn.140042f70
mov r8, rax
lea rdx, [0x1401615c0]
mov rcx, r13
call fcn.14003c650
mov eax, dword [rbx + 0x24]
mov dword [rsp + 0x3c], eax
cmp byte [rbx + 0x28], 0
je 0x14004ac2d
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax - 0x14]
test eax, eax
je 0x14004ac24
imul rcx, rax, 0x38
mov edx, 1
add rcx, qword [rsp + 0x40]
call fcn.14003b460
mov r12, qword [rsp + 0x30]
mov byte [rbx + 0x28], 0
mov rcx, qword [rbx]
call fcn.14003af80
cmp dword [rsp + 0x3c], 0
mov r10d, 1
mov rax, qword [rbx]
mov word [rax + 8], r10w
mov dword [rbx + 0x24], r15d
jne 0x14004bb1f
jmp 0x140046b3e
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add rbx, r11
test eax, eax
je 0x14004ac9c
mov r8, qword [rcx + 0x10]
mov rcx, rbx
imul rdx, rax, 0x38
add rdx, r11
call fcn.14003add0
mov ecx, eax
mov dword [rsp + 0x3c], eax
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x40]
jmp 0x14004acae
mov rdx, qword [rcx + 0x10]
mov rcx, rbx
call fcn.14003aca0
mov ecx, eax
mov dword [rsp + 0x3c], eax
test ecx, ecx
mov rcx, rbx
jne 0x14004bb29
movzx edx, r14b
call fcn.14003a800
mov rcx, rbx
call fcn.14003b660
test eax, eax
jne 0x14004bbdc
jmp 0x1400468b9
mov rbx, qword [rsp + 0x30]
lea rax, [rbp - 0x10]
lea r9, [rbp - 0x14]
mov dword [rbp - 0x18], r15d
mov rcx, rdi
mov qword [rbp - 0x14], 0xffffffffffffffff
mov qword [rsp + 0x20], rax
mov r8d, dword [rbx + 8]
mov edx, dword [rbx + 4]
call fcn.1400be690
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
je 0x14004ad25
cmp eax, 5
jne 0x14004be31
mov ecx, 1
mov dword [rsp + 0x3c], r15d
mov dword [rbp - 0x18], ecx
movsxd rax, dword [rbx + 0xc]
mov rbx, r15
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x40]
nop word [rax + rax]
movsxd rdx, dword [rbp + rbx*4 - 0x18]
mov rcx, rdi
call fcn.14003b460
inc rbx
add rdi, 0x38
cmp rbx, 3
jl 0x14004ad40
mov rdi, qword [rsp + 0x48]
jmp 0x1400468b9
mov rdx, qword [rsp + 0x30]
mov rcx, r13
call fcn.140046280
mov rcx, qword [rdi + 0x20]
mov r14, rax
mov rax, qword [rsp + 0x30]
movsxd rdx, dword [rax + 4]
mov ebx, dword [rax + 0xc]
shl rdx, 5
mov r15, qword [rdx + rcx + 8]
mov rcx, r15
call fcn.140038120
mov rcx, rax
mov rsi, rax
call fcn.140028220
cmp ebx, 0xffffffff
mov rcx, rsi
mov edi, eax
cmove ebx, eax
call fcn.140028230
test eax, eax
mov r12d, 1
mov edx, r12d
mov rcx, rsi
cmove ebx, edi
call fcn.140027ec0
cmp ebx, 5
jne 0x14004ae45
mov rcx, rax
call fcn.14001a760
test eax, eax
je 0x14004ade3
mov rcx, rsi
call fcn.140028250
test eax, eax
jne 0x14004ae45
mov ebx, edi
mov eax, dword [rsp + 0x3c]
test eax, eax
je 0x14004adef
mov ebx, edi
mov edx, ebx
mov rcx, rsi
call fcn.1400280b0
mov ecx, 0xa02
mov word [r14 + 8], cx
mov ecx, eax
call fcn.140082f20
mov rcx, rax
mov qword [r14 + 0x10], rax
call fcn.14001a760
movzx edx, byte [rbp + 0x170]
mov rcx, r14
mov dword [r14 + 0xc], eax
mov byte [r14 + 0xa], r12b
call fcn.14003a800
mov r12d, dword [rsp + 0x3c]
test r12d, r12d
jne 0x14004be31
mov r12, qword [rsp + 0x30]
jmp 0x140046f13
cmp ebx, edi
je 0x14004ade5
cmp edi, 5
je 0x14004ae53
cmp ebx, 5
jne 0x14004ade5
mov rax, qword [rsp + 0x48]
cmp byte [rax + 0x5f], 0
je 0x14004bb4a
cmp dword [rax + 0xcc], r12d
jg 0x14004bb4a
cmp edi, 5
jne 0x14004ae97
mov rdx, rax
mov rcx, rsi
call fcn.140028560
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x14004aded
mov edx, ebx
mov rcx, rsi
call fcn.1400280b0
jmp 0x14004aeb2
cmp edi, 4
jne 0x14004aea7
lea edx, [rdi - 2]
mov rcx, rsi
call fcn.1400280b0
cmp dword [rsp + 0x3c], 0
jne 0x14004aded
xor edx, edx
mov rcx, r15
cmp ebx, 5
sete dl
inc edx
call fcn.140039630
mov dword [rsp + 0x3c], eax
jmp 0x14004ade9
mov rax, qword [rsp + 0x30]
movsxd rax, dword [rax + 8]
test eax, eax
je 0x14004aee3
imul r9, rax, 0x38
add r9, r11
jmp 0x14004aee6
mov r9, r15
mov rax, qword [rsp + 0x30]
lea rcx, [r13 + 0xa8]
mov rdx, rdi
mov r8d, dword [rax + 4]
call fcn.14009ec30
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
jne 0x14004be31
jmp 0x1400468b9
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [rdi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
call fcn.14002f8c0
mov dword [rsp + 0x3c], eax
mov r12d, eax
test eax, eax
je 0x14004b797
cmp eax, 0x65
jne 0x14004be31
mov dword [rsp + 0x3c], r15d
mov r12, qword [rsp + 0x30]
mov r10d, 1
jmp 0x14004b895
mov rax, qword [rsp + 0x30]
cmp dword [rax + 4], 0
jne 0x14004af75
mov edx, dword [rax + 8]
mov rcx, rdi
call fcn.140042990
jmp 0x1400468b9
mov eax, dword [rax + 8]
mov r12, qword [rsp + 0x30]
inc eax
xor eax, dword [r13 + 0xc8]
and eax, 3
xor dword [r13 + 0xc8], eax
jmp case.0x1400463a0.86
mov rax, qword [rsp + 0x30]
mov rcx, rdi
mov rbx, qword [rax + 0x10]
mov rdx, rbx
call fcn.1400a10f0
mov dword [rsp + 0x3c], eax
mov r12d, eax
test rbx, rbx
je 0x14004afc1
mov rdx, qword [rbx + 0x10]
mov rcx, r13
call fcn.1400429c0
test r12d, r12d
jne 0x14004be31
jmp 0x1400468b9
mov rax, qword [rsp + 0x30]
lea rcx, [rbp + 0x78]
xorps xmm0, xmm0
mov qword [rbp + 0x78], r15
xorps xmm1, xmm1
mov qword [rbp + 0xa8], r15
movdqu xmmword [rbp + 0x80], xmm0
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
movdqu xmmword [rbp + 0x90], xmm1
mov qword [rbp + 0xa0], rdi
add rdx, r11
call fcn.14003b710
lea rcx, [rbp + 0x78]
mov dword [rsp + 0x3c], eax
call fcn.140042f70
test rax, rax
je 0x14004b040
mov r8, rax
lea r9, [r13 + 0xa8]
mov rax, qword [rsp + 0x30]
mov rcx, rdi
mov edx, dword [rax + 4]
call fcn.1400a0850
mov dword [rsp + 0x3c], eax
lea rcx, [rbp + 0x78]
call fcn.14003af80
mov r12d, dword [rsp + 0x3c]
test r12d, r12d
jne 0x14004be31
jmp 0x1400468b9
mov rax, qword [rsp + 0x30]
mov rcx, rdi
inc dword [rdi + 0xd8]
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.1400a0d90
dec dword [rdi + 0xd8]
mov r12d, eax
mov dword [rsp + 0x3c], eax
test eax, eax
jne 0x14004be31
jmp 0x1400468b9
mov rax, qword [rsp + 0x30]
mov qword [rbp + 0x178], r15
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x14004bbab
mov rdi, qword [rbx]
test rdi, rdi
je 0x14004bbab
lea rdx, [rbp + 0x178]
mov rcx, rbx
call qword [rdi + 0x30]
mov rdx, rbx
mov rcx, r13
mov dword [rsp + 0x3c], eax
call fcn.1400429c0
mov r12d, dword [rsp + 0x3c]
test r12d, r12d
jne 0x14004be31
mov rax, qword [rbp + 0x178]
lea r9d, [r12 - 1]
xor r8d, r8d
mov byte [rsp + 0x20], 2
mov rcx, r13
mov qword [rax], rbx
mov rax, qword [rsp + 0x30]
mov edx, dword [rax + 4]
call fcn.140045e60
mov rcx, qword [rbp + 0x178]
test rax, rax
je 0x14004bb78
mov rdi, qword [rsp + 0x48]
mov qword [rax + 0x38], rcx
inc dword [rbx + 8]
jmp 0x1400468b9
mov rcx, qword [rsp + 0x30]
mov rbx, qword [r13 + 0x70]
movsxd rax, dword [rcx + 0xc]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [r13 + 0x78]
mov r15, qword [rax + rcx*8]
lea r10, [rdx + 0x38]
mov r12d, dword [rdx + r11]
add r10, r11
xor edx, edx
mov rdi, qword [r15 + 0x38]
movsxd r9, dword [r10]
mov r14, qword [rdi]
mov rsi, qword [r14]
test r9d, r9d
jle 0x14004b189
mov r8d, 1
nop dword [rax]
movsxd rax, r8d
inc r8d
imul rcx, rax, 0x38
add rcx, r10
mov qword [rbx + rdx*8], rcx
inc rdx
cmp rdx, r9
jl 0x14004b170
mov rax, qword [rsp + 0x30]
mov edx, r12d
mov rcx, rdi
mov qword [rsp + 0x20], rbx
mov r8, qword [rax + 0x10]
call qword [rsi + 0x40]
mov rdx, r14
mov rcx, r13
mov dword [rsp + 0x3c], eax
call fcn.1400429c0
mov r12d, dword [rsp + 0x3c]
test r12d, r12d
jne 0x14004be31
mov rcx, rdi
call qword [rsi + 0x50]
mov byte [r15 + 2], r12b
test eax, eax
je 0x14004ae3b
mov r12, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x50]
mov r10d, 1
jmp 0x14004b895
mov rbx, qword [rsp + 0x30]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [rbx + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [rbx + 0xc]
imul rbx, rax, 0x38
add rbx, r11
cmp byte [rdi + 2], 0
je 0x14004b218
mov rcx, rbx
call fcn.14003b400
mov rdi, qword [rsp + 0x48]
jmp 0x1400468b9
mov rax, qword [rdi + 0x38]
xorps xmm0, xmm0
xorps xmm1, xmm1
mov rsi, qword [rax]
mov rax, qword [rsp + 0x30]
mov r14, qword [rsi]
test byte [rax + 2], 1
movdqu xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x68], rbx
movdqu xmmword [rbp - 0x50], xmm1
movdqu xmmword [rbp - 0x40], xmm0
je 0x14004b258
mov rcx, rbx
call fcn.14003b400
mov eax, 0x4001
mov dword [rbx], r15d
jmp 0x14004b268
movzx eax, word [rbx + 8]
mov ecx, 0x3e40
and ax, cx
or ax, 1
mov word [rbx + 8], ax
lea rdx, [rbp - 0x68]
mov rax, qword [rsp + 0x30]
mov rcx, qword [rdi + 0x38]
mov r8d, dword [rax + 8]
call qword [r14 + reloc.WLDAP32.dll_Ordinal_88]
mov rdx, rsi
mov rcx, r13
mov dword [rsp + 0x3c], eax
call fcn.1400429c0
cmp dword [rbp - 0x44], 0
jle 0x14004b2b7
mov rcx, rbx
call fcn.140042f70
mov r8, rax
lea rdx, [0x1401615c0]
mov rcx, r13
call fcn.14003c650
mov eax, dword [rbp - 0x44]
mov dword [rsp + 0x3c], eax
movzx r14d, byte [rbp + 0x170]
mov rcx, rbx
mov edx, r14d
call fcn.14003a800
mov rcx, rbx
call fcn.14003b660
test eax, eax
jne 0x14004bbdc
mov r12d, dword [rsp + 0x3c]
test r12d, r12d
jne 0x14004be31
jmp 0x140046828
mov rax, qword [rsp + 0x30]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], 0
jne 0x140048c53
mov rcx, qword [rdi + 0x38]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + Ordinal_73]
mov rdx, rbx
mov rcx, r13
mov dword [rsp + 0x3c], eax
call fcn.1400429c0
mov r12d, dword [rsp + 0x3c]
test r12d, r12d
jne 0x14004be31
mov rcx, qword [rdi + 0x38]
call qword [rsi + 0x50]
mov rdi, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
test eax, eax
jne 0x14004b360
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea rax, [rsi + rcx*8]
mov qword [rsp + 0x30], rax
mov eax, dword [rdi + 0x160]
test eax, eax
je 0x1400468b9
movzx ebx, byte [rbp + 0x168]
cmp byte [rdi + 0x61], 0
mov eax, 9
mov esi, 7
cmovne eax, esi
mov ecx, eax
mov dword [rsp + 0x3c], eax
mov dword [r13 + 0x38], eax
call fcn.1400bd920
mov r8, rax
lea rdx, [0x1401615c0]
mov rcx, r13
call fcn.14003c650
mov r12d, dword [rsp + 0x3c]
jmp 0x14004be3d
mov rcx, qword [rsp + 0x30]
mov edx, r10d
mov edi, dword [rdi + 0x30]
mov rax, qword [rsp + 0x48]
and edi, 0x4000000
or qword [rax + 0x30], 0x4000000
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax + 0x10]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
add rbx, r11
mov rcx, rbx
call fcn.14003a800
mov r12d, eax
test eax, eax
jne 0x14004be31
mov rax, qword [rsi]
mov rcx, rsi
mov rdx, qword [rbx + 0x10]
call qword [rax + Ordinal_157]
test edi, edi
mov rdi, qword [rsp + 0x48]
mov dword [rsp + 0x3c], eax
jne 0x14004b41a
and qword [rdi + 0x30], 0xfffffffffbffffff
mov rdx, rsi
mov rcx, r13
call fcn.1400429c0
and dword [r13 + 0xc8], 0xfffffffc
mov r12d, dword [rsp + 0x3c]
test r12d, r12d
jne 0x14004be31
mov r12, qword [rsp + 0x30]
jmp 0x140046832
cmp byte [rdi + 0x61], 0
jne 0x14004bb80
mov rax, qword [rsp + 0x30]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x14004bbab
mov r11, qword [rbx]
test r11, r11
je 0x14004bbab
cmp qword [r11 + 0x68], 0
mov r12, qword [rsp + 0x30]
movsxd rdx, dword [r12 + 8]
je 0x140046b3e
movsxd rax, dword [r12 + 0xc]
movzx edi, byte [rdi + 0x66]
mov r10, qword [r13 + 0x70]
imul rcx, rax, 0x38
mov rax, r15
add rcx, qword [rsp + 0x40]
test edx, edx
jle 0x14004b4c0
nop dword [rax]
nop word [rax + rax]
mov qword [r10 + rax*8], rcx
add rcx, 0x38
inc rax
cmp rax, rdx
jl 0x14004b4b0
mov rax, qword [rsp + 0x30]
lea r9, [rbp + 0x38]
mov rsi, qword [rsp + 0x48]
mov r8, r10
mov rcx, rbx
movzx eax, byte [rax + 2]
mov byte [rsi + 0x66], al
call qword [r11 + 0x68]
mov rdx, rbx
mov byte [rsi + 0x66], dil
mov rcx, r13
mov dword [rsp + 0x3c], eax
mov r12d, eax
call fcn.1400429c0
test r12d, r12d
jne 0x14004b514
mov r12, qword [rsp + 0x30]
mov rdi, rsi
cmp dword [r12 + 4], 0
je 0x14004b54b
mov rax, qword [rbp + 0x38]
mov qword [rsi + 0x38], rax
jmp 0x14004b54b
cmp r12b, 0x13
mov r12, qword [rsp + 0x30]
jne 0x14004b548
mov rax, r12
mov rax, qword [rax + 0x10]
cmp byte [rax + 0x1c], 0
je 0x14004b548
movzx ecx, word [r12 + 2]
cmp ecx, 4
jne 0x14004bbb6
mov dword [rsp + 0x3c], r15d
mov rdi, rsi
jmp 0x140046832
mov rdi, rsi
inc dword [r13 + 0x3c]
cmp dword [rsp + 0x3c], 0
jne 0x14004bb1f
jmp 0x140046832
mov rdx, qword [rsp + 0x30]
mov rcx, r13
call fcn.140046280
mov rcx, qword [rdi + 0x20]
mov rbx, rax
mov rax, qword [rsp + 0x30]
movsxd rdx, dword [rax + 4]
shl rdx, 5
mov rcx, qword [rdx + rcx + 8]
call fcn.14002d6d0
mov ecx, eax
mov qword [rbx], rcx
jmp 0x1400468b9
mov rdx, qword [rsp + 0x30]
mov rcx, r13
call fcn.140046280
mov r8, qword [rsp + 0x30]
mov rdi, rax
mov rax, qword [rsp + 0x48]
movsxd rdx, dword [r8 + 4]
mov rcx, qword [rax + 0x20]
mov eax, r15d
shl rdx, 5
cmp dword [r8 + 0xc], 0
mov rbx, qword [rdx + rcx + 8]
je 0x14004b5e3
mov rcx, rbx
call fcn.14002d6d0
mov r12, qword [rsp + 0x30]
cmp eax, dword [r12 + 0xc]
cmovb eax, dword [r12 + 0xc]
jmp 0x14004b5e8
mov r12, qword [rsp + 0x30]
mov edx, eax
mov rcx, rbx
call fcn.14002e1d0
mov r11, qword [rsp + 0x40]
mov r10d, 1
movsxd rcx, eax
mov qword [rdi], rcx
mov rdi, qword [rsp + 0x48]
jmp 0x140046b43
mov rax, qword [rsp + 0x30]
mov rcx, rdi
movzx ebx, word [rax + 2]
lea rdx, [rbx*8 + 0x30]
call fcn.1400174f0
test rax, rax
je 0x14004bb80
mov rdx, qword [rsp + 0x30]
mov r11, qword [rsp + 0x40]
mov qword [rax], r15
mov rcx, qword [rdx + 0x10]
mov qword [rax + 8], rcx
mov rcx, rdx
sub rcx, rsi
mov qword [rax + 0x18], r13
sar rcx, 3
movabs rdx, 0xaaaaaaaaaaaaaaab
imul rcx, rdx
mov dword [rax + 0x24], r15d
mov dword [rax + 0x20], ecx
mov rcx, qword [rsp + 0x30]
mov byte [rax + 0x29], bl
add byte [rcx], 2
mov byte [rcx + 1], 0xf0
mov qword [rcx + 0x10], rax
jmp 0x14004b681
mov rcx, qword [rsp + 0x30]
movsxd rax, dword [rcx + 0xc]
mov rbx, qword [rcx + 0x10]
imul rdi, rax, 0x38
add rdi, r11
mov qword [rbp + 0x178], rdi
cmp qword [rbx], rdi
je 0x14004b6e7
movzx eax, byte [rbx + 0x29]
mov edx, eax
mov qword [rbx], rdi
sub rdx, 1
lea r9d, [rax - 1]
js 0x14004b6e7
mov rdi, qword [rsp + 0x30]
lea r8, [rdx + 6]
lea r8, [rbx + r8*8]
nop dword [rax]
mov eax, dword [rdi + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, r11
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x14004b6c0
mov rdi, qword [rbp + 0x178]
mov eax, 0x3e40
lea r8, [rbx + 0x30]
and word [rdi + 8], ax
mov rcx, rbx
or word [rdi + 8], 1
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x29]
call qword [rax + reloc.ODBC32.dll_SQLAllocHandle]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x14004b761
jle 0x14004b731
mov rcx, rdi
call fcn.140042f70
mov r8, rax
lea rdx, [0x1401615c0]
mov rcx, r13
call fcn.14003c650
mov eax, dword [rbx + 0x24]
mov dword [rsp + 0x3c], eax
mov rax, qword [rsp + 0x30]
lea rdx, [r13 + 0x120]
mov r8d, dword [rbx + 0x20]
mov rcx, qword [rsp + 0x48]
mov r9d, dword [rax + 4]
call fcn.1400407d0
mov r12d, dword [rsp + 0x3c]
mov dword [rbx + 0x24], r15d
test r12d, r12d
jne 0x14004be31
test byte [rdi + 8], 0x12
je 0x14004b797
movzx edx, r14b
mov rcx, rdi
call fcn.14003a800
mov rcx, rdi
call fcn.14003b660
test eax, eax
jne 0x14004bbdc
mov rdi, qword [rsp + 0x48]
jmp 0x1400468b9
mov r12, qword [rsp + 0x30]
jmp 0x1400475f8
mov r12, qword [rsp + 0x30]
mov edx, dword [rsp + 0x38]
mov r11, qword [rsp + 0x40]
jmp 0x1400475f8
test byte [rdi + 0x68], 1
je 0x14004b839
test byte [r13 + 0xc8], 0x10
jne 0x14004b839
mov r9, qword [r12 + 0x10]
test r9, r9
jne 0x14004b7d4
mov r9, qword [r13 + 0xf0]
test r9, r9
je 0x14004b839
cmp dword [rdi + 0xd4], 1
jle 0x14004b817
mov r8, r9
lea rdx, str.____s
mov rcx, rdi
call fcn.140019b60
mov rdx, qword [rdi + 0xf0]
mov r9, rax
mov r8, r13
mov ecx, 1
mov rbx, rax
call qword [rdi + 0xe8]
mov rdx, rbx
mov rcx, rdi
call fcn.140017190
jmp 0x14004b82a
mov rdx, qword [rdi + 0xf0]
mov r8, r13
mov ecx, r10d
call qword [rdi + 0xe8]
mov edx, dword [rsp + 0x38]
mov r10d, 1
mov r11, qword [rsp + 0x40]
mov eax, dword [r12 + 4]
cmp eax, dword [0x1401abcf0]
jl 0x14004b887
cmp byte [r12], 0xa8
je case.0x1400463a0.86
cmp dword [r13 + 0x90], 1
mov edx, r10d
jle 0x14004b884
mov eax, reloc.ODBC32.dll_SQLAllocHandle
mov rcx, qword [r13 + 0x88]
cmp byte [rax + rcx], 0x11
jne 0x14004b875
mov dword [rax + rcx + 4], r15d
inc edx
add rax, 0x18
cmp edx, dword [r13 + 0x90]
jl 0x14004b863
mov eax, r15d
inc eax
mov dword [r12 + 4], eax
inc dword [r13 + 0xec]
mov eax, dword [r12 + 8]
dec eax
cdqe
lea rcx, [rax + rax*2]
lea r12, [rsi + rcx*8]
jmp 0x140046b31
mov r12, qword [rsp + 0x30]
movzx r14d, byte [rbp + 0x170]
jmp case.0x1400463a0.86
mov rcx, qword [rsp + 0x30]
mov dword [r13 + 0x38], edx
movzx eax, byte [rcx + 8]
mov byte [r13 + 0xc2], al
mov dword [r13 + 0x34], ebx
test edx, edx
je 0x14004b971
movzx eax, word [rcx + 2]
test ax, ax
je 0x14004b934
mov r8d, eax
lea rdx, str._s_constraint_failed
lea rax, [0x140000000]
mov rcx, r13
mov r8, qword [rax + r8*8 + 0x148120]
call fcn.14003c650
mov rax, qword [rsp + 0x30]
mov r9, qword [rax + 0x10]
test r9, r9
je 0x14004b947
mov r8, qword [r13 + 0xa8]
lea rdx, str._z:__s
mov rcx, rdi
call fcn.140019b60
mov qword [r13 + 0xa8], rax
jmp 0x14004b947
mov r8, qword [rcx + 0x10]
lea rdx, [0x1401615c0]
mov rcx, r13
call fcn.14003c650
mov rax, qword [r13 + 0xa8]
lea rdx, str.abort_at__d_in___s_:__s
mov r9, qword [r13 + 0xf0]
mov r8d, ebx
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x30]
mov ecx, dword [rax + 4]
call fcn.140019dd0
mov rcx, r13
call fcn.1400400d0
cmp eax, 5
jne 0x14004bdbd
mov dword [r13 + 0x38], eax
jmp 0x14004bf0b
mov r12d, SQLAllocHandle
jmp 0x14004be31
lea rax, [0x140166684]
mov r9d, 0x152d5
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
mov ecx, reloc.Cabinet.dll_FCIAddFile
call fcn.140019dd0
mov r12d, reloc.Cabinet.dll_FCIAddFile
jmp 0x14004be2a
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, r13
call fcn.14003c650
mov r12d, 5
jmp 0x14004be31
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
mov rcx, r13
call fcn.14003c650
mov r12d, 5
jmp 0x14004be31
mov r13, qword [rbp + 0x160]
movabs rcx, 0xaaaaaaaaaaaaaaab
mov rax, qword [rsp + 0x30]
sub rax, qword [rsp + 0x50]
sar rax, 3
imul rax, rcx
mov dword [r13 + 0x34], eax
mov eax, 5
mov byte [rdi + 0x5f], 0
mov dword [r13 + 0x38], eax
jmp 0x14004bf0b
mov r12d, 8
jmp 0x14004be31
cmp al, 5
jne 0x14004be31
mov rax, qword [rsp + 0x30]
movabs rcx, 0xaaaaaaaaaaaaaaab
sub rax, rsi
sar rax, 3
imul rax, rcx
mov dword [r13 + 0x34], eax
mov eax, dword [rsp + 0x3c]
mov dword [r13 + 0x38], eax
jmp 0x14004bf0b
mov rdx, qword [r13 + 0xa8]
test rdx, rdx
je 0x14004ba8a
mov rcx, rdi
call fcn.140017100
lea rdx, str.database_schema_has_changed
mov rcx, rdi
call fcn.1400177b0
mov qword [r13 + 0xa8], rax
mov rax, qword [rsp + 0x30]
movsxd rdx, dword [rax + 4]
mov rax, qword [rdi + 0x20]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rbp + 0x178]
cmp dword [rcx], eax
je 0x14004bacb
mov rcx, rdi
call fcn.1400666f0
and dword [r13 + 0xc8], 0xfffffffd
mov r12d, 0x11
or dword [r13 + 0xc8], 1
jmp 0x14004be31
mov r12d, 0x204
jmp 0x14004be31
mov r12d, 6
mov byte [r13 + 0xc2], 2
jmp 0x14004be31
call fcn.140066770
jmp 0x14004bb80
lea rdx, str.too_many_levels_of_trigger_recursion
mov dword [rsp + 0x3c], r10d
mov rcx, r13
call fcn.14003c650
mov r12d, dword [rsp + 0x3c]
jmp 0x14004be31
call fcn.140042f70
mov r8, rax
lea rdx, [0x1401615c0]
mov rcx, r13
call fcn.14003c650
mov r12d, dword [rsp + 0x3c]
jmp 0x14004be31
cmp ebx, 5
mov dword [rsp + 0x3c], r12d
lea rax, str.into
mov rcx, r13
lea r8, str.out_of
cmove r8, rax
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
call fcn.14003c650
jmp 0x14004be31
call qword [rdi + 0x38]
mov rdi, qword [rsp + 0x48]
movzx ebx, byte [rbp + 0x168]
mov rcx, rdi
call fcn.140017a40
lea rdx, str.out_of_memory
mov rcx, r13
call fcn.14003c650
mov esi, 7
mov r12d, esi
jmp 0x14004be3d
mov r12d, 6
jmp 0x14004be31
mov r12d, dword [rsp + 0x3c]
cmp ecx, 5
movzx eax, cl
mov ecx, 2
cmove eax, ecx
mov byte [r13 + 0xc2], al
jmp 0x14004be31
mov r13, qword [rbp + 0x160]
lea rdx, str.string_or_blob_too_big
mov rcx, r13
call fcn.14003c650
mov r12d, 0x12
jmp 0x14004be31
xor edx, edx
mov rcx, r13
call fcn.140040080
mov r12d, eax
test eax, eax
jne 0x14004be31
mov rax, qword [r13]
cmp dword [rax + 0x280], r12d
je 0x14004bc2b
cmp dword [r13 + 0x40], r12d
je 0x14004bc2b
lea edx, [r12 + 1]
mov rcx, r13
call fcn.14003fdd0
mov eax, dword [r13 + 0x30]
mov rdx, qword [rsp + 0x30]
add eax, 2
or eax, 1
mov dword [r13 + 0x30], eax
movsxd rax, dword [rdx + 4]
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x40]
mov qword [r13 + 0xa0], rdi
cmp dword [rdx + 8], 0
jle 0x14004bcb0
lea rbx, [rdi + 8]
mov r14d, 0x202
mov eax, 0x1000
test word [rbx], ax
je 0x14004bc88
movsxd rax, r15d
imul rcx, rax, 0x38
add rcx, rdi
call fcn.14003aab0
test eax, eax
jne 0x14004bb7b
mov rdx, qword [rsp + 0x30]
movzx eax, word [rbx]
and ax, r14w
cmp ax, 2
jne 0x14004bca3
lea rcx, [rbx - 8]
call fcn.14003aa50
mov rdx, qword [rsp + 0x30]
inc r15d
add rbx, 0x38
cmp r15d, dword [rdx + 8]
jl 0x14004bc62
mov rdi, qword [rsp + 0x48]
cmp byte [rdi + 0x61], 0
jne 0x14004bb80
test byte [rdi + 0x68], 4
je 0x14004bcdc
mov rdx, qword [rdi + 0xf0]
xor r9d, r9d
mov r8, r13
lea ecx, [r9 + 4]
call qword [rdi + 0xe8]
mov rax, qword [rsp + 0x30]
movabs rcx, 0xaaaaaaaaaaaaaaab
sub rax, rsi
sar rax, 3
imul rax, rcx
inc eax
mov dword [r13 + 0x34], eax
mov eax, 0x64
jmp 0x14004bf0b
mov rax, qword [rsp + 0x30]
mov ebx, dword [rax + 4]
mov ecx, dword [rax + 8]
movzx eax, byte [rdi + 0x5f]
cmp ebx, eax
je 0x14004bdd4
test ecx, ecx
je 0x14004bd32
mov edx, 0x204
mov rcx, rdi
call fcn.1400bd7f0
mov al, 1
jmp 0x14004bd6f
test ebx, ebx
je 0x14004bd59
cmp dword [rdi + 0xd0], 0
jle 0x14004bd59
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
mov rcx, r13
call fcn.14003c650
mov r12d, 5
jmp 0x14004be31
mov edx, r10d
mov rcx, r13
call fcn.140040080
test eax, eax
jne 0x14004bf0b
movzx eax, bl
mov rcx, r13
mov byte [rdi + 0x5f], al
call fcn.1400400d0
cmp eax, 5
jne 0x14004bdb5
mov rax, qword [rsp + 0x30]
movabs rcx, 0xaaaaaaaaaaaaaaab
sub rax, rsi
sar rax, 3
imul rax, rcx
mov dword [r13 + 0x34], eax
mov eax, 1
sub al, bl
mov byte [rdi + 0x5f], al
mov eax, 5
mov dword [r13 + 0x38], eax
jmp 0x14004bf0b
mov rcx, rdi
call fcn.1400bcdb0
cmp dword [r13 + 0x38], 0
mov eax, 0x65
mov ecx, 1
cmovne eax, ecx
jmp 0x14004bf0b
test ebx, ebx
jne 0x14004bded
lea rdx, str.cannot_start_a_transaction_within_a_transaction
mov rcx, r13
call fcn.14003c650
lea r12d, [rbx + 1]
jmp 0x14004be31
test ecx, ecx
lea rax, str.cannot_rollback___no_transaction_is_active
lea rdx, str.cannot_commit___no_transaction_is_active
mov rcx, r13
cmovne rdx, rax
call fcn.14003c650
mov r12d, 1
jmp 0x14004be31
mov r13, qword [rbp + 0x160]
jmp 0x14004bb7b
mov rdi, r14
jmp 0x14004bb80
mov r12d, dword [rsp + 0x3c]
mov r13, qword [rbp + 0x160]
movzx ebx, byte [rbp + 0x168]
mov esi, 7
mov rdi, qword [rsp + 0x48]
cmp byte [rdi + 0x61], 0
cmovne r12d, esi
cmp qword [r13 + 0xa8], 0
mov dword [rsp + 0x3c], r12d
jne 0x14004be7c
cmp r12d, 0xc0a
je 0x14004be7c
mov ecx, r12d
call fcn.1400bd920
mov r8, rax
lea rdx, [0x1401615c0]
mov rcx, r13
call fcn.14003c650
mov edx, r12d
mov dword [r13 + 0x38], r12d
mov rcx, rdi
call fcn.14001a810
mov r8, qword [rsp + 0x30]
lea rdx, str.statement_aborts_at__d:___s___s
sub r8, qword [rsp + 0x50]
movabs rax, 0xaaaaaaaaaaaaaaab
mov r9, qword [r13 + 0xf0]
mov ecx, dword [rsp + 0x3c]
sar r8, 3
imul r8, rax
mov rax, qword [r13 + 0xa8]
mov qword [rsp + 0x20], rax
call fcn.140019dd0
mov rcx, r13
call fcn.1400400d0
cmp dword [rsp + 0x3c], 0xc0a
jne 0x14004bee4
mov rcx, rdi
call fcn.140017a40
mov eax, 1
mov dword [rsp + 0x3c], eax
test bl, bl
je 0x14004bf0b
movzx edx, bl
mov rcx, rdi
dec edx
call fcn.1400666f0
mov eax, dword [rsp + 0x3c]
jmp 0x14004bf0b
mov r13, qword [rbp + 0x160]
mov ecx, dword [rbp - 0x74]
add dword [r13 + 0xe4], ecx
movaps xmm6, xmmword [rsp + 0x200]
movaps xmm7, xmmword [rsp + 0x1f0]
add rsp, 0x218
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret