Function at 0x140386d90
Capabilities:
Encode data using xor
Encrypt data using speck
Reference sql statements

Disassembly:
mov r11, rsp
push rbp
push r13
push r15
lea rbp, [r11 - 0x3d8]
sub rsp, 0x4c0
mov rax, qword [0x1404af540]
xor rax, rsp
mov qword [rbp + 0x350], rax
mov r8, qword [rcx + 0x88]
xor r9d, r9d
mov qword [r11 + 0x18], rsi
mov r13, rcx
mov rsi, qword [rcx]
mov r15d, r9d
mov qword [r11 + 0x20], rdi
mov r10d, r9d
mov qword [r11 - 0x20], r12
mov edi, r9d
mov qword [r11 - 0x28], r14
xor r14b, r14b
mov r11, qword [rcx + 0x68]
mov byte [rbp - 0x70], r14b
movzx r14d, byte [rsi + 0x64]
mov byte [rsp + 0x48], r14b
mov qword [rbp - 0x80], rcx
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x40], r8
mov dword [rsp + 0x4c], r9d
mov qword [rsp + 0x68], rsi
mov dword [rsp + 0x50], r9d
mov qword [rsp + 0x78], r9
mov qword [rsp + 0x60], r11
mov dword [rbp - 0x60], r9d
cmp dword [rcx + 0xd0], edi
je 0x140386e3d
call fcn.140386ca0
mov r11, qword [rsp + 0x60]
mov r10d, edi
mov r8, qword [rsp + 0x58]
xor r9d, r9d
cmp qword [rsi + 0x228], rdi
je 0x140386e5e
mov ecx, dword [rsi + 0x238]
xor edx, edx
mov eax, dword [r13 + 0xe4]
div ecx
sub ecx, edx
mov r12d, ecx
jmp 0x140386e65
mov r12, 0xffffffffffffffff
cmp dword [r13 + 0x34], 7
lea rcx, [0x140000000]
mov qword [rsp + 0x4e8], rbx
mov edx, 1
movaps xmmword [rsp + 0x4a0], xmm6
movaps xmmword [rsp + 0x490], xmm7
movaps xmmword [rsp + 0x480], xmm8
movaps xmmword [rsp + 0x470], xmm9
movaps xmmword [rsp + 0x460], xmm10
mov qword [rsp + 0x70], r12
je 0x1403892be
mov dword [r13 + 0x34], r9d
mov qword [r13 + 0x48], r9
mov dword [rsi + 0x2b0], r9d
mov eax, dword [rsi + 0x1b0]
test eax, eax
jne 0x14038fa34
movsxd r12, dword [r13 + 0x30]
xorps xmm10, xmm10
movdqa xmm8, xmmword [0x140453100]
movdqa xmm7, xmmword [0x1403f5510]
movdqa xmm9, xmmword [0x1403f5540]
shl r12, 5
add r12, r8
movzx ebx, byte [r12]
inc rdi
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x78], rdi
cmp ebx, 0xb8
ja case.default.0x140386f2c
movsxd rax, ebx
mov ecx, dword [rcx + rax*4 + 0x38fcf4]
lea rax, [0x140000000]
add rcx, rax
jmp rcx
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
mov rax, rbx
sub rax, r8
sar rax, 5
cdqe
mov word [rcx + r11 + 0x14], 4
mov qword [rcx + r11], rax
jmp case.0x140386f2c.9
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 4
je 0x140387449
mov r12, qword [rcx + r11]
lea rcx, [0x140000000]
shl r12, 5
add r12, r8
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
dec eax
cdqe
mov qword [rcx + r11], rax
mov word [rcx + r11 + 0x14], 4
cmp dword [r12 + 8], 0
jne 0x140388a10
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 4]
sub rbx, qword [r13 + 0x88]
imul rdx, rax, 0x38
sar rbx, 5
mov rcx, qword [rdx + r11]
lea eax, [rbx - 1]
cdqe
shl rcx, 5
mov qword [rdx + r11], rax
mov eax, dword [rcx + r8 + 8]
dec eax
movsxd r12, eax
shl r12, 5
add r12, r8
jmp 0x14038abce
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 4]
sub rbx, r8
imul rdx, rax, 0x38
sar rbx, 5
movsxd rax, ebx
mov word [rdx + r11 + 0x14], 4
movsxd r12, dword [rdx + r11]
shl r12, 5
add r12, r8
mov qword [rdx + r11], rax
jmp 0x14038abce
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
je 0x140387449
mov rcx, qword [r13 + 0x108]
test rcx, rcx
je 0x14038f2bd
mov rax, qword [rsp + 0x40]
cmp dword [rax + 4], 0
jne 0x14038f2bd
mov rax, qword [rcx + 8]
mov qword [r13 + 0x108], rax
dec dword [r13 + 0x118]
mov rax, qword [r13 + 0x38]
mov qword [rsi + 0x78], rax
add qword [rsi + 0x80], rax
call fcn.140390770
mov r12, qword [rsp + 0x40]
cmp dword [r12 + 8], 4
jne 0x1403870cd
movsxd rcx, eax
mov rax, qword [r13 + 0x88]
shl rcx, 5
mov eax, dword [rcx + rax + 8]
dec eax
mov r8, qword [r13 + 0x88]
mov r11, qword [r13 + 0x68]
mov r10d, dword [rsp + 0x50]
movsxd r12, eax
shl r12, 5
add r12, r8
mov qword [rsp + 0x58], r8
xor r9d, r9d
mov qword [rsp + 0x60], r11
jmp 0x14038abce
mov rax, qword [rsp + 0x40]
mov edi, 0x9000
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x68]
test word [rcx + 0x14], di
je 0x14038712c
call fcn.1403152d0
mov r8, qword [rsp + 0x58]
mov rcx, rax
xor r9d, r9d
mov edx, 1
jmp 0x140387132
mov word [rcx + 0x14], 4
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
mov qword [rcx], rax
mov r11, qword [rsp + 0x60]
lea rcx, [0x140000000]
mov r10d, dword [rsp + 0x50]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x140387193
mov rcx, rdx
call fcn.1403152d0
mov r8, qword [rsp + 0x58]
mov rdx, rax
xor r9d, r9d
jmp 0x140387199
mov word [rdx + 0x14], 4
mov rax, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
mov rax, qword [rax + 0x10]
mov rcx, qword [rax]
mov qword [rdx], rcx
mov r10d, dword [rsp + 0x50]
jmp 0x14038abce
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x1403871eb
mov rcx, rdx
call fcn.1403152d0
mov r8, qword [rsp + 0x58]
mov rdx, rax
xor r9d, r9d
mov word [rdx + 0x14], 8
jmp 0x140387199
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [r13 + 0x68]
test word [rbx + 0x14], ax
je 0x140387224
mov rcx, rbx
call fcn.1403152d0
mov rcx, qword [rsp + 0x40]
mov rbx, rax
xor r9d, r9d
jmp 0x14038722a
mov word [rbx + 0x14], 4
mov rdx, qword [rcx + 0x10]
test rdx, rdx
jne 0x140387238
mov eax, r9d
jmp 0x14038724e
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [rdx + rax], 0
jne 0x140387240
and eax, 0x3fffffff
mov dword [rcx + 4], eax
cmp r14b, 1
je 0x1403872ed
mov qword [rsp + 0x20], r9
mov r8, 0xffffffffffffffff
mov r9b, 1
mov rcx, rbx
call fcn.140392290
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14038f655
test byte [rbx + 0x14], 2
jne 0x14038728d
mov byte [rbx + 0x16], r14b
jmp 0x1403872a7
cmp byte [rbx + 0x16], r14b
je 0x1403872a7
movzx edx, r14b
mov rcx, rbx
call fcn.140392690
test eax, eax
jne 0x1403892b9
xor ecx, ecx
mov eax, 0x2000
mov dword [rbx + 0x20], ecx
or word [rbx + 0x14], ax
mov rax, qword [rsp + 0x40]
cmp byte [rax + 1], 0xfa
jne 0x1403872d6
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x1403872d6
mov rcx, rsi
call fcn.140342c30
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x40]
mov byte [rax + 1], 0xfa
mov rax, qword [rbx + 8]
mov qword [rcx + 0x10], rax
mov eax, dword [rbx + 0x10]
mov dword [rcx + 4], eax
cmp eax, dword [rsi + 0x88]
jg 0x14038f655
mov byte [rcx], 0x49
jmp 0x140387303
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x14038732a
mov rcx, rdx
call fcn.1403152d0
mov rcx, qword [rsp + 0x40]
mov rdx, rax
mov r11, qword [rsp + 0x60]
mov word [rdx + 0x14], 0x2202
mov rax, qword [rcx + 0x10]
mov qword [rdx + 8], rax
mov eax, dword [rcx + 4]
mov dword [rdx + 0x10], eax
mov rax, qword [rsp + 0x40]
mov byte [rdx + 0x16], r14b
movsxd rax, dword [rax + 0xc]
test eax, eax
jle 0x14038abbc
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x40]
movzx eax, word [rax + 2]
cmp qword [rcx + r11], rax
jne 0x14038abbc
mov word [rdx + 0x14], 0x2210
jmp 0x14038abbc
mov rbx, qword [rsp + 0x40]
mov r8d, 0x9000
movsxd rax, dword [rbx + 8]
imul rcx, rax, 0x38
add rcx, qword [r13 + 0x68]
test word [rcx + 0x14], r8w
je 0x1403873b0
call fcn.1403152d0
mov rcx, rax
xor r9d, r9d
mov edx, 1
mov r8d, 0x9000
jmp 0x1403873b6
mov word [rcx + 0x14], 4
cmp dword [rbx + 4], 0
mov esi, edx
mov edi, dword [rbx + 0xc]
mov edx, 0x101
mov eax, dword [rbx + 8]
cmovne si, dx
sub edi, eax
mov word [rcx + 0x14], si
mov dword [rcx + 0x10], r9d
lea rbx, [rcx + 0x14]
test edi, edi
jle 0x14038e571
test word [rbx + 0x38], r8w
lea rbx, [rbx + 0x38]
je 0x1403873fe
lea rcx, [rbx - 0x14]
call fcn.1403b0ca0
xor r9d, r9d
mov r8d, 0x9000
dec edi
mov word [rbx], si
mov dword [rbx - 4], r9d
test edi, edi
jg 0x1403873e1
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
jmp 0x14038abc9
mov rax, qword [rsp + 0x40]
mov ebx, 0xffc1
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
movzx eax, word [rcx + r11 + 0x14]
and ax, bx
or ax, 1
mov word [rcx + r11 + 0x14], ax
mov r12, qword [rsp + 0x40]
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rax, qword [rsp + 0x40]
mov ecx, 0x9000
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
add rbx, qword [r13 + 0x68]
test word [rbx + 0x14], cx
je 0x140387494
mov rcx, rbx
call fcn.1403152d0
mov rbx, rax
xor r9d, r9d
mov ecx, 0x9000
jmp 0x14038749a
mov word [rbx + 0x14], 4
mov rax, qword [rsp + 0x40]
mov rdx, qword [rax + 0x10]
movsxd rdi, dword [rax + 4]
test rdx, rdx
jne 0x1403874fc
test word [rbx + 0x14], cx
jne 0x1403874b7
cmp dword [rbx + 0x20], edx
je 0x1403874bf
mov rcx, rbx
call fcn.1403b0c50
xor eax, eax
mov word [rbx + 0x14], 0x410
mov dword [rbx + 0x10], eax
test edi, edi
mov rcx, rbx
cmovs edi, eax
mov dword [rbx], edi
mov byte [rbx + 0x16], 1
mov qword [rbx + 8], rax
call fcn.140391a70
test eax, eax
jne 0x1403892b4
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov byte [rbx + 0x16], r14b
jmp 0x14038abc1
mov qword [rsp + 0x20], r9
mov r8, rdi
xor r9d, r9d
mov rcx, rbx
call fcn.140392290
mov byte [rbx + 0x16], r14b
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov rbx, qword [rsp + 0x40]
mov rsi, qword [r13 + 0x80]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
movzx eax, word [rdi + rsi - 0x24]
test al, 0x12
je 0x14038755f
bt ax, 0xa
mov ecx, dword [rdi + rsi - 0x28]
jae 0x14038754e
add ecx, dword [rdi + rsi - 0x38]
mov rax, qword [rdi + rsi - 0x20]
cmp ecx, dword [rax + 0x88]
jg 0x14038f66f
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, r11
test word [rbx + 0x14], ax
je 0x14038758f
mov rcx, rbx
call fcn.1403b0ca0
mov r11, qword [rsp + 0x60]
xor r9d, r9d
mov r8, qword [rsp + 0x58]
mov edx, 1
movups xmm0, xmmword [rdi + rsi - 0x38]
mov ecx, 0xafff
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi + rsi - 0x28]
mov rsi, qword [rsp + 0x68]
movsd qword [rbx + 0x10], xmm1
movzx eax, word [rbx + 0x14]
and ax, cx
or ax, 0x2040
mov word [rbx + 0x14], ax
mov r12, qword [rsp + 0x40]
lea rcx, [0x140000000]
mov r10d, dword [rsp + 0x50]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rcx, qword [rsp + 0x40]
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 + rax]
mov eax, 0x9000
test word [rbx + 0x14], ax
jne 0x140387611
cmp dword [rbx + 0x20], 0
je 0x140387621
mov rcx, rbx
call fcn.1403b0c50
xor r9d, r9d
mov edx, 1
movups xmm0, xmmword [rdi]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [rbx + 0x20], xmm0
movsd xmm1, qword [rdi + 0x30]
movsd qword [rbx + 0x30], xmm1
mov word [rdi + 0x14], dx
mov dword [rdi + 0x20], r9d
movzx eax, word [rbx + 0x14]
bt ax, 0xe
jae 0x1403876a0
test al, 0x12
je 0x14038768f
bt ax, 0xa
jae 0x14038766f
mov rcx, rbx
call fcn.140391a70
test eax, eax
jne 0x14038fa44
cmp dword [rbx + 0x20], 0
je 0x14038767f
mov rax, qword [rbx + 0x28]
cmp qword [rbx + 8], rax
je 0x14038768f
mov rcx, rbx
call fcn.1403b0bf0
test eax, eax
jne 0x14038fa44
mov ecx, 0xbfff
mov edx, 1
and word [rbx + 0x14], cx
xor r9d, r9d
add rdi, 0x38
add rbx, 0x38
sub esi, 1
jne 0x140387600
mov rsi, qword [rsp + 0x68]
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov r8, qword [rsp + 0x58]
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rbx, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rbx + 4]
mov esi, dword [rbx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rdi, r11
add rbx, r11
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x140387720
mov r8d, 0x4000
mov rdx, rdi
mov rcx, rbx
call fcn.1403afa50
jmp 0x14038774d
movups xmm0, xmmword [rdi]
mov eax, 0x2000
movups xmmword [rbx], xmm0
movsd xmm1, qword [rdi + 0x10]
movsd qword [rbx + 0x10], xmm1
test word [rdi + 0x14], ax
jne 0x14038774d
mov eax, 0xcfff
and word [rbx + 0x14], ax
mov eax, 0x4000
or word [rbx + 0x14], ax
movzx eax, word [rbx + 0x14]
bt ax, 0xe
jae 0x1403877a0
test al, 0x12
je 0x140387793
bt ax, 0xa
jae 0x140387773
mov rcx, rbx
call fcn.140391a70
test eax, eax
jne 0x14038fa44
cmp dword [rbx + 0x20], 0
je 0x140387783
mov rax, qword [rbx + 0x28]
cmp qword [rbx + 8], rax
je 0x140387793
mov rcx, rbx
call fcn.1403b0bf0
test eax, eax
jne 0x14038fa44
mov eax, 0xbfff
and ax, word [rbx + 0x14]
mov word [rbx + 0x14], ax
bt ax, 0xb
jae 0x1403877bb
test byte [r12 + 2], 2
je 0x1403877bb
mov ecx, 0xf7ff
and ax, cx
mov word [rbx + 0x14], ax
mov eax, esi
dec esi
test eax, eax
je 0x1403877d0
add rbx, 0x38
add rdi, 0x38
jmp 0x140387702
mov rsi, qword [rsp + 0x68]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rdx, r11
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x14038781f
mov r8d, 0x4000
call fcn.1403afa50
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
movups xmm0, xmmword [rdx]
mov r12, qword [rsp + 0x40]
mov eax, 0x2000
movups xmmword [rcx], xmm0
movsd xmm1, qword [rdx + 0x10]
movsd qword [rcx + 0x10], xmm1
test word [rdx + 0x14], ax
mov edx, 1
jne case.0x140386f2c.89
mov eax, 0xcfff
and word [rcx + 0x14], ax
mov eax, 0x4000
or word [rcx + 0x14], ax
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 8]
imul r8, rax, 0x38
movsxd rax, dword [rcx + 4]
imul rcx, rax, 0x38
add r8, r11
mov rax, qword [rcx + r11]
mov ecx, 0x9000
test word [r8 + 0x14], cx
je 0x1403878b1
mov rdx, rax
mov rcx, r8
call fcn.1403b1f80
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
mov r12, qword [rsp + 0x40]
lea rcx, [0x140000000]
mov qword [r8], rax
mov word [r8 + 0x14], 4
mov r8, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
cmp qword [r13 + 0x50], 0
jg 0x14038f3ac
mov r15d, r9d
mov dword [rsp + 0x4c], r9d
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 4]
imul r14, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
movsxd rax, dword [rbx + 0xc]
add r14, r11
imul rbx, rax, 0x38
movzx r15d, word [r14 + 0x14]
add rdi, r11
movzx eax, r15b
add rbx, r11
or al, byte [rdi + 0x14]
test al, 1
je 0x14038798e
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x140387965
mov rcx, rbx
call fcn.1403b0ca0
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov r15d, dword [rsp + 0x4c]
lea rcx, [0x140000000]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
mov word [rbx + 0x14], dx
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
test r15b, 0x12
jne 0x1403879c6
movzx r12d, byte [rsp + 0x48]
xor r8d, r8d
movzx edx, r12b
mov rcx, r14
call fcn.1403925d0
test eax, eax
jne 0x1403892b4
movzx r15d, word [r14 + 0x14]
mov eax, 0xfffd
and r15w, ax
mov eax, 0x400
jmp 0x1403879fa
mov eax, 0x400
test ax, r15w
je 0x1403879f4
mov rcx, r14
call fcn.140391a70
test eax, eax
jne 0x1403892b4
movzx r15d, word [r14 + 0x14]
mov eax, 0xfffd
and r15w, ax
mov eax, 0x400
movzx r12d, byte [rsp + 0x48]
movzx esi, word [rdi + 0x14]
test sil, 0x12
jne 0x140387a15
xor r8d, r8d
movzx edx, r12b
mov rcx, rdi
call fcn.1403925d0
jmp 0x140387a22
test ax, si
je 0x140387a36
mov rcx, rdi
call fcn.140391a70
test eax, eax
jne 0x14038fa44
movzx esi, word [rdi + 0x14]
mov eax, 0xfffd
and si, ax
mov rax, qword [rsp + 0x68]
mov edx, dword [rdi + 0x10]
add edx, dword [r14 + 0x10]
movsxd r12, edx
movsxd rax, dword [rax + 0x88]
cmp r12, rax
jg 0x14038f66f
xor ecx, ecx
mov r8d, ecx
cmp rbx, rdi
mov rcx, rbx
sete r8b
add edx, 2
call fcn.140391d30
test eax, eax
jne 0x14038fa44
movzx eax, word [rbx + 0x14]
mov ecx, 0xf242
and ax, cx
or ax, 2
mov word [rbx + 0x14], ax
cmp rbx, rdi
je 0x140387aa2
movsxd r8, dword [rdi + 0x10]
mov rdx, qword [rdi + 8]
mov rcx, qword [rbx + 8]
call sub.VCRUNTIME140.dll_memcpy
mov word [rdi + 0x14], si
movsxd rcx, dword [rdi + 0x10]
add rcx, qword [rbx + 8]
movsxd r8, dword [r14 + 0x10]
mov rdx, qword [r14 + 8]
call sub.VCRUNTIME140.dll_memcpy
mov word [r14 + 0x14], r15w
movzx r14d, byte [rsp + 0x48]
cmp r14b, 1
jbe 0x140387acc
and r12, 0xfffffffffffffffe
mov rax, qword [rbx + 8]
mov rsi, qword [rsp + 0x68]
mov byte [r12 + rax], 0
mov rax, qword [rbx + 8]
mov byte [r12 + rax + 1], 0
mov eax, 0x200
or word [rbx + 0x14], ax
mov dword [rbx + 0x10], r12d
mov byte [rbx + 0x16], r14b
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
imul rsi, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rdi, rax, 0x38
mov rax, qword [rsp + 0x40]
add rsi, r11
add rdi, r11
movsxd rax, dword [rax + 0xc]
movzx ecx, word [rdi + 0x14]
movzx ebx, word [rsi + 0x14]
imul r14, rax, 0x38
movzx eax, cl
and al, bl
add r14, r11
test al, 4
jne 0x140387b82
or cl, bl
test cl, 1
jne 0x140387e72
and bx, 0x2d
jne 0x140387b61
mov rcx, rsi
call fcn.1402b0260
movzx ebx, ax
movzx eax, word [rdi + 0x14]
and ax, 0x2d
jne 0x140387b73
mov rcx, rdi
call fcn.1402b0260
and al, bl
test al, 4
je 0x140387d70
mov edx, 1
mov rax, qword [rsp + 0x40]
mov r9, qword [rsi]
mov r8, qword [rdi]
movzx ecx, byte [rax]
sub ecx, 0x6a
je 0x140387d03
sub ecx, 1
je 0x140387c9a
sub ecx, 1
je 0x140387bff
cmp ecx, 1
je 0x140387bcd
test r9, r9
je 0x140387e6a
cmp r9, 0xffffffffffffffff
mov rax, r8
cmove r9, rdx
cqo
idiv r9
mov r8, rdx
jmp 0x140387d22
test r9, r9
je 0x140387e6a
cmp r9, 0xffffffffffffffff
jne 0x140387bef
movabs rcx, 0x8000000000000000
cmp r8, rcx
je 0x140387d70
mov rax, r8
cqo
idiv r9
mov r8, rax
jmp 0x140387d22
test r9, r9
jle 0x140387c35
movabs rax, 0x7fffffffffffffff
cqo
idiv r9
cmp r8, rax
jg 0x140387d70
movabs rax, 0x8000000000000000
cqo
idiv r9
cmp r8, rax
jge 0x140387c91
jmp 0x140387d70
jns 0x140387c91
test r8, r8
jle 0x140387c55
movabs rax, 0x8000000000000000
cqo
idiv r8
cmp r9, rax
jge 0x140387c91
jmp 0x140387d70
jns 0x140387c91
movabs rcx, 0x8000000000000000
cmp r9, rcx
je 0x140387d70
cmp r8, rcx
je 0x140387d70
movabs rax, 0x8000000000000001
mov rcx, r8
cqo
neg rcx
idiv r9
cmp rcx, rax
jg 0x140387d70
imul r8, r9
jmp 0x140387d22
movabs rcx, 0x8000000000000000
cmp r9, rcx
jne 0x140387cb7
test r8, r8
jns 0x140387d70
sub r8, rcx
jmp 0x140387d22
neg r9
js 0x140387cd7
test r8, r8
jle 0x140387cf6
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, r9
jge 0x140387cf6
mov eax, edx
jmp 0x140387cfd
test r8, r8
jns 0x140387cf6
movabs rax, 0x8000000000000001
lea rcx, [r9 + 1]
sub rax, r8
cmp rax, rcx
jle 0x140387cf6
mov eax, edx
jmp 0x140387cfd
add r8, r9
xor ecx, ecx
mov eax, ecx
test eax, eax
jne 0x140387d70
jmp 0x140387d22
test r9, r9
js 0x140387d55
test r8, r8
jle 0x140387d1f
movabs rax, 0x7fffffffffffffff
sub rax, r8
cmp rax, r9
jl 0x140387d70
add r8, r9
mov qword [r14], r8
mov ecx, 0xf244
movzx eax, word [r14 + 0x14]
and ax, cx
or ax, 4
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov word [r14 + 0x14], ax
movzx r14d, byte [rsp + 0x48]
jmp 0x14038abc1
test r8, r8
jns 0x140387d1f
movabs rax, 0x8000000000000001
lea rcx, [r9 + 1]
sub rax, r8
cmp rax, rcx
jle 0x140387d1f
movzx eax, word [rsi + 0x14]
test al, 8
je 0x140387d7e
movsd xmm6, qword [rsi]
jmp 0x140387da1
test al, 0x24
je 0x140387d8c
xorps xmm6, xmm6
cvtsi2sd xmm6, qword [rsi]
jmp 0x140387da1
test al, 0x12
je 0x140387d9d
mov rcx, rsi
call fcn.14030f910
movaps xmm6, xmm0
jmp 0x140387da1
movaps xmm6, xmm10
movzx eax, word [rdi + 0x14]
test al, 8
je 0x140387daf
movsd xmm0, qword [rdi]
jmp 0x140387dcf
test al, 0x24
je 0x140387dbd
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rdi]
jmp 0x140387dcf
test al, 0x12
je 0x140387dcb
mov rcx, rdi
call fcn.14030f910
jmp 0x140387dcf
movaps xmm0, xmm10
mov rax, qword [rsp + 0x40]
movzx ecx, byte [rax]
sub ecx, 0x6a
je 0x140387e3a
sub ecx, 1
je 0x140387e34
sub ecx, 1
je 0x140387e2e
cmp ecx, 1
je 0x140387e1f
mov rcx, rsi
call fcn.14028c300
mov rcx, rdi
mov rbx, rax
call fcn.14028c300
test rbx, rbx
je 0x140387e6a
cmp rbx, 0xffffffffffffffff
mov edx, 1
xorps xmm0, xmm0
cmove rbx, rdx
cqo
idiv rbx
cvtsi2sd xmm0, rdx
jmp 0x140387e3e
ucomisd xmm6, xmm10
jp 0x140387e28
je 0x140387e6a
divsd xmm0, xmm6
jmp 0x140387e3e
mulsd xmm0, xmm6
jmp 0x140387e3e
subsd xmm0, xmm6
jmp 0x140387e3e
addsd xmm0, xmm6
movq rax, xmm0
movabs rcx, 0xfffffffffffff
test rcx, rax
movabs rdx, 0x7ff0000000000000
setne cl
and rax, rdx
cmp rax, rdx
sete al
test al, cl
je 0x140387ed9
mov r8, qword [rsp + 0x58]
xor r9d, r9d
mov eax, 0x9000
test word [r14 + 0x14], ax
je 0x140387ea0
mov rcx, r14
call fcn.1403b0ca0
mov rsi, qword [rsp + 0x68]
movzx r14d, byte [rsp + 0x48]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov rsi, qword [rsp + 0x68]
lea rcx, [0x140000000]
mov r12, qword [rsp + 0x40]
mov edx, 1
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
mov word [r14 + 0x14], dx
movzx r14d, byte [rsp + 0x48]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
movsd qword [r14], xmm0
mov ecx, 0xf248
movzx eax, word [r14 + 0x14]
and ax, cx
or ax, 8
jmp 0x140387d36
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
test eax, eax
je 0x140387449
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x140387f2d
xor edx, edx
call fcn.1403b1f80
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
mov r12, qword [rsp + 0x40]
mov qword [rcx], r9
mov word [rcx + 0x14], 4
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rsi, qword [rsp + 0x40]
movsxd rax, dword [rsi + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rsi + 8]
imul rcx, rax, 0x38
movsxd rax, dword [rsi + 0xc]
add rdi, r11
imul rsi, rax, 0x38
add rcx, r11
add rsi, r11
movzx eax, byte [rcx + 0x14]
or al, byte [rdi + 0x14]
test al, 1
je 0x140387fcb
mov eax, 0x9000
test word [rsi + 0x14], ax
je 0x140387fa8
mov rcx, rsi
call fcn.1403b0ca0
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov r12, qword [rsp + 0x40]
lea rcx, [0x140000000]
mov word [rsi + 0x14], dx
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
call fcn.14028c300
mov rcx, rdi
mov rbx, rax
call fcn.14028c300
mov rdx, rax
mov rax, qword [rsp + 0x40]
movzx ecx, byte [rax]
cmp cl, 0x66
jne 0x140387ff0
and rbx, rdx
jmp 0x140388065
cmp cl, 0x67
jne 0x140387ffa
or rbx, rdx
jmp 0x140388065
test rdx, rdx
je 0x140388065
jns 0x140388014
mov eax, 0xd1
sub al, cl
movzx ecx, al
cmp rdx, 0xffffffffffffffc0
jle 0x14038801a
neg rdx
cmp rdx, 0x40
jl 0x140388033
test rbx, rbx
jns 0x14038802d
cmp cl, 0x68
je 0x14038802d
mov rbx, 0xffffffffffffffff
jmp 0x140388065
xor ecx, ecx
mov ebx, ecx
jmp 0x140388065
cmp cl, 0x68
mov rcx, rdx
jne 0x140388043
shl rbx, cl
mov r8, rbx
jmp 0x140388062
mov r8, rbx
shr r8, cl
test rbx, rbx
jns 0x140388062
mov ecx, 0x40
mov rax, 0xffffffffffffffff
sub cl, dl
shl rax, cl
or r8, rax
mov rbx, r8
mov r12, qword [rsp + 0x40]
mov ecx, 0xf244
mov r11, qword [rsp + 0x60]
mov qword [rsi], rbx
movzx eax, word [rsi + 0x14]
and ax, cx
or ax, 4
mov word [rsi + 0x14], ax
mov rsi, qword [rsp + 0x68]
jmp 0x14038abc1
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r11
mov rcx, rbx
call fcn.140391eb0
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
movsxd rax, dword [r12 + 8]
add qword [rbx], rax
jmp 0x14038abc1
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
add rbx, r11
movzx ecx, word [rbx + 0x14]
test cl, 4
jne 0x14038812d
test cl, 0x28
jne 0x1403880f4
test cl, 2
je 0x140388106
mov rcx, rbx
call fcn.140299240
mov r11, qword [rsp + 0x60]
xor r9d, r9d
jmp 0x1403880fc
mov rcx, rbx
call fcn.140391010
mov r8, qword [rsp + 0x58]
mov edx, 1
movzx eax, word [rbx + 0x14]
movzx ecx, ax
test al, 4
jne 0x14038812d
mov r12, qword [rsp + 0x40]
cmp dword [r12 + 8], 0
jne 0x140388a10
mov r15d, Ordinal_23
jmp 0x140388cf3
mov r12, qword [rsp + 0x40]
mov eax, 0xf244
mov r10d, dword [rsp + 0x50]
and cx, ax
or cx, 4
mov word [rbx + 0x14], cx
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
add rcx, r11
movzx eax, word [rcx + 0x14]
test al, 0x24
je 0x140387449
test al, 8
je 0x140388182
movsd xmm0, qword [rcx]
jmp 0x14038818a
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rcx]
mov r12, qword [rsp + 0x40]
mov ebx, 0xf248
movsd qword [rcx], xmm0
and ax, bx
or ax, 8
mov word [rcx + 0x14], ax
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
mov eax, 0x400
add rbx, r11
test word [rbx + 0x14], ax
je 0x1403881e6
mov rcx, rbx
call fcn.140391a70
mov r15d, eax
test eax, eax
jne 0x140388cf3
mov rax, qword [rsp + 0x40]
movzx r8d, r14b
mov rcx, rbx
movzx edx, byte [rax + 8]
call fcn.140391850
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140388cf3
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
imul r15, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul r14, rax, 0x38
add r15, r11
add r14, r11
movzx esi, word [r15 + 0x14]
movzx edi, word [r14 + 0x14]
movzx ecx, di
and cx, si
test cl, 4
je 0x140388313
mov rax, qword [r14]
mov edx, 1
cmp rax, qword [r15]
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
jle 0x14038829c
mov rax, qword [0x1404a95e8]
cmp byte [rbx + rax], 0
jne 0x140388a10
mov r10d, edx
mov dword [rsp + 0x50], edx
mov rsi, qword [rsp + 0x68]
lea rcx, [0x140000000]
movzx r14d, byte [rsp + 0x48]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
jge 0x1403882da
mov rax, qword [0x1404a95d8]
cmp byte [rbx + rax], 0
jne 0x140388a10
mov rsi, qword [rsp + 0x68]
lea rcx, [0x140000000]
movzx r14d, byte [rsp + 0x48]
mov r10d, 0xffffffff
mov dword [rsp + 0x50], r10d
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rax, qword [0x1404a95e0]
cmp byte [rbx + rax], 0
jne 0x140388a10
mov rsi, qword [rsp + 0x68]
lea rcx, [0x140000000]
movzx r14d, byte [rsp + 0x48]
mov r10d, r9d
mov dword [rsp + 0x50], r9d
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
movzx eax, di
or ax, si
test al, 1
je 0x1403883ad
mov rax, qword [rsp + 0x40]
movzx eax, word [rax + 2]
test al, al
jns 0x140388374
test cl, 1
je 0x140388359
mov eax, 0x100
test ax, di
jne 0x140388359
mov rax, qword [rsp + 0x40]
mov r10d, r9d
mov dword [rsp + 0x50], r9d
movzx edx, byte [rax]
mov rax, qword [0x1404a95e0]
jmp 0x1403884f8
movzx eax, di
not ax
and eax, 1
lea r10d, [rax*2 - 1]
mov dword [rsp + 0x50], r10d
jmp 0x1403884b9
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
test al, 0x10
jne 0x140388a10
mov rsi, qword [rsp + 0x68]
lea rcx, [0x140000000]
movzx r14d, byte [rsp + 0x48]
mov r10d, edx
mov dword [rsp + 0x50], edx
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rbx, qword [rsp + 0x40]
movzx ecx, byte [rbx + 2]
and cl, 0x47
cmp cl, 0x43
jb 0x1403883fc
test al, 2
je 0x14038849e
movzx eax, sil
and al, 0x2e
cmp al, 2
jne 0x1403883df
xor edx, edx
mov rcx, r15
call fcn.140299240
movzx edi, word [r14 + 0x14]
movzx eax, dil
and al, 0x2e
cmp al, 2
jne 0x14038849e
xor edx, edx
mov rcx, r14
call fcn.140299240
jmp 0x14038849e
cmp cl, 0x42
jne 0x14038849e
test al, 2
je 0x14038849e
movzx r12d, byte [rsp + 0x48]
test sil, 2
je 0x14038842b
movzx eax, si
mov ecx, 0xffd3
and ax, cx
mov word [r15 + 0x14], ax
jmp 0x14038846a
test sil, 0x2c
je 0x140388465
mov r8b, 1
movzx edx, r12b
mov rcx, r15
call fcn.1403925d0
xor si, word [r15 + 0x14]
mov ecx, 0xdbf
and si, cx
mov ecx, 0xffd3
xor si, word [r15 + 0x14]
cmp r15, r14
jne 0x14038846a
movzx edi, si
or di, 2
jmp 0x14038846a
mov ecx, 0xffd3
test dil, 2
je 0x140388477
and word [r14 + 0x14], cx
jmp 0x14038849e
test dil, 0x2c
je 0x14038849e
mov r8b, 1
movzx edx, r12b
mov rcx, r14
call fcn.1403925d0
xor di, word [r14 + 0x14]
mov eax, 0xdbf
and di, ax
xor di, word [r14 + 0x14]
mov r8, qword [rbx + 0x10]
mov rdx, r15
mov rcx, r14
call fcn.14036bd10
mov r11, qword [rsp + 0x60]
mov r10d, eax
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x40]
mov ecx, r10d
test r10d, r10d
jns 0x1403884d6
movzx ecx, byte [rax]
mov rax, qword [0x1404a95d8]
movzx edx, byte [rcx + rax]
jmp 0x1403884fc
movzx edx, byte [rax]
mov dword [rsp + 0x50], ecx
test ecx, ecx
jne 0x1403884ed
mov rax, qword [0x1404a95e0]
mov r10d, ecx
jmp 0x1403884f8
mov rax, qword [0x1404a95e8]
mov dword [rsp + 0x50], ecx
movzx edx, byte [rdx + rax]
mov r12, qword [rsp + 0x40]
xor r9d, r9d
mov r8, qword [rsp + 0x58]
test dl, dl
mov word [r14 + 0x14], di
mov edx, 1
mov word [r15 + 0x14], si
mov r15d, dword [rsp + 0x4c]
je 0x14038827c
jmp 0x140388a10
test r10d, r10d
je 0x140388a10
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rax, qword [rsp + 0x40]
test byte [rax + 2], 1
jne 0x140388558
mov r13, r9
jmp 0x140388560
mov r13, qword [rax - 0x10]
add r13, 4
mov rcx, qword [rax + 0x10]
xor edx, edx
mov r8d, dword [rax + 4]
mov esi, edx
mov r9d, dword [rax + 8]
mov ebx, edx
movsxd rax, dword [rax + 0xc]
mov qword [rbp - 0x68], rcx
mov dword [rbp + 0x2e0], r8d
mov dword [rbp - 0x78], r9d
mov qword [rbp - 0x58], rax
test rax, rax
jle 0x14038f246
lea r14, [rcx + 0x20]
test r13, r13
je 0x1403885a2
mov edx, dword [r13 + rbx*4]
jmp 0x1403885a4
mov edx, esi
mov rax, qword [rcx + 0x18]
lea ecx, [rdx + r9]
imul r12, rcx, 0x38
movzx edi, byte [rbx + rax]
lea ecx, [rdx + r8]
mov r8, qword [r14]
add r12, r11
imul r15, rcx, 0x38
mov rdx, r12
and edi, 1
add r15, r11
mov rcx, r15
call fcn.14036bd10
mov dword [rsp + 0x50], eax
mov r10d, eax
test eax, eax
jne 0x14038861f
mov rcx, qword [rbp - 0x68]
inc esi
mov r8d, dword [rbp + 0x2e0]
inc rbx
mov r9d, dword [rbp - 0x78]
add r14, 8
mov r11, qword [rsp + 0x60]
cmp rbx, qword [rbp - 0x58]
jl 0x140388596
mov rsi, qword [rsp + 0x68]
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
mov r13, qword [rbp - 0x80]
movzx r14d, byte [rsp + 0x48]
jmp 0x14038abc6
mov rax, qword [rbp - 0x68]
mov rax, qword [rax + 0x18]
test byte [rbx + rax], 2
je 0x140388644
test byte [r15 + 0x14], 1
jne 0x14038863c
test byte [r12 + 0x14], 1
je 0x140388644
neg r10d
mov dword [rsp + 0x50], r10d
mov rsi, qword [rsp + 0x68]
mov edx, 1
mov r15d, dword [rsp + 0x4c]
lea rcx, [0x140000000]
mov r12, qword [rsp + 0x40]
mov r13, qword [rbp - 0x80]
mov r11, qword [rsp + 0x60]
movzx r14d, byte [rsp + 0x48]
mov r8, qword [rsp + 0x58]
test edi, edi
je 0x14038867f
neg r10d
mov dword [rsp + 0x50], r10d
xor r9d, r9d
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rax, qword [rsp + 0x40]
test r10d, r10d
jns 0x1403886be
mov eax, dword [rax + 4]
lea rcx, [0x140000000]
dec eax
movsxd r12, eax
shl r12, 5
add r12, r8
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
lea rcx, [0x140000000]
jne 0x1403886e4
mov eax, dword [rax + 8]
dec eax
movsxd r12, eax
shl r12, 5
add r12, r8
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov eax, dword [rax + 0xc]
dec eax
movsxd r12, eax
shl r12, 5
add r12, r8
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rax, qword [rsp + 0x40]
mov edi, 2
mov edx, edi
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
add rcx, r11
call fcn.140385e20
mov ebx, eax
mov edx, edi
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 8]
imul rcx, rcx, 0x38
add rcx, qword [rsp + 0x60]
call fcn.140385e20
lea rcx, [0x140000000]
lea eax, [rax + rbx*2]
add eax, ebx
movsxd rdx, eax
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0x2c
jne 0x14038875b
movzx edx, byte [rdx + rcx + 0x3e40e0]
jmp 0x140388763
movzx edx, byte [rdx + rcx + 0x3e40f0]
movsxd rax, dword [rax + 0xc]
mov r11, qword [rsp + 0x60]
imul rcx, rax, 0x38
add rcx, r11
cmp dl, dil
jne 0x140388791
movzx eax, word [rcx + 0x14]
mov edx, 0xf241
and ax, dx
or ax, 1
mov word [rcx + 0x14], ax
jmp 0x14038abbc
movzx eax, dl
mov edx, 0xf244
mov qword [rcx], rax
movzx eax, word [rcx + 0x14]
and ax, dx
or ax, 4
mov word [rcx + 0x14], ax
jmp 0x14038abbc
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 4]
mov edx, dword [rbx + 0xc]
imul rcx, rax, 0x38
add rcx, r11
call fcn.140385e20
movsxd rdx, dword [rbx + 0x10]
mov r11, qword [rsp + 0x60]
movsxd rcx, eax
mov rax, rbx
movsxd rax, dword [rbx + 8]
xor rdx, rcx
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x140388802
call fcn.1403b1f80
mov r11, qword [rsp + 0x60]
mov r12, rbx
jmp 0x14038abc1
mov qword [rcx], rdx
mov word [rcx + 0x14], 4
jmp 0x14038abbc
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rcx, r11
add rbx, r11
movzx eax, word [rcx + 0x14]
test al, 1
jne 0x14038e849
test al, 0x24
je 0x140388847
cmp qword [rcx], 0
mov rax, r9
sete al
jmp 0x14038887d
test al, 8
je 0x140388851
movsd xmm0, qword [rcx]
jmp 0x14038886c
test al, 0x12
je 0x14038887a
call fcn.14030f910
mov r11, qword [rsp + 0x60]
xor r9d, r9d
mov r8, qword [rsp + 0x58]
mov edx, 1
ucomisd xmm0, xmm10
jp 0x140388875
je 0x14038887a
mov rax, r9
jmp 0x14038887d
mov rax, rdx
mov ecx, 0x9000
test word [rbx + 0x14], cx
je 0x1403888a2
mov rdx, rax
mov rcx, rbx
call fcn.1403b1f80
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
mov r12, qword [rsp + 0x40]
lea rcx, [0x140000000]
mov r10d, dword [rsp + 0x50]
mov qword [rbx], rax
mov word [rbx + 0x14], 4
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov r12, qword [rsp + 0x40]
lea rcx, [0x140000000]
mov word [rbx + 0x14], dx
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 4]
imul rdi, rax, 0x38
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
add rdi, r11
mov eax, 0x9000
add rbx, r11
test word [rbx + 0x14], ax
je 0x14038892a
mov rcx, rbx
call fcn.1403b0ca0
mov r11, qword [rsp + 0x60]
xor r9d, r9d
mov r8, qword [rsp + 0x58]
mov edx, 1
jmp 0x14038892e
mov word [rbx + 0x14], dx
test byte [rdi + 0x14], 1
jne 0x1403875bb
mov rcx, rdi
mov word [rbx + 0x14], 4
call fcn.14028c300
mov r12, qword [rsp + 0x40]
not rax
mov r11, qword [rsp + 0x60]
mov qword [rbx], rax
jmp 0x14038abc1
mov rcx, qword [r13 + 0x108]
mov rax, qword [rsp + 0x40]
test rcx, rcx
je 0x1403889a1
sub rax, qword [r13 + 0x88]
mov r8, qword [rcx + 0x28]
sar rax, 5
mov edx, eax
and eax, 7
shr rdx, 3
movzx ecx, byte [rdx + r8]
bt ecx, eax
jb 0x140388a01
bts ecx, eax
mov byte [rdx + r8], cl
mov edx, 1
mov r8, qword [rsp + 0x58]
jmp 0x1403889b0
mov rcx, qword [r13 + 0x88]
mov eax, dword [rax + 4]
cmp dword [rcx + 4], eax
je 0x140388a0b
mov rax, qword [r13 + 0x88]
mov r12, qword [rsp + 0x40]
mov ecx, dword [rax + 4]
mov dword [r12 + 4], ecx
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rsp + 0x40]
add rcx, r11
mov edx, dword [rax + 0xc]
call fcn.140385e20
test eax, eax
je 0x140387513
xor r9d, r9d
mov edx, 1
mov r8, qword [rsp + 0x58]
mov r12, qword [rsp + 0x40]
mov eax, dword [r12 + 8]
lea rcx, [0x140000000]
mov r11, qword [rsp + 0x60]
dec eax
movzx r14d, byte [rsp + 0x48]
mov r10d, dword [rsp + 0x50]
movsxd rsi, eax
shl rsi, 5
add rsi, r8
mov qword [rsp + 0x40], rsi
mov r12, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rax, qword [rsp + 0x40]
mov edx, r9d
cmp dword [rax + 0xc], 0
movsxd rax, dword [rax + 4]
sete dl
imul rcx, rax, 0x38
add rcx, r11
call fcn.140385e20
test eax, eax
jne 0x140387513
jmp 0x1403889fe
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x140388a10
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
test eax, eax
js 0x140388b1d
mov rcx, rax
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x40]
movsxd rdx, dword [rax + 0xc]
movzx eax, word [rcx + 0x4a]
cmp edx, eax
jge 0x140388b0e
mov ecx, dword [rcx + rdx*4 + 0x78]
mov edx, 1
cmp ecx, 0xc
jb 0x140388afa
test dl, cl
mov eax, 4
mov ecx, 8
cmove ax, cx
jmp 0x140388b44
mov rax, rcx
lea rcx, [0x140000000]
movzx eax, byte [rax + rcx + 0x3e4100]
jmp 0x140388b4b
mov rax, qword [rsp + 0x40]
mov edx, 1
mov ecx, dword [rax + 0x10]
jmp 0x140388b3d
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
movzx eax, word [rcx + r11 + 0x14]
lea rcx, [0x140000000]
and eax, 0x3f
movzx ecx, byte [rax + rcx + 0x3e4010]
dec ecx
mov eax, edx
shl ax, cl
lea rcx, [0x140000000]
mov r12, qword [rsp + 0x40]
test word [r12 + 2], ax
jne 0x140388a10
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x140388b9b
movsxd rax, dword [rbx + 0xc]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
jne 0x140388b9b
mov rax, rbx
movsxd rax, dword [rbx + 8]
jmp 0x140387f05
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x14038ef91
call fcn.1403b0ca0
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
test byte [rcx + r11 + 0x14], 1
je 0x140388a10
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x14038aeb7
cmp byte [rdx + 2], 0
je 0x14038aeb7
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x140388c4a
call fcn.1403b0ca0
jmp 0x1403889fe
mov edx, 1
mov word [rcx + 0x14], dx
jmp 0x140388a0b
mov rax, qword [rsp + 0x40]
mov r12, qword [rbp - 0x80]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rsp + 0x40]
mov r14d, dword [rcx + 8]
mov dword [rbp - 0x78], r14d
nop word [rax + rax]
mov r13, qword [rbx + 0x58]
mov eax, dword [r12 + 0x2c]
mov qword [rbp - 0x58], r13
cmp dword [rbx + 0x20], eax
je 0x140388ccb
cmp byte [rbx + 2], 0
jne 0x140388d72
cmp byte [rbx + 3], 0
mov rdi, qword [rbx + 0x30]
je 0x140388cc4
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x140388d19
lea eax, [r14 + 1]
mov eax, dword [rdx + rax*4]
test eax, eax
je 0x140388d19
mov rbx, qword [rbx + 0x28]
lea r14d, [rax - 1]
jmp 0x140388c76
cmp byte [rdi], 0
je 0x140388d2c
jmp 0x140388cd8
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x140388e92
mov rcx, rbx
call fcn.140390d80
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
je 0x140388c80
mov r13, r12
mov rdi, qword [rsp + 0x78]
mov eax, VariantTimeToDosDateTime
mov r12, qword [rsp + 0x70]
mov r14, qword [rsp + 0x40]
xor ebx, ebx
cmp byte [rsi + 0x67], 0
je 0x14038faa8
mov r15d, 7
jmp 0x14038fade
mov rcx, rbx
call fcn.1403906e0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140388ceb
mov rcx, rdi
call fcn.140300140
mov eax, dword [rdi + 0x40]
mov dword [rbx + 0x68], eax
mov rax, qword [rdi + 0x88]
movzx ecx, word [rdi + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [rdi + 0x38]
cmp ecx, edx
jle 0x140388d66
mov ecx, edx
test edx, edx
mov r9d, 0
cmovs ecx, r9d
mov dword [rbx + 0x6c], ecx
mov rcx, qword [rdi + 0x38]
jmp 0x140388da0
mov dword [rbx + 0x6c], ecx
xor r9d, r9d
mov rcx, qword [rdi + 0x38]
jmp 0x140388da0
cmp byte [rbx], 3
jne 0x140388e1a
movsxd rax, dword [rbx + 0x24]
test eax, eax
jle 0x140388e1a
imul rcx, rax, 0x38
add rcx, qword [rsp + 0x60]
xor r9d, r9d
mov eax, dword [rcx + 0x10]
mov dword [rbx + 0x6c], eax
mov dword [rbx + 0x68], eax
mov rcx, qword [rcx + 8]
mov qword [rbx + 0x60], rcx
mov eax, dword [r12 + 0x2c]
mov dword [rbx + 0x20], eax
movzx eax, byte [rcx]
mov dword [r13], eax
cmp eax, 0x80
jae 0x140388dc1
mov eax, 1
jmp 0x140388dd3
mov rcx, qword [rbx + 0x60]
mov rdx, r13
call fcn.1403669d0
movzx eax, al
xor r9d, r9d
mov edx, 0x40
mov rcx, rbx
mov dword [rbx + rdx], eax
mov word [rbx + 0x4a], r9w
mov eax, dword [r13]
cmp dword [rbx + 0x6c], eax
jae 0x140388e11
mov qword [rbx + 0x60], r9
mov dword [rbx + 0x6c], r9d
mov eax, dword [r13]
cmp eax, 0x18003
ja 0x1403890fd
cmp eax, dword [rbx + 0x68]
jbe 0x140388e95
jmp 0x1403890fd
mov rax, qword [rbx + 0x60]
jmp 0x140388f40
mov rax, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x140388e58
call fcn.1403b0ca0
mov r11, qword [rsp + 0x60]
mov r13, qword [rbp - 0x80]
movzx r14d, byte [rsp + 0x48]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
mov r12, qword [rsp + 0x40]
mov edx, 1
mov r13, qword [rbp - 0x80]
xor r9d, r9d
movzx r14d, byte [rsp + 0x48]
mov r10d, dword [rsp + 0x50]
mov r8, qword [rsp + 0x58]
mov word [rcx + 0x14], dx
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
xor r9d, r9d
movzx eax, word [rbx + 0x4a]
cmp eax, r14d
ja 0x1403891fe
mov eax, dword [r13]
cmp dword [rbx + 0x40], eax
jae 0x140389142
mov rax, qword [rbx + 0x60]
mov qword [rbp - 0x68], rax
test rax, rax
jne 0x140388f44
mov qword [rbp + 0x68], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x38], xmm0
movups xmmword [rbp + 0x48], xmm0
movups xmmword [rbp + 0x58], xmm0
mov r10, qword [rbx + 0x30]
mov r8d, dword [r13]
mov rax, qword [r10 + 0x88]
movzx ecx, word [r10 + 0x44]
mov edx, dword [rax + 0x58]
sub edx, dword [r10 + 0x38]
cmp ecx, edx
jle 0x140388efa
test edx, edx
mov ecx, edx
cmovs ecx, r9d
mov rax, qword [r10 + 0x38]
mov qword [rbp - 0x68], rax
mov qword [rbp + 0x40], rax
cmp r8d, ecx
ja 0x140388f1f
mov ecx, 0x4010
mov dword [rbp + 0x48], r8d
mov word [rbp + 0x4c], cx
mov dword [rsp + 0x4c], r9d
jmp 0x140388f44
lea r9, [rbp + 0x38]
xor edx, edx
mov rcx, r10
call fcn.140391bc0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140388ceb
mov rax, qword [rbp + 0x40]
mov qword [rbp - 0x68], rax
movzx r12d, word [rbx + 0x4a]
mov esi, dword [rbx + 0x40]
mov r14d, r12d
mov rcx, qword [rbp - 0x58]
add rsi, rax
mov r15d, dword [r13 + r12*4]
mov r13d, dword [r13]
add r13, rax
movzx edi, byte [rsi]
mov dword [rbp + 0x2e0], edi
mov dword [rbx + r14*4 + 0x78], edi
cmp edi, 0x80
jae 0x140388f8c
lea rdx, [0x140000000]
inc rsi
movzx eax, byte [rdi + rdx + 0x3e3f80]
jmp 0x140388fce
lea rdx, [rbp + 0x2e0]
mov rcx, rsi
call fcn.1403669d0
mov edi, dword [rbp + 0x2e0]
movzx eax, al
add rsi, rax
mov dword [rbx + r14*4 + 0x78], edi
cmp edi, 0x80
jb 0x140388fbb
lea eax, [rdi - 0xc]
shr eax, 1
jmp 0x140388fca
lea rcx, [0x140000000]
movzx eax, byte [rdi + rcx + 0x3e3f80]
mov rcx, qword [rbp - 0x58]
inc r12d
add r15, rax
movsxd r14, r12d
mov dword [rcx + r14*4], r15d
cmp r12d, dword [rbp - 0x78]
ja 0x140388fec
cmp rsi, r13
jb 0x140388f62
jmp 0x140388ff5
cmp rsi, r13
jb 0x1403890b5
cmp rsi, r13
ja 0x1403890c1
mov eax, dword [rbx + 0x68]
cmp r15, rax
jne 0x1403890c1
xor r9d, r9d
sub esi, dword [rbp - 0x68]
mov edx, 0x9000
mov word [rbx + 0x4a], r12w
mov dword [rbx + 0x40], esi
cmp qword [rbx + 0x60], 0
jne 0x140389041
test word [rbp + 0x4c], dx
jne 0x140389030
cmp dword [rbp + 0x58], 0
je 0x140389041
lea rcx, [rbp + 0x38]
call fcn.1403b0c50
xor r9d, r9d
mov edx, 0x9000
mov r13, qword [rbp - 0x58]
mov r14d, dword [rbp - 0x78]
mov rsi, qword [rsp + 0x68]
movzx eax, word [rbx + 0x4a]
cmp eax, r14d
ja 0x140389205
mov r15, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
cmp byte [r15 + 1], 0xf6
jne 0x140389199
mov rax, qword [r15 + 0x10]
test word [rcx + 0x14], dx
je 0x14038914f
mov r8d, 0x2000
mov rdx, rax
call fcn.1403afa50
mov r11, qword [rsp + 0x60]
mov r15d, dword [rsp + 0x4c]
mov r13, qword [rbp - 0x80]
movzx r14d, byte [rsp + 0x48]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
mov eax, dword [rbx + 0x68]
cmp r15, rax
jbe 0x14038900a
cmp dword [rcx], 0
jne 0x1403890d4
xor r9d, r9d
mov rsi, r13
mov r12d, r9d
jmp 0x14038900d
cmp qword [rbx + 0x60], 0
jne 0x1403890f5
mov eax, 0x9000
test word [rbp + 0x4c], ax
jne 0x1403890ec
cmp dword [rbp + 0x58], 0
je 0x1403890f5
lea rcx, [rbp + 0x38]
call fcn.1403b0c50
mov rsi, qword [rsp + 0x68]
xor r9d, r9d
mov r8, qword [rsp + 0x58]
mov eax, dword [r8 + 0xc]
test eax, eax
jle 0x14038f3e3
mov r13, qword [rbp - 0x80]
dec eax
movzx r14d, byte [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
movsxd r15, eax
shl r15, 5
add r15, r8
mov qword [rsp + 0x40], r15
mov r12, qword [rsp + 0x40]
mov r15d, dword [rsp + 0x4c]
jmp 0x14038abce
mov edi, r9d
mov edx, 0x9000
jmp 0x14038904e
movups xmm0, xmmword [rax]
mov r15d, dword [rsp + 0x4c]
mov edx, 0x2000
mov r12, qword [rsp + 0x40]
mov r13, qword [rbp - 0x80]
movzx r14d, byte [rsp + 0x48]
movups xmmword [rcx], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rcx + 0x10], xmm1
test word [rax + 0x14], dx
jne 0x14038bad6
mov r10d, dword [rsp + 0x50]
mov eax, 0xafff
and word [rcx + 0x14], ax
or word [rcx + 0x14], dx
jmp 0x14038abc9
test word [rcx + 0x14], dx
je 0x1403891c2
call fcn.1403b0ca0
mov r11, qword [rsp + 0x60]
mov r15d, dword [rsp + 0x4c]
mov r13, qword [rbp - 0x80]
movzx r14d, byte [rsp + 0x48]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
mov r15d, dword [rsp + 0x4c]
mov edx, 1
mov r12, qword [rsp + 0x40]
mov r13, qword [rbp - 0x80]
movzx r14d, byte [rsp + 0x48]
mov r10d, dword [rsp + 0x50]
mov r8, qword [rsp + 0x58]
mov word [rcx + 0x14], dx
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov eax, r14d
mov edi, dword [rbx + rax*4 + 0x78]
mov rdx, qword [rsp + 0x40]
movsxd rax, dword [rdx + 0xc]
imul rsi, rax, 0x38
mov eax, 0x9000
add rsi, qword [rsp + 0x60]
test word [rsi + 0x14], ax
je 0x14038922f
mov rcx, rsi
call fcn.1403b0ca0
mov rdx, qword [rsp + 0x40]
lea eax, [r14 + 1]
mov eax, dword [r13 + rax*4]
cmp dword [rbx + 0x6c], eax
jb 0x140389363
mov eax, r14d
mov r14d, dword [r13 + rax*4]
add r14, qword [rbx + 0x60]
cmp edi, 0xc
jae 0x14038926d
mov rcx, r14
mov edx, edi
mov r8, rsi
call fcn.1403942e0
mov r15d, dword [rsp + 0x4c]
mov r13, qword [rbp - 0x80]
jmp 0x140387e86
movzx eax, byte [rsp + 0x48]
lea ebx, [rdi - 0xc]
shr ebx, 1
mov dword [rsi + 0x10], ebx
mov byte [rsi + 0x16], al
lea edx, [rbx + 2]
cmp dword [rsi + 0x20], edx
jge 0x1403892e5
mov rax, qword [rsp + 0x68]
cmp ebx, dword [rax + 0x88]
jg 0x14038f649
xor r8d, r8d
mov word [rsi + 0x14], 1
mov rcx, rsi
call fcn.140391d30
test eax, eax
je 0x1403892ed
mov rsi, qword [rsp + 0x68]
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x78]
mov r12, qword [rsp + 0x70]
mov rcx, rsi
call fcn.14036c6d0
lea rdx, str.out_of_memory
mov rcx, r13
call fcn.140386d40
mov eax, VariantTimeToDosDateTime
mov r15d, 7
jmp 0x140388cfd
mov rax, qword [rsi + 0x28]
mov qword [rsi + 8], rax
mov rcx, qword [rsi + 8]
mov r8, rbx
mov rdx, r14
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rsi + 8]
lea rcx, [0x140000000]
mov r15d, dword [rsp + 0x4c]
mov edx, 1
mov r12, qword [rsp + 0x40]
mov r13, qword [rbp - 0x80]
mov r11, qword [rsp + 0x60]
movzx r14d, byte [rsp + 0x48]
mov r10d, dword [rsp + 0x50]
mov r8, qword [rsp + 0x58]
mov byte [rbx + rax], 0
mov rax, qword [rsi + 8]
mov byte [rax + rbx + 1], 0
mov eax, edi
and eax, 1
xor r9d, r9d
movzx eax, word [rcx + rax*2 + 0x3e410c]
mov word [rsi + 0x14], ax
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
movzx eax, byte [rsp + 0x48]
mov byte [rsi + 0x16], al
movzx eax, byte [rdx + 2]
and al, 0xc0
je 0x140389386
cmp al, 0x80
je 0x1403893aa
cmp edi, 0xc
jb 0x140389386
test dil, 1
je 0x1403893aa
cmp al, 0xc0
je 0x1403893aa
cmp edi, 0x80
jb 0x140389395
lea eax, [rdi - 0xc]
shr eax, 1
jmp 0x1403893a6
mov eax, edi
lea rcx, [0x140000000]
movzx eax, byte [rax + rcx + 0x3e3f80]
test eax, eax
jne 0x1403893b6
lea rcx, [0x1403e0580]
jmp 0x140389255
mov eax, r14d
mov r8d, edi
mov qword [rsp + 0x30], rsi
mov edx, r14d
mov rcx, rbx
mov r9d, dword [r13 + rax*4]
mov eax, dword [rbp - 0x60]
mov r13, qword [rbp - 0x80]
mov dword [rsp + 0x28], eax
mov eax, dword [r13 + 0x2c]
mov dword [rsp + 0x20], eax
call fcn.1403afa90
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
je 0x140387e86
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x78]
cmp eax, 7
je 0x1403892b9
cmp eax, 0x12
je 0x14038f655
jmp 0x140388cf3
mov rax, qword [rsp + 0x40]
mov esi, r9d
mov r14, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
mov r15, qword [r14 + 8]
add rbx, r11
cmp r9w, word [r14 + 0x36]
jge 0x14038f21c
lea rdi, [r15 + 0xc]
nop
movzx eax, word [rdi + 6]
test al, 0x60
je 0x14038945f
test al, 0x20
jne 0x1403895dc
mov rax, qword [rsp + 0x40]
cmp dword [rax + 0xc], 0
jne 0x1403895d8
movzx ecx, byte [rdi]
cmp cl, 0x43
jl 0x140389490
movzx eax, word [rbx + 0x14]
test al, 4
jne 0x1403894cc
test al, 0x28
jne 0x140389481
test al, 2
je 0x1403894cc
mov rcx, rbx
call fcn.140299240
jmp 0x1403894cc
cmp cl, 0x45
jg 0x1403894cc
mov rcx, rbx
call fcn.140391010
jmp 0x1403894cc
cmp cl, 0x42
jne 0x1403894cc
movzx ecx, word [rbx + 0x14]
test cl, 2
jne 0x1403894c1
test cl, 0x2c
je 0x1403894c1
cmp dword [rbx + 0x20], 0x20
jge 0x140389516
xor r8d, r8d
mov edx, reloc.SinoSPE.dll_Ordinal_32
mov rcx, rbx
call fcn.140391d30
test eax, eax
je 0x140389526
mov byte [rbx + 0x16], 0
mov r12d, 0xffd3
and word [rbx + 0x14], r12w
movzx ecx, word [rbx + 0x14]
movzx edx, cx
test cl, 1
jne 0x1403895d3
mov eax, dword [rdi - 4]
shr eax, 4
and eax, 0xf
sub eax, 2
je 0x1403895ca
sub eax, 1
je 0x1403895c5
sub eax, 1
je 0x1403895c5
sub eax, 1
je 0x14038956e
cmp eax, 1
jne 0x1403895d3
test cl, 2
jmp 0x1403895cd
mov rax, qword [rbx + 0x28]
and cx, 0x2d
mov qword [rbx + 8], rax
mov word [rbx + 0x14], cx
mov rdx, qword [rbx + 8]
mov r8, rbx
mov ecx, reloc.SinoSPE.dll_Ordinal_32
call fcn.1403b0ce0
mov byte [rbx + 0x16], 1
mov r12d, 0xffd3
movzx eax, word [rbx + 0x14]
and ax, r12w
or ax, 0x202
mov word [rbx + 0x14], ax
movzx eax, byte [rsp + 0x48]
cmp al, 1
je 0x1403894c7
movzx edx, al
mov rcx, rbx
call fcn.140392690
jmp 0x1403894c7
test cl, 4
je 0x1403895c0
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
mov rax, rbx
ja 0x14038959b
or cx, 0x20
jmp 0x1403895ab
xorps xmm0, xmm0
or cx, 8
cvtsi2sd xmm0, rdx
movsd qword [rbx], xmm0
mov edx, Ordinal_23
mov r8d, 0xfffb
and cx, r8w
mov word [rdx + rax], cx
jmp 0x1403895d3
test cl, 0x28
jmp 0x1403895cd
test cl, 4
jmp 0x1403895cd
test cl, 0x10
je 0x14038f3f9
mov edx, 1
add rbx, 0x38
movsx eax, word [r14 + 0x36]
inc esi
add rdi, 0x18
cmp esi, eax
jl 0x140389440
mov rsi, qword [rsp + 0x68]
lea rcx, [0x140000000]
mov r15d, dword [rsp + 0x4c]
xor r9d, r9d
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
movzx r14d, byte [rsp + 0x48]
mov r10d, dword [rsp + 0x50]
mov r8, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rax, qword [rsp + 0x40]
mov rdi, qword [rax + 0x10]
movsxd rax, dword [rax + 4]
imul rbx, rax, 0x38
movzx eax, byte [rdi]
add rbx, r11
cmp al, 0x43
jl 0x140389671
movzx ecx, word [rbx + 0x14]
test cl, 4
jne 0x1403896aa
test cl, 0x28
jne 0x140389663
test cl, 2
je 0x1403896aa
mov rcx, rbx
call fcn.140299240
jmp 0x1403896aa
cmp al, 0x45
jg 0x1403896aa
mov rcx, rbx
call fcn.140391010
jmp 0x1403896aa
cmp al, 0x42
jne 0x1403896aa
movzx ecx, word [rbx + 0x14]
test cl, 2
jne 0x1403896a1
test cl, 0x2c
je 0x1403896a1
cmp dword [rbx + 0x20], 0x20
jge 0x1403896ed
xor r8d, r8d
mov edx, reloc.SinoSPE.dll_Ordinal_32
mov rcx, rbx
call fcn.140391d30
test eax, eax
je 0x1403896fd
mov byte [rbx + 0x16], 0
mov esi, 0xffd3
and word [rbx + 0x14], si
cmp byte [rdi], 0x45
jne 0x14038975d
movzx ecx, word [rbx + 0x14]
test cl, 4
je 0x14038975d
mov rdx, qword [rbx]
movabs rax, 0x800000000000
add rax, rdx
movabs r8, 0xffffffffffff
cmp rax, r8
ja 0x140389741
mov eax, 0xfffb
and cx, ax
or cx, 0x20
jmp 0x140389759
mov rax, qword [rbx + 0x28]
and cx, 0x2d
mov qword [rbx + 8], rax
mov word [rbx + 0x14], cx
mov rdx, qword [rbx + 8]
mov r8, rbx
mov ecx, reloc.SinoSPE.dll_Ordinal_32
call fcn.1403b0ce0
mov byte [rbx + 0x16], 1
mov esi, 0xffd3
movzx eax, word [rbx + 0x14]
and ax, si
or ax, 0x202
mov word [rbx + 0x14], ax
cmp r14b, 1
je 0x1403896a6
movzx edx, r14b
mov rcx, rbx
call fcn.140392690
jmp 0x1403896a6
xorps xmm0, xmm0
mov eax, 0xfff9
cvtsi2sd xmm0, rdx
and cx, ax
or cx, 8
movsd qword [rbx], xmm0
mov word [rbx + 0x14], cx
movzx eax, byte [rdi + 1]
inc rdi
test al, al
je 0x14038bac9
add rbx, 0x38
mov edx, 1
jmp 0x140389642
mov rcx, qword [rsp + 0x40]
mov rsi, r9
mov r12d, r9d
mov r13, r9
movsxd rax, dword [rcx + 4]
mov rdi, qword [rcx + 0x10]
imul r14, rax, 0x38
mov eax, dword [rcx + 8]
dec eax
add r14, r11
cdqe
imul r15, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rcx, rax, 0x38
add r15, r14
mov qword [rbp - 0x68], r14
add rcx, r11
mov qword [rbp - 0x58], r15
mov qword [rbp + 0x2e0], rcx
test rdi, rdi
je 0x140389820
lea rbx, [r14 + 0x14]
mov r15d, 0xfffb
movzx r14d, byte [rsp + 0x48]
nop dword [rax]
nop dword [rax + rax]
movzx edx, byte [rdi]
lea rcx, [rbx - 0x14]
movzx r8d, r14b
call fcn.1402991d0
cmp byte [rdi], 0x45
jne 0x140389807
movzx eax, word [rbx]
test al, 4
je 0x140389807
and ax, r15w
or ax, 0x20
mov word [rbx], ax
inc rdi
add rbx, 0x38
cmp byte [rdi], 0
jne 0x1403897e0
mov r14, qword [rbp - 0x68]
mov edx, 1
mov r15, qword [rbp - 0x58]
lea rdi, [r15 + 0x24]
movzx ecx, word [rdi - 0x10]
test cl, 1
je 0x140389845
inc r12d
mov eax, 0x400
and cx, ax
neg cx
sbb ebx, ebx
and ebx, 0xa
jmp 0x1403899ce
test cl, 0x24
je 0x140389951
mov r8, qword [rdi - 0x24]
mov rdx, r8
test r8, r8
jns 0x14038985d
not rdx
inc r12d
cmp rdx, 0x7f
ja 0x14038989a
mov rax, r8
and eax, 1
cmp rax, r8
jne 0x14038988b
mov rax, qword [rbp - 0x80]
cmp byte [rax + 0xc5], 4
jb 0x14038988b
lea ebx, [rdx + 8]
mov edx, 1
jmp 0x1403899ce
mov ebx, 1
inc rsi
mov edx, ebx
jmp 0x1403899ce
cmp rdx, 0x7fff
ja 0x1403898b6
add rsi, 2
mov ebx, 2
mov edx, 1
jmp 0x1403899ce
cmp rdx, 0x7fffff
ja 0x1403898d2
add rsi, 3
mov ebx, 3
mov edx, 1
jmp 0x1403899ce
cmp rdx, 0x7fffffff
ja 0x1403898ee
add rsi, 4
mov ebx, 4
mov edx, 1
jmp 0x1403899ce
movabs rax, 0x7fffffffffff
cmp rdx, rax
ja 0x140389910
add rsi, 6
mov ebx, 5
mov edx, 1
jmp 0x1403899ce
add rsi, 8
test cl, 0x20
je 0x140389945
xorps xmm0, xmm0
mov eax, 0xffdf
cvtsi2sd xmm0, r8
and cx, ax
mov ebx, 7
or cx, 8
mov edx, 1
movsd qword [rdi - 0x24], xmm0
mov word [rdi - 0x10], cx
jmp 0x1403899ce
mov ebx, 6
mov edx, 1
jmp 0x1403899ce
test cl, 8
je 0x140389964
inc r12d
mov ebx, 7
add rsi, 8
jmp 0x1403899ce
mov r15d, dword [rdi - 0x14]
mov eax, ecx
shr eax, 1
and eax, 1
bt cx, 0xa
lea ebx, [r15 + 6]
lea ebx, [rax + rbx*2]
jae 0x1403899ac
movsxd rax, dword [rdi - 0x24]
lea ebx, [rbx + rax*2]
test rsi, rsi
je 0x1403899a5
lea rcx, [rdi - 0x24]
call fcn.140391a70
test eax, eax
jne 0x1403892ab
add r15d, dword [rdi - 0x24]
mov edx, 1
jmp 0x1403899a8
add r13, rax
mov r14, qword [rbp - 0x68]
mov eax, r15d
mov ecx, edx
add rsi, rax
mov eax, ebx
shr rax, 7
test rax, rax
je 0x1403899cb
nop
inc ecx
shr rax, 7
test rax, rax
jne 0x1403899c0
add r12d, ecx
mov rax, rdi
mov dword [rax], ebx
lea rax, [rdi - 0x24]
cmp rax, r14
je 0x1403899e5
sub rdi, 0x38
jmp 0x140389824
cmp r12d, 0x7e
jg 0x1403899f3
mov r15d, 1
jmp 0x140389a32
movsxd rax, r12d
shr rax, 7
test rax, rax
je 0x140389a0b
nop
inc edx
shr rax, 7
test rax, rax
jne 0x140389a00
add r12d, edx
mov r15d, 1
movsxd rax, r12d
mov ecx, r15d
shr rax, 7
test rax, rax
je 0x140389a2e
inc ecx
shr rax, 7
test rax, rax
jne 0x140389a23
cmp edx, ecx
jge 0x140389a35
inc r12d
mov rdi, qword [rbp + 0x2e0]
movsxd rbx, r12d
add rbx, rsi
movsxd rdx, dword [rdi + 0x20]
lea rcx, [rbx + r13]
cmp rcx, rdx
jle 0x140389a7f
mov rsi, qword [rsp + 0x68]
movsxd rax, dword [rsi + 0x88]
cmp rcx, rax
jg 0x14038f64c
cmp edx, ebx
jge 0x140389a7f
xor r8d, r8d
mov edx, ebx
mov rcx, rdi
call fcn.140391d30
test eax, eax
jne 0x1403892b0
jmp 0x140389a87
mov rax, qword [rdi + 0x28]
mov qword [rdi + 8], rax
mov dword [rdi + 0x10], ebx
mov word [rdi + 0x14], reloc.SinoSPE.dll_Ordinal_16
test r13, r13
je 0x140389a9e
mov dword [rdi], r13d
mov word [rdi + 0x14], 0x410
mov rdi, qword [rdi + 8]
movsxd rbx, r12d
add rbx, rdi
cmp r12d, 0x80
jge 0x140389ab9
mov byte [rdi], r12b
inc rdi
jmp 0x140389afa
movsxd rdx, r12d
cmp rdx, 0x7f
ja 0x140389acc
and dl, 0x7f
mov eax, r15d
mov byte [rdi], dl
jmp 0x140389af5
cmp rdx, 0x3fff
ja 0x140389aed
mov rax, rdx
shr rax, 7
or al, 0x80
mov byte [rdi], al
and dl, 0x7f
mov byte [rdi + 1], dl
mov eax, 2
jmp 0x140389af5
mov rcx, rdi
call fcn.1402ef7e0
cdqe
add rdi, rax
lea rsi, [r14 + 0x10]
mov r14, qword [rbp - 0x58]
mov eax, dword [rsi + 0x14]
cmp eax, 7
ja 0x140389b7d
mov byte [rdi], al
inc rdi
test eax, eax
je 0x140389bf1
mov rcx, qword [rsi - 0x10]
lea rdx, [0x140000000]
movzx edx, byte [rax + rdx + 0x3e3f80]
mov eax, edx
sub eax, 1
je 0x140389b76
sub eax, 1
je 0x140389b6f
sub eax, 1
je 0x140389b68
sub eax, 1
je 0x140389b61
cmp eax, 2
je 0x140389b53
mov byte [rbx + 7], cl
shr rcx, 8
mov byte [rbx + 6], cl
shr rcx, 8
mov byte [rbx + 5], cl
shr rcx, 8
mov byte [rbx + 4], cl
shr rcx, 8
mov byte [rbx + 3], cl
shr rcx, 8
mov byte [rbx + 2], cl
shr rcx, 8
mov byte [rbx + 1], cl
shr rcx, 8
mov byte [rbx], cl
add rbx, rdx
jmp 0x140389bf1
cmp eax, 0x80
jae 0x140389b97
mov byte [rdi], al
inc rdi
cmp eax, 0xe
jb 0x140389bf1
movsxd rax, dword [rsi]
test eax, eax
jle 0x140389bf1
jmp 0x140389bdc
mov rdx, rax
cmp rax, 0x7f
ja 0x140389baa
and dl, 0x7f
mov eax, r15d
mov byte [rdi], dl
jmp 0x140389bd0
cmp rdx, 0x3fff
ja 0x140389bc8
shr rax, 7
or al, 0x80
mov byte [rdi], al
and dl, 0x7f
mov byte [rdi + 1], dl
mov eax, 2
jmp 0x140389bd0
mov rcx, rdi
call fcn.1402ef7e0
cdqe
add rdi, rax
movsxd rax, dword [rsi]
test eax, eax
je 0x140389bf1
mov rdx, qword [rsi - 8]
mov r8, rax
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
movsxd rax, dword [rsi]
add rbx, rax
lea rax, [rsi - 0x10]
cmp rax, r14
je 0x14038baba
add rsi, 0x38
jmp 0x140389b02
mov rbx, qword [rsp + 0x40]
mov rax, qword [r13 + 0x78]
cmp dword [rbx + 0xc], 0
movsxd rcx, dword [rbx + 4]
mov rcx, qword [rax + rcx*8]
mov rdx, qword [rcx + 0x30]
je 0x140389c2f
mov rcx, rdx
call fcn.14033c5e0
mov rbx, rax
jmp 0x140389c52
lea r8, [rbp - 0x68]
mov qword [rbp - 0x68], r9
mov rcx, rsi
call fcn.140339db0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140388cf3
mov rbx, qword [rbp - 0x68]
mov rax, qword [rsp + 0x40]
mov ecx, 0x9000
movsxd rax, dword [rax + 8]
imul rax, rax, 0x38
add rax, qword [r13 + 0x68]
test word [rax + 0x14], cx
je 0x140389c7e
mov rcx, rax
call fcn.1403152d0
mov qword [rax], rbx
jmp 0x14038c171
mov word [rax + 0x14], 4
mov qword [rax], rbx
jmp 0x14038c171
mov rax, qword [rsp + 0x40]
mov r10d, dword [rax + 4]
mov rsi, qword [rax + 0x10]
mov dword [rbp - 0x78], r10d
test r10d, r10d
jne 0x140389d7e
mov rdi, qword [rsp + 0x68]
cmp dword [rdi + 0xe0], r10d
jg 0x14038f463
test rsi, rsi
jne 0x140389cc2
mov ebx, r9d
jmp 0x140389cdf
mov rbx, 0xffffffffffffffff
nop dword [rax]
inc rbx
cmp byte [rsi + rbx], 0
jne 0x140389cd0
and ebx, 0x3fffffff
mov r8d, dword [rdi + 0x30c]
xor edx, edx
add r8d, dword [rdi + 0x308]
mov rcx, rdi
call fcn.140395d60
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14038f478
mov edx, ebx
mov rcx, rdi
add rdx, 0x21
call fcn.140342dc0
mov rdi, rax
test rax, rax
je 0x14038a064
lea r9, [rax + 0x20]
mov rdx, rsi
mov rcx, r9
mov qword [rax], r9
lea r8d, [rbx + 1]
call sub.VCRUNTIME140.dll_memcpy
mov rsi, qword [rsp + 0x68]
cmp byte [rsi + 0x65], r15b
je 0x140389d4b
mov byte [rsi + 0x65], r15b
mov byte [rsi + 0x6d], 1
jmp 0x140389d51
inc dword [rsi + 0x308]
mov rax, qword [rsi + 0x2f8]
mov qword [rdi + 0x18], rax
mov qword [rsi + 0x2f8], rdi
mov rax, qword [rsi + 0x310]
mov qword [rdi + 8], rax
mov rax, qword [rsi + 0x318]
mov qword [rdi + 0x10], rax
jmp 0x14038a074
mov rax, qword [rsp + 0x68]
mov r13d, r9d
mov r12, qword [rax + 0x2f8]
test r12, r12
je 0x140389e85
lea r11, [0x140000000]
nop dword [rax]
mov rdx, qword [r12]
mov r9, rsi
sub r9, rdx
nop word [rax + rax]
movzx eax, byte [rdx]
movzx r8d, byte [rdx + r9]
cmp eax, r8d
jne 0x140389e56
test eax, eax
jne 0x140389e6c
mov rsi, qword [rsp + 0x68]
cmp dword [rsi + 0xe0], eax
jle 0x140389de0
cmp r10d, 1
je 0x14038f480
cmp qword [r12 + 0x18], 0
jne 0x140389eab
cmp byte [rsi + 0x6d], 0
je 0x140389eab
mov eax, 1
mov r15d, eax
cmp r10d, eax
jne 0x140389eb2
mov rbx, qword [rbp - 0x80]
mov edx, eax
mov rcx, rbx
call fcn.140385f50
mov r15d, eax
test eax, eax
jne 0x14038fc54
mov rcx, rbx
mov byte [rsi + 0x65], 1
call fcn.1403909d0
cmp eax, 5
je 0x14038f4aa
mov r15d, dword [rbx + 0x34]
mov dword [rsp + 0x4c], r15d
test r15d, r15d
jne 0x14038f49e
mov byte [rsi + 0x6d], r15b
mov r15d, 1
jmp 0x140389fbe
movzx ecx, byte [rax + r11 + 0x3e0460]
movzx eax, byte [r8 + r11 + 0x3e0460]
cmp ecx, eax
jne 0x140389e74
inc rdx
jmp 0x140389db0
mov r12, qword [r12 + 0x18]
inc r13d
test r12, r12
jne 0x140389da0
mov r13, qword [rbp - 0x80]
lea rdx, str.no_such_savepoint:__s
mov rcx, r13
mov r8, rsi
call fcn.140386d40
mov r15d, 1
mov rsi, qword [rsp + 0x68]
jmp 0x140388cf3
xor edx, edx
mov r15d, edx
jmp 0x140389eb4
xor edx, edx
mov eax, dword [rsi + 0x308]
sub eax, r13d
lea r13d, [rax - 1]
cmp r10d, 2
jne 0x140389f2f
mov r14d, dword [rsi + 0x2c]
mov edi, edx
and r14d, 1
cmp dword [rsi + 0x28], 0
jle 0x140389f32
mov rax, qword [rsp + 0x68]
mov esi, r14d
xor esi, 1
mov rbx, rdx
nop word [rax + rax]
mov rcx, qword [rax + 0x20]
mov r8d, esi
mov edx, 0x204
mov rcx, qword [rcx + rbx + 8]
call fcn.14033d440
mov dword [rsp + 0x4c], eax
mov ecx, eax
test eax, eax
jne 0x14038fa87
mov rax, qword [rsp + 0x68]
inc edi
add rbx, 0x20
cmp edi, dword [rax + 0x28]
jl 0x140389ef0
mov r10d, dword [rbp - 0x78]
mov rsi, rax
xor edx, edx
jmp 0x140389f36
mov r14d, edx
mov ecx, dword [rsp + 0x4c]
cmp dword [rsi + 0x28], 0
mov edi, edx
jle 0x140389f72
mov rbx, rdx
mov rcx, qword [rsi + 0x20]
mov r8d, r13d
mov edx, r10d
mov rcx, qword [rcx + rbx + 8]
call fcn.14033c650
mov dword [rsp + 0x4c], eax
mov ecx, eax
test eax, eax
jne 0x14038fa8c
mov r10d, dword [rbp - 0x78]
inc edi
add rbx, 0x20
cmp edi, dword [rsi + 0x28]
jl 0x140389f41
test r14d, r14d
je 0x140389fab
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x140389f9b
mov eax, dword [rcx + 0xc8]
and eax, 0xfffffffd
or eax, 1
mov dword [rcx + 0xc8], eax
mov rcx, qword [rcx + 0x10]
test rcx, rcx
jne 0x140389f80
mov rcx, rsi
call fcn.140377a10
or dword [rsi + 0x2c], 1
mov ecx, dword [rsp + 0x4c]
mov rdi, qword [rsp + 0x78]
test ecx, ecx
jne 0x14038fa9a
movzx r14d, byte [rsp + 0x48]
mov rcx, qword [rsi + 0x2f8]
cmp rcx, r12
je 0x140389ff8
nop word [rax + rax]
mov rax, qword [rcx + 0x18]
mov rdx, rcx
mov rcx, rsi
mov qword [rsi + 0x2f8], rax
call fcn.140342c30
dec dword [rsi + 0x308]
mov rcx, qword [rsi + 0x2f8]
cmp rcx, r12
jne 0x140389fd0
mov ebx, dword [rbp - 0x78]
cmp ebx, 1
jne 0x14038a024
mov rax, qword [r12 + 0x18]
mov rdx, r12
mov rcx, rsi
mov qword [rsi + 0x2f8], rax
call fcn.140342c30
test r15d, r15d
jne 0x14038a06b
dec dword [rsi + 0x308]
jmp 0x14038a046
mov rax, qword [r12 + 8]
mov qword [rsi + 0x310], rax
mov rax, qword [r12 + 0x10]
mov qword [rsi + 0x318], rax
test r15d, r15d
je 0x14038a046
cmp ebx, 2
jne 0x14038a06b
mov r8d, r13d
mov edx, ebx
mov rcx, rsi
call fcn.140395d60
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14038fa9f
jmp 0x14038a070
mov rsi, qword [rsp + 0x68]
jmp 0x14038a074
mov r15d, dword [rsp + 0x4c]
mov r13, qword [rbp - 0x80]
cmp byte [r13 + 0xc7], 3
jne 0x140387513
mov r14, qword [rsp + 0x40]
mov r15d, 0x65
mov r12, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
cmp rdi, r12
jb 0x14038fc66
mov rdx, qword [rsi + 0x228]
test rdx, rdx
je 0x14038fc66
mov eax, dword [rsi + 0x238]
mov rcx, qword [rsi + 0x230]
add r12, rax
call rdx
test eax, eax
je 0x14038a097
mov eax, VariantTimeToDosDateTime
mov r12, 0xffffffffffffffff
mov r15d, 9
jmp 0x140388d02
mov rcx, qword [rsp + 0x40]
mov dword [rbp - 0x50], r9d
mov edx, dword [rcx + 8]
test edx, edx
je 0x14038a104
mov rax, qword [rsi + 0x30]
movabs r8, 0x200100000
test r8, rax
jne 0x14038f4d9
movsxd r14, dword [rcx + 4]
shl r14, 5
add r14, qword [rsi + 0x20]
mov rbx, qword [r14 + 8]
test rbx, rbx
je 0x14038a28a
cmp byte [rbx + 0x11], 0
jne 0x14038a180
movzx eax, byte [rbx + 0x10]
test al, al
je 0x14038a180
cmp al, 1
jne 0x14038a133
test edx, edx
jne 0x14038a180
mov r8, qword [rbx + 8]
mov rax, qword [r8 + 0x18]
mov rcx, qword [rax + 0x50]
mov eax, dword [rcx + 0x28]
bswap eax
mov dword [rbp - 0x50], eax
test edx, edx
je 0x14038a176
mov rax, qword [rbx]
mov rcx, qword [r8]
mov edx, dword [rax + 0x308]
cmp edx, dword [rcx + 0x80]
jle 0x14038a16c
cmp byte [rcx + 0xa], 0
je 0x14038a16c
call fcn.140315ad0
jmp 0x14038a18c
mov r15d, r9d
mov dword [rsp + 0x4c], r9d
jmp 0x14038a193
mov r15d, r9d
mov dword [rsp + 0x4c], r9d
jmp 0x14038a19f
lea r8, [rbp - 0x50]
mov rcx, rbx
call fcn.1402a72e0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test r15d, r15d
jne 0x14038f4f2
xor r9d, r9d
test byte [r13 + 0xc8], 0x20
mov r12, qword [rsp + 0x40]
je 0x14038a298
cmp dword [r12 + 8], 0
je 0x14038a298
cmp byte [rsi + 0x65], 0
je 0x14038a1d1
cmp dword [rsi + 0xdc], 1
jle 0x14038a298
mov r8d, dword [r13 + 0x40]
test r8d, r8d
jne 0x14038a1f2
inc dword [rsi + 0x30c]
mov r8d, dword [rsi + 0x30c]
add r8d, dword [rsi + 0x308]
mov dword [r13 + 0x40], r8d
dec r8d
xor edx, edx
mov rcx, rsi
call fcn.140395d60
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14038a26f
mov edi, dword [r13 + 0x40]
mov rsi, qword [rbx + 8]
cmp byte [rbx + 0x11], al
je 0x14038a227
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], al
jne 0x14038a227
mov rcx, rbx
call fcn.1402a8560
mov rcx, qword [rsi]
cmp edi, dword [rcx + 0x80]
jle 0x14038a248
cmp byte [rcx + 0xa], 0
je 0x14038a248
mov edx, edi
call fcn.140315ad0
mov r15d, eax
mov dword [rsp + 0x4c], eax
jmp 0x14038a251
xor ecx, ecx
mov r15d, ecx
mov dword [rsp + 0x4c], ecx
cmp byte [rbx + 0x11], 0
je 0x14038a265
sub dword [rbx + 0x14], 1
jne 0x14038a265
mov rcx, rbx
call fcn.1403acf60
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x78]
mov rax, qword [rsi + 0x310]
xor r9d, r9d
mov qword [r13 + 0x58], rax
mov rax, qword [rsi + 0x318]
mov qword [r13 + 0x60], rax
jmp 0x14038a28f
mov r12, qword [rsp + 0x40]
test r15d, r15d
jne 0x140388cf3
cmp word [r12 + 2], 0
je 0x14038b458
mov eax, dword [r12 + 0xc]
cmp dword [rbp - 0x50], eax
jne 0x14038f51f
mov rax, qword [rsp + 0x40]
mov rcx, qword [r14 + 0x18]
mov eax, dword [rax + 0x10]
cmp dword [rcx + 4], eax
jne 0x14038f51f
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
movzx r14d, byte [rsp + 0x48]
mov r10d, dword [rsp + 0x50]
jmp 0x14038abc9
mov rcx, qword [rsi + 0x20]
lea r8, [rbp - 0x48]
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
mov edx, dword [r12 + 0xc]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14033a660
movsxd rax, dword [r12 + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [r13 + 0x68]
test word [rcx + 0x14], ax
je 0x14038a33c
call fcn.1403152d0
mov r11, qword [rsp + 0x60]
mov rcx, rax
movsxd rax, dword [rbp - 0x48]
mov qword [rcx], rax
jmp 0x14038abc1
movsxd rax, dword [rbp - 0x48]
mov r11, qword [rsp + 0x60]
mov word [rcx + 0x14], 4
mov qword [rcx], rax
jmp 0x14038abc1
mov rax, qword [rsp + 0x40]
movsxd rbx, dword [rax + 4]
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 8]
shl rbx, 5
add rbx, qword [rsi + 0x20]
mov rcx, qword [rbx + 8]
call fcn.14033d550
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
cmp eax, 1
jne 0x14038a476
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movzx eax, word [rax + 2]
mov ecx, dword [r12 + 0xc]
sub ecx, eax
mov rax, qword [rbx + 0x18]
mov dword [rax], ecx
mov rax, r12
or dword [rsi + 0x2c], 1
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov rdi, qword [rcx + 0x10]
test rdi, rdi
je 0x14038a421
nop dword [rax + rax]
mov rbx, qword [rdi + 0x10]
cmp byte [rbx + 0x3f], 0
jne 0x14038a419
mov rbx, qword [rbx + 0x48]
test rbx, rbx
je 0x14038a419
xor r12d, r12d
nop word [rax + rax]
mov rdx, qword [rbx + 0x30]
mov rcx, rsi
call fcn.1402bf030
mov qword [rbx + 0x30], r12
mov rcx, rsi
mov rdx, qword [rbx + 0x38]
call fcn.1402bf030
mov qword [rbx + 0x38], r12
mov rbx, qword [rbx + 8]
test rbx, rbx
jne 0x14038a3f0
mov rdi, qword [rdi]
test rdi, rdi
jne 0x14038a3d0
mov rdi, qword [rsp + 0x78]
mov r12, qword [rsp + 0x40]
cmp dword [r12 + 4], 1
jne 0x14038a463
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x14038a45b
nop dword [rax]
mov eax, dword [rcx + 0xc8]
and eax, 0xfffffffd
or eax, 1
mov dword [rcx + 0xc8], eax
mov rcx, qword [rcx + 0x10]
test rcx, rcx
jne 0x14038a440
and dword [r13 + 0xc8], 0xfffffffc
test r15d, r15d
jne 0x140388cf3
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
cmp eax, 2
jne 0x14038a426
mov rax, qword [rsp + 0x40]
mov rcx, qword [rbx + 0x18]
movzx eax, byte [rax + 0xc]
mov byte [rcx + 0x70], al
jmp 0x14038a426
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
test rdi, rdi
je 0x14038a4be
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
cmp dword [rdi + 0x44], eax
jne 0x14038a4be
mov rcx, qword [rdi + 0x30]
call fcn.1403393c0
jmp 0x14038a5d6
mov rdi, qword [rsp + 0x78]
mov eax, dword [r13 + 0xc8]
and al, 3
cmp al, 1
je 0x14038f5b3
mov rax, qword [rsp + 0x40]
mov edi, r9d
mov r14, r9
movsxd r12, dword [rax + 0xc]
mov r15d, dword [rax + 8]
mov rax, r12
shl rax, 5
add rax, qword [rsi + 0x20]
mov r13, qword [rax + 8]
cmp bl, 0x71
jne 0x14038a526
mov rcx, qword [rsp + 0x40]
mov rax, qword [rax + 0x18]
movzx esi, word [rcx + 2]
movzx ecx, byte [rax + 0x70]
and esi, 8
mov rax, qword [rbp - 0x80]
or esi, 4
cmp cl, byte [rax + 0xc5]
jae 0x14038a529
mov byte [rax + 0xc5], cl
jmp 0x14038a529
mov esi, r9d
mov rcx, qword [rsp + 0x40]
test byte [rcx + 2], 0x10
je 0x14038a54b
imul rbx, r15, 0x38
add rbx, r11
mov rcx, rbx
call fcn.140391eb0
mov rcx, qword [rsp + 0x40]
mov r15d, dword [rbx]
movzx eax, byte [rcx + 1]
cmp al, 0xf8
jne 0x14038a55e
mov r14, qword [rcx + 0x10]
movzx edi, word [r14 + 8]
jmp 0x14038a565
cmp al, 0xfd
jne 0x14038a565
mov edi, dword [rcx + 0x10]
mov edx, dword [rcx + 4]
xor r9d, r9d
mov rcx, qword [rbp - 0x80]
mov r8d, edi
call fcn.140296d80
mov rdi, rax
test rax, rax
je 0x1403892ab
mov byte [rax + 1], r12b
mov r9, r14
mov byte [rax + 2], 1
mov r8d, esi
or dword [rax + 8], 4
mov edx, r15d
mov dword [rax + 0x44], r15d
mov rcx, qword [rax + 0x30]
mov qword [rsp + 0x20], rcx
mov rcx, r13
call fcn.140339fd0
mov rsi, qword [rsp + 0x68]
mov r15d, eax
mov r13, qword [rbp - 0x80]
mov qword [rdi + 0x38], r14
movzx r14d, byte [rsp + 0x48]
mov dword [rsp + 0x4c], eax
mov rax, qword [rsp + 0x40]
cmp byte [rax + 1], 0xf8
setne al
mov byte [rdi + 4], al
mov rax, qword [rsp + 0x40]
movzx ecx, byte [rax + 2]
mov rax, qword [rdi + 0x30]
and cl, 3
mov byte [rax + 3], cl
test r15d, r15d
jne 0x140388cee
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov r15, qword [rsp + 0x40]
xor r9d, r9d
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r15 + 8]
mov edx, dword [r15 + 4]
mov rbx, qword [rax + rcx*8]
mov rcx, r13
movsx r8d, word [rbx + 0x48]
call fcn.140296d80
mov r10, rax
test rax, rax
je 0x1403892b9
mov byte [rax + 2], 1
mov r8d, 4
mov edx, dword [rax + 8]
or edx, 1
mov dword [rax + 8], edx
mov rcx, qword [rbx + 0x38]
mov qword [rax + 0x38], rcx
mov ecx, edx
movzx eax, byte [rbx + 4]
mov byte [r10 + 4], al
mov eax, dword [rbx + 0x44]
mov dword [r10 + 0x44], eax
xor ecx, dword [rbx + 8]
and ecx, 4
xor ecx, edx
mov dword [r10 + 8], ecx
or ecx, 8
mov rax, qword [rbx + 0x10]
mov qword [r10 + 0x10], rax
mov dword [r10 + 8], ecx
or dword [rbx + 8], 8
mov rax, qword [r10 + 0x30]
mov r9, qword [r10 + 0x38]
mov edx, dword [r10 + 0x44]
mov rcx, qword [r10 + 0x10]
mov qword [rsp + 0x20], rax
call fcn.140339fd0
mov r11, qword [rsp + 0x60]
mov r15d, eax
mov r12, qword [rsp + 0x40]
mov dword [rsp + 0x4c], eax
jmp 0x14038abc1
mov r15, qword [rsp + 0x40]
movsxd rax, dword [r15 + 0xc]
test eax, eax
jle 0x14038a6d7
imul rcx, rax, 0x38
mov dword [rcx + r11 + 0x10], r9d
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
lea rax, [0x1403f5736]
mov qword [rcx + r11 + 8], rax
movsxd rdx, dword [r15 + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rdx*8]
test rbx, rbx
je 0x14038a737
test byte [rbx + 8], 8
jne 0x14038a737
movsx eax, word [rbx + 0x48]
cmp dword [r15 + 8], eax
jg 0x14038a737
mov qword [rbx + 0x18], r9
xor r8d, r8d
mov dword [rbx + 0x20], r9d
mov edx, dword [rbx + 0x44]
mov rcx, qword [rbx + 0x10]
call fcn.140339480
mov dword [rsp + 0x4c], eax
mov r15d, eax
mov dword [rbp + 0x2e0], eax
test eax, eax
jne 0x140388cf3
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov byte [rbx + 2], 1
jmp 0x14038abc1
mov r8d, dword [r15 + 8]
xor r9d, r9d
mov rcx, r13
call fcn.140296d80
mov rbx, rax
test rax, rax
je 0x1403892b9
or dword [rax + 8], 1
lea r9, [rax + 0x10]
movzx ecx, word [r15 + 2]
mov r8, rsi
or ecx, 5
mov dword [rsp + 0x28], 0x41e
mov dword [rsp + 0x20], ecx
xor edx, edx
mov rcx, qword [rsi]
call fcn.14033ba50
mov r15d, eax
test eax, eax
jne 0x140388cee
mov rcx, qword [rbx + 0x10]
cmp byte [rcx + 0x11], al
jne 0x14038a7d8
cmp byte [rcx + 0x10], 2
jb 0x14038a7d8
mov rax, qword [rcx]
mov edx, dword [rax + 0x308]
mov rax, qword [rcx + 8]
mov rcx, qword [rax]
cmp edx, dword [rcx + 0x80]
jle 0x14038a7c7
cmp byte [rcx + 0xa], r15b
je 0x14038a7c7
call fcn.140315ad0
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov r12d, 1
jmp 0x14038a7f0
xor ecx, ecx
mov r12d, 1
mov r15d, ecx
mov dword [rsp + 0x4c], ecx
jmp 0x14038a7f0
mov r12d, 1
xor r8d, r8d
mov edx, r12d
call fcn.1402a72e0
mov r15d, eax
mov dword [rsp + 0x4c], eax
test r15d, r15d
jne 0x14038a889
mov rax, qword [rsp + 0x40]
mov rsi, qword [rax + 0x10]
mov qword [rbx + 0x38], rsi
test rsi, rsi
je 0x14038a857
movzx r8d, word [rax + 2]
lea rdx, [rbx + 0x44]
mov rcx, qword [rbx + 0x10]
or r8d, 2
call fcn.140339f60
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14038a851
mov rax, qword [rbx + 0x30]
mov r9, rsi
mov edx, dword [rbx + 0x44]
mov r8d, 4
mov rcx, qword [rbx + 0x10]
mov qword [rsp + 0x20], rax
call fcn.140339fd0
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov byte [rbx + 4], 0
jmp 0x14038a884
mov dword [rbx + 0x44], r12d
xor r9d, r9d
mov rax, qword [rbx + 0x30]
mov r8d, 4
mov rcx, qword [rbx + 0x10]
mov edx, r12d
mov qword [rsp + 0x20], rax
call fcn.140339fd0
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov byte [rbx + 4], 1
mov rsi, qword [rsp + 0x68]
xor eax, eax
mov ecx, eax
mov rax, 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
test r15d, r15d
jne 0x14038f5be
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov byte [rbx + 2], 1
jmp 0x14038abc1
mov r15, qword [rsp + 0x40]
mov r9b, 1
mov rcx, r13
mov r8d, dword [r15 + 8]
mov edx, dword [r15 + 4]
call fcn.140296d80
test rax, rax
je 0x1403892b9
mov rcx, qword [r15 + 0x10]
mov r8, rax
mov qword [rax + 0x38], rcx
mov rcx, rsi
mov edx, dword [r15 + 0xc]
call fcn.1403946d0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140388cf3
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
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
mov edx, 1
test rcx, rcx
jne case.0x140386f2c.89
jmp 0x140388a10
mov rax, qword [rsp + 0x40]
mov r9b, 3
mov rcx, r13
mov r8d, dword [rax + 0xc]
mov edx, dword [rax + 4]
call fcn.140296d80
test rax, rax
je 0x1403892b9
mov rcx, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov byte [rax + 2], 1
mov ecx, dword [rcx + 8]
mov dword [rax + 0x24], ecx
lea rcx, [0x1404b84dc]
mov byte [rax + 4], 1
mov qword [rax + 0x30], rcx
jmp 0x14038abc1
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je 0x14038a9c4
mov rcx, r13
call fcn.140390850
mov r8, qword [rsp + 0x58]
xor r9d, r9d
mov rax, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov qword [rax + rcx*8], r9
jmp 0x14038abce
mov rax, qword [r13 + 0x78]
mov r12d, r9d
mov r15, qword [rsp + 0x40]
movsxd rcx, dword [r15 + 4]
mov rsi, qword [rax + rcx*8]
mov byte [rsi + 2], 0
mov byte [rsi + 3], 0
mov dword [rsi + 0x20], r9d
cmp byte [rsi + 4], 0
je 0x14038aaf5
movsxd rax, dword [r15 + 0xc]
imul rdi, rax, 0x38
add rdi, r11
movzx r14d, word [rdi + 0x14]
movzx eax, r14b
and al, 0x2e
cmp al, 2
jne 0x14038aa37
xor edx, edx
mov rcx, rdi
call fcn.140299240
mov rcx, rdi
call fcn.14028c300
movzx ecx, word [rdi + 0x14]
mov r15, rax
mov word [rdi + 0x14], r14w
test cl, 0x24
jne 0x14038aac6
test cl, 8
jne 0x14038aaa4
test cl, 1
jne 0x14038e820
cmp ebx, 0x17
jae 0x14038e820
mov rcx, qword [rsi + 0x30]
cmp byte [rcx], 0
jne 0x14038aa87
test byte [rcx + 1], 8
je 0x14038aa87
xor eax, eax
mov dword [rbp - 0x74], eax
mov r15d, eax
mov dword [rsp + 0x4c], eax
jmp 0x14038ac3b
lea rdx, [rbp - 0x74]
call fcn.1402a8490
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14038f459
jmp 0x14038ac3b
movsd xmm1, qword [rdi]
mov rcx, r15
call fcn.140369a00
test eax, eax
jle 0x14038aabd
test bl, 1
jne 0x14038aac6
dec ebx
jmp 0x14038aac6
jns 0x14038aac6
test bl, 1
je 0x14038aac6
inc ebx
mov rcx, qword [rsi + 0x30]
lea rdi, [rsi + 0x30]
lea r9, [rbp - 0x74]
xor r8d, r8d
mov rdx, r15
call fcn.14033cc30
mov qword [rsi + 0x50], r15
mov r15d, eax
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x14038f459
jmp 0x14038ab81
mov rax, qword [rsi + 0x30]
lea rdi, [rsi + 0x30]
mov ecx, dword [r15 + 0x10]
lea r8, [rbp - 0x74]
movzx r14d, byte [rax + 3]
mov rax, qword [rsi + 0x38]
and r14b, 2
mov qword [rbp + 0x208], rax
lea eax, [rbx - 1]
mov word [rbp + 0x224], cx
setne r12b
test al, 1
mov ecx, 0xffffffff
mov eax, edx
lea rdx, [rbp + 0x208]
cmovne eax, ecx
mov byte [rbp + 0x226], al
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
mov byte [rbp + 0x22a], 0
add rcx, r11
mov qword [rbp + 0x210], rcx
mov rcx, qword [rdi]
call fcn.14033a750
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14038f459
test r14b, r14b
je 0x14038ab81
cmp byte [rbp + 0x22a], al
je 0x14038ac3b
mov eax, dword [rbp - 0x74]
cmp ebx, 0x17
jl 0x14038ac23
test eax, eax
js 0x14038abe8
jne 0x14038ab98
cmp ebx, 0x18
je 0x14038abe8
xor eax, eax
mov dword [rbp - 0x74], eax
mov r11, qword [rsp + 0x60]
movzx r14d, byte [rsp + 0x48]
test r12d, r12d
je 0x14038bafe
add qword [rsp + 0x40], 0x20
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
xor r9d, r9d
mov r8, qword [rsp + 0x58]
mov edx, 1
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rcx, qword [rdi]
xor ebx, ebx
xor edx, edx
mov dword [rbp - 0x74], ebx
call fcn.14033b9d0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
je 0x14038ab9d
cmp eax, 0x65
jne 0x14038fa69
xor r9d, r9d
mov edx, 1
mov r15d, r9d
mov dword [rsp + 0x4c], r9d
mov dword [rbp - 0x74], edx
jmp 0x140388a06
test eax, eax
jg 0x14038ac4a
jne 0x14038ac2e
cmp ebx, 0x15
je 0x14038ac4a
mov rax, qword [rdi]
xor ecx, ecx
cmp byte [rax], cl
setne cl
mov dword [rbp - 0x74], ecx
cmp dword [rbp - 0x74], 0
jne 0x1403889fe
jmp 0x14038ab9d
mov rcx, qword [rdi]
xor ebx, ebx
mov dword [rbp - 0x74], ebx
and byte [rcx + 1], 0xf1
mov word [rcx + 0x46], bx
cmp byte [rcx], bl
jne 0x14038ac86
movzx edx, word [rcx + 0x56]
test dx, dx
je 0x14038ac86
mov rax, qword [rcx + 0x88]
cmp byte [rax + 8], bl
je 0x14038ac86
dec dx
mov dword [rsp + 0x4c], ebx
mov word [rcx + 0x56], dx
mov r15d, ebx
jmp 0x14038ab9d
call fcn.1402a8fa0
jmp 0x14038abf7
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rcx, dword [rax + 0x24]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi + 0x30]
cmp byte [rax], 0
jne case.0x140386f2c.89
mov rax, qword [rdi + 0x38]
mov rcx, r12
mov qword [rbp - 0x30], rax
mov byte [rbp - 0x12], 0
movzx eax, word [rcx + 0x30]
mov esi, dword [rcx + 4]
mov word [rbp - 0x14], ax
movsxd rax, dword [rcx + 0x2c]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp - 0x28], rcx
nop dword [rax]
mov rbx, qword [rdi + 0x30]
mov rcx, rbx
call fcn.140300140
mov ecx, dword [rbx + 0x40]
lea rax, [rcx - 1]
cmp rax, 0x7ffffffe
ja 0x14038f5cc
mov rax, qword [rsp + 0x68]
xor r9d, r9d
mov word [rbp + 0x10c], r9w
mov qword [rbp + 0x110], rax
mov dword [rbp + 0x118], r9d
mov rax, qword [rbx + 0x88]
movzx edx, word [rbx + 0x44]
mov r8d, dword [rax + 0x58]
sub r8d, dword [rbx + 0x38]
cmp edx, r8d
jle 0x14038ad3f
test r8d, r8d
mov edx, r8d
cmovs edx, r9d
mov rax, qword [rbx + 0x38]
mov qword [rbp + 0x100], rax
cmp ecx, edx
ja 0x14038ad62
mov edx, 0x4010
mov dword [rbp + 0x108], ecx
mov word [rbp + 0x10c], dx
jmp 0x14038ad8e
mov r8d, ecx
lea r9, [rbp + 0xf8]
mov rcx, rbx
xor edx, edx
call fcn.140391bc0
mov r15d, eax
test eax, eax
jne 0x14038f459
mov ecx, dword [rbp + 0x108]
mov rax, qword [rbp + 0x100]
xor r9d, r9d
lea r8, [rbp - 0x30]
mov rdx, rax
call fcn.1403933d0
cmp dword [rbp + 0x118], 0
mov ebx, eax
je 0x14038adb4
lea rcx, [rbp + 0xf8]
call fcn.1403b0c50
xor r9d, r9d
mov dword [rsp + 0x4c], r9d
mov r15d, r9d
test ebx, ebx
jle 0x14038add1
cmp word [r12 + 2], r9w
je 0x14038ae52
test ebx, ebx
jns 0x14038ae7e
test esi, esi
jle 0x14038ae65
mov dword [rdi + 0x20], r9d
dec esi
mov rcx, qword [rdi + 0x30]
mov word [rcx + 0x46], r9w
and byte [rcx + 1], 0xf9
cmp byte [rcx], r9b
je 0x14038adfe
call fcn.1402a8730
jmp 0x14038ae33
movzx r8d, word [rcx + 0x56]
mov rdx, qword [rcx + 0x88]
lea eax, [r8 + 1]
mov word [rcx + 0x56], ax
cmp ax, word [rdx + 0x18]
jb 0x14038ae24
mov word [rcx + 0x56], r8w
call fcn.1402a8730
jmp 0x14038ae33
cmp byte [rdx + 8], r9b
jne 0x14038ace0
call fcn.14030fe70
mov r15d, eax
test eax, eax
je 0x14038ace0
cmp eax, 0x65
jne 0x14038f459
xor r9d, r9d
mov r15d, r9d
mov dword [rsp + 0x4c], r9d
mov r8, qword [rsp + 0x58]
add r12, 0x20
mov edx, 1
jmp 0x140388a10
mov rsi, qword [rsp + 0x68]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
mov dword [rsp + 0x4c], r9d
jmp 0x14038abc9
mov r8, qword [rsp + 0x58]
mov edx, 1
mov dword [rsp + 0x4c], r9d
jmp 0x140388a10
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rsp + 0x40]
movzx ecx, word [rdx + 0xc]
mov eax, dword [rax + 8]
cmp ecx, eax
jge 0x14038aec1
mov word [rdx + 0xc], ax
mov r12, qword [rsp + 0x40]
jmp 0x14038abce
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
mov eax, dword [rax + 0xc]
cmp ecx, eax
lea rcx, [0x140000000]
jle 0x14038aedd
mov word [rdx + 0xc], ax
mov edx, 1
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
test rdx, rdx
je case.0x140386f2c.9
cmp byte [rdx + 2], 0
je 0x14038aeb7
jmp case.0x140386f2c.9
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
movzx eax, word [rcx + 0xc]
cmp eax, dword [r12 + 0x10]
jge case.0x140386f2c.89
mov rax, qword [r13 + 0x78]
mov r15, qword [rsp + 0x40]
movsxd rcx, dword [r15 + 4]
mov rbx, qword [rax + rcx*8]
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0xd8], rcx
movzx eax, word [r15 + 0x10]
mov word [rbp + 0xec], ax
test ax, ax
je 0x14038afa0
mov rax, qword [rbx + 0x38]
lea rsi, [rbx + 0x24]
mov qword [rbp + 0xd0], rax
lea rdx, [rbp + 0xd0]
mov byte [rbp + 0xee], 0
mov r8, rsi
mov rcx, qword [rbx + 0x30]
call fcn.14033a750
mov r15d, eax
mov dword [rsp + 0x4c], eax
jmp 0x14038b017
mov eax, 0x400
test word [rcx + 0x14], ax
je 0x14038afb8
call fcn.140391a70
test eax, eax
jne 0x1403892b9
mov rcx, qword [rbx + 0x38]
call fcn.140385dc0
mov rdi, rax
test rax, rax
je 0x1403892b4
mov rdx, qword [rbp + 0xd8]
mov r9, rax
mov rcx, qword [rbx + 0x38]
mov r8, qword [rdx + 8]
mov edx, dword [rdx + 0x10]
call fcn.140393dd0
mov byte [rdi + 0x1e], 0
lea rsi, [rbx + 0x24]
mov rcx, qword [rbx + 0x30]
mov r8, rsi
mov rdx, rdi
call fcn.14033a750
mov rcx, qword [rsp + 0x68]
mov rdx, rdi
mov r15d, eax
mov dword [rsp + 0x4c], eax
call fcn.140342c30
mov rdi, qword [rsp + 0x78]
test r15d, r15d
jne 0x140389ea1
mov ecx, dword [rsi]
test ecx, ecx
setne al
xor r9d, r9d
mov byte [rbx + 2], al
mov rax, qword [rsp + 0x40]
mov byte [rbx + 3], r15b
mov dword [rbx + 0x20], r9d
movzx eax, byte [rax]
cmp al, 0x1d
jne 0x14038b04e
test ecx, ecx
je 0x140388a01
jmp 0x14038740b
test ecx, ecx
jne 0x140388a01
cmp al, 0x1b
jne 0x14038b09a
movzx edx, word [rbp + 0xec]
mov rcx, r9
test rdx, rdx
je 0x14038bae5
mov rax, qword [rbp + 0xd8]
add rax, 0x14
nop dword [rax + rax]
test byte [rax], 1
jne 0x14038e80c
inc rcx
add rax, 0x38
cmp rcx, rdx
jl 0x14038b080
jmp 0x14038740b
mov rsi, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r12, rsi
cmp byte [rsi], 0x1a
jne 0x14038bad6
movzx eax, word [rsi + 0x10]
mov rsi, qword [rsp + 0x68]
mov r10d, dword [rsp + 0x50]
mov word [rbx + 0xc], ax
jmp 0x14038abc9
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
add rcx, r11
test byte [rcx + 0x14], 0x24
jne case.0x140386f2c.31
movups xmm0, xmmword [rcx]
movups xmmword [rbp + 0x308], xmm0
movups xmm2, xmmword [rcx + 0x10]
movups xmmword [rbp + 0x318], xmm2
movups xmm0, xmmword [rcx + 0x20]
movq rax, xmm2
movups xmmword [rbp + 0x328], xmm0
shr rax, 0x20
movsd xmm1, qword [rcx + 0x30]
movsd qword [rbp + 0x338], xmm1
test al, 4
jne 0x14038b146
test al, 0x28
jne 0x14038b130
test al, 2
je 0x14038b146
lea rcx, [rbp + 0x308]
call fcn.140299240
xor r9d, r9d
jmp 0x14038b13c
lea rcx, [rbp + 0x308]
call fcn.140391010
mov r8, qword [rsp + 0x58]
mov edx, 1
test byte [rbp + 0x31c], 4
je 0x140388a0b
mov rdi, qword [rbp + 0x308]
jmp 0x14038b16d
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov rdi, qword [rcx + r11]
mov rax, qword [rsp + 0x40]
xor r8d, r8d
mov dword [rbp + 0x2e0], r9d
mov rdx, rdi
lea r9, [rbp + 0x2e0]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rcx, qword [rbx + 0x30]
call fcn.14033cc30
mov qword [rbx + 0x50], rdi
xor r9d, r9d
mov byte [rbx + 2], 0
mov r15d, eax
mov dword [rbx + 0x20], r9d
mov dword [rsp + 0x4c], eax
mov eax, dword [rbp + 0x2e0]
mov byte [rbx + 3], r9b
mov dword [rbx + 0x24], eax
test eax, eax
je 0x14038b1e1
mov r12, qword [rsp + 0x40]
cmp dword [r12 + 8], r9d
je 0x14038f60d
mov r8, qword [rsp + 0x58]
mov edx, 1
jmp 0x140388a10
test r15d, r15d
jne 0x140388cee
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
jmp 0x14038abc9
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x14038b22f
mov rcx, rdx
call fcn.1403152d0
mov r8, qword [rsp + 0x58]
mov rdx, rax
xor r9d, r9d
jmp 0x14038b235
mov word [rdx + 0x14], 4
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [rbx + 4]
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x18]
mov qword [rdx], rax
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdx, qword [rax + rcx*8]
inc qword [rdx + 0x18]
jmp 0x14038abce
mov rsi, qword [rsp + 0x40]
mov rbx, r9
mov qword [rbp + 0x2e0], rbx
mov edi, r9d
mov dword [rbp - 0x78], r9d
movsxd rax, dword [rsi + 8]
imul r14, rax, 0x38
mov eax, 0x9000
add r14, qword [r13 + 0x68]
test word [r14 + 0x14], ax
je 0x14038b2af
mov rcx, r14
call fcn.1403152d0
mov r14, rax
xor r9d, r9d
jmp 0x14038b2b6
mov word [r14 + 0x14], 4
movsxd rcx, dword [rsi + 4]
mov rax, qword [r13 + 0x78]
mov rsi, qword [rax + rcx*8]
test byte [rsi + 8], 2
jne 0x14038b30e
mov rcx, qword [rsi + 0x30]
cmp byte [rcx], 0
jne 0x14038b2e1
test byte [rcx + 1], 8
je 0x14038b2e1
mov r15d, r9d
mov dword [rsp + 0x4c], r9d
jmp 0x14038b2fc
lea rdx, [rbp - 0x78]
call fcn.1402a8490
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14038f459
mov edi, dword [rbp - 0x78]
test edi, edi
je 0x14038b35a
mov eax, 1
mov ebx, eax
mov qword [rbp + 0x2e0], rax
movabs r12, 0x7fffffffffffffff
mov rdx, qword [rsp + 0x40]
movsxd rax, dword [rdx + 0xc]
test eax, eax
je 0x14038b3c9
mov rcx, qword [r13 + 0x108]
test rcx, rcx
je 0x14038b392
mov rax, qword [rcx + 8]
test rax, rax
je 0x14038b34c
nop
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x14038b340
movsxd rax, dword [rdx + 0xc]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x18]
jmp 0x14038b39b
mov rbx, qword [rsi + 0x30]
mov rcx, rbx
call fcn.140300140
mov rbx, qword [rbx + 0x30]
movabs r12, 0x7fffffffffffffff
mov qword [rbp + 0x2e0], rbx
cmp rbx, r12
jl 0x14038b386
or dword [rsi + 8], 2
jmp 0x14038b318
inc rbx
mov qword [rbp + 0x2e0], rbx
jmp 0x14038b318
imul rdi, rax, 0x38
add rdi, qword [rsp + 0x60]
mov rcx, rdi
call fcn.140391eb0
mov rax, qword [rdi]
cmp rax, r12
je 0x14038b430
test byte [rsi + 8], 2
jne 0x14038b430
inc rax
cmp rbx, rax
cmovl rbx, rax
mov qword [rbp + 0x2e0], rbx
mov qword [rdi], rbx
test byte [rsi + 8], 2
je 0x14038b440
xor eax, eax
mov edi, eax
lea rdx, [rbp + 0x2e0]
mov ecx, 8
call fcn.140286290
mov rbx, qword [rbp + 0x2e0]
lea r9, [rbp - 0x78]
mov rcx, qword [rsi + 0x30]
movabs rax, 0x3fffffffffffffff
and rbx, rax
xor r8d, r8d
inc rbx
mov rdx, rbx
mov qword [rbp + 0x2e0], rbx
call fcn.14033cc30
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14038f459
cmp dword [rbp - 0x78], eax
jne 0x14038b440
inc edi
cmp edi, 0x64
jl 0x14038b3d3
mov rsi, qword [rsp + 0x68]
mov r15d, Ordinal_16
jmp 0x140388cee
mov byte [rsi + 3], 0
xor r9d, r9d
mov dword [rsi + 0x20], r9d
mov qword [r14], rbx
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
movzx r14d, byte [rsp + 0x48]
mov r10d, dword [rsp + 0x50]
jmp 0x14038abc9
mov rbx, qword [rsp + 0x40]
mov r15, qword [rsp + 0x68]
movsxd rax, dword [rbx + 8]
movsxd rcx, dword [rbx + 4]
imul rdi, rax, 0x38
mov rax, qword [r13 + 0x78]
add rdi, r11
mov rsi, qword [rax + rcx*8]
movsxd rax, dword [rbx + 0xc]
imul rcx, rax, 0x38
mov r8, qword [rcx + r11]
mov qword [rbp + 0x170], r8
cmp byte [rbx + 1], 0xfb
jne 0x14038b532
mov rdx, qword [r15 + 0x170]
test rdx, rdx
jne 0x14038b4c0
cmp qword [r15 + 0x140], rdx
je 0x14038b532
movsx rcx, byte [rsi + 1]
mov rax, qword [r15 + 0x20]
mov rbx, qword [rbx + 0x10]
shl rcx, 5
mov r14, qword [rcx + rax]
test rbx, rbx
je 0x14038b538
test rdx, rdx
je 0x14038b51f
mov rax, qword [rsp + 0x40]
test byte [rax + 2], 4
jne 0x14038b51f
mov eax, dword [rax + 8]
mov r9, r14
mov dword [rsp + 0x38], 0xffffffff
mov rdx, rsi
mov dword [rsp + 0x30], eax
mov rcx, r13
mov qword [rsp + 0x28], r8
mov r8d, reloc.OLEAUT32.dll_SafeArrayGetUBound
mov qword [rsp + 0x20], rbx
call fcn.1403931e0
mov r11, qword [rsp + 0x60]
xor r9d, r9d
cmp qword [r15 + 0x140], 0
je 0x14038b535
cmp qword [rbx + 8], 0
jne 0x14038b538
jmp 0x14038b535
mov r14, r9
mov rbx, r9
mov rax, qword [rsp + 0x40]
movzx eax, word [rax + 2]
test al, 0x40
jne 0x14038f259
test al, 1
je 0x14038b567
mov rax, qword [rsp + 0x40]
inc qword [r13 + 0x38]
test byte [rax + 2], 0x20
je 0x14038b567
mov rax, qword [rbp + 0x170]
mov qword [r15 + 0x38], rax
mov rax, qword [rdi + 8]
mov r15, qword [rsp + 0x40]
mov qword [rbp + 0x178], rax
mov eax, dword [rdi + 0x10]
mov dword [rbp + 0x18c], eax
test byte [r15 + 2], 0x10
je 0x14038b58b
mov r9d, dword [rsi + 0x24]
mov eax, 0x400
test word [rdi + 0x14], ax
je 0x14038b5a2
mov eax, dword [rdi]
mov dword [rbp + 0x190], eax
xor eax, eax
jmp 0x14038b5aa
xor eax, eax
mov dword [rbp + 0x190], eax
mov qword [rbp + 0x168], rax
lea rdx, [rbp + 0x168]
movzx r8d, word [r15 + 2]
mov rcx, qword [rsi + 0x30]
and r8d, 0x8a
call fcn.14033ad30
inc dword [rbp - 0x60]
xor r9d, r9d
mov byte [rsi + 3], 0
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov dword [rsi + 0x20], r9d
test eax, eax
jne 0x14038f459
test rbx, rbx
je 0x14038ba9b
mov rax, qword [rsp + 0x40]
mov edx, reloc.OLEAUT32.dll_SafeArrayGetUBound
mov rsi, qword [rsp + 0x68]
mov r8, r14
mov r9, qword [rbx]
test byte [rax + 2], 4
mov eax, reloc.SinoSPE.dll_Ordinal_23
mov rcx, qword [rsi + 0x138]
cmovne edx, eax
mov rax, qword [rbp + 0x170]
mov qword [rsp + 0x20], rax
call qword [rsi + 0x140]
mov r11, qword [rsp + 0x60]
movzx r14d, byte [rsp + 0x48]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
mov r15, qword [rsp + 0x40]
mov rcx, qword [r13 + 0x78]
movsxd rax, dword [r15 + 4]
mov r9, qword [rcx + rax*8]
movsxd rax, dword [r15 + 8]
mov rdx, qword [rcx + rax*8]
movsxd rax, dword [r15 + 0xc]
test eax, eax
je 0x14038b66f
imul rcx, rax, 0x38
xor ebx, ebx
mov r8, qword [rcx + r11]
jmp 0x14038b674
xor ebx, ebx
mov r8d, ebx
mov rdx, qword [rdx + 0x30]
mov rcx, qword [r9 + 0x30]
call fcn.14033ceb0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
je 0x140387513
mov r14, qword [rsp + 0x40]
mov eax, VariantTimeToDosDateTime
mov r12, qword [rsp + 0x70]
jmp 0x140388d04
mov rbx, qword [rsp + 0x40]
mov rax, qword [r13 + 0x78]
cmp byte [rbx + 1], 0xfb
movsxd rcx, dword [rbx + 4]
mov r14d, dword [rbx + 8]
mov rdi, qword [rax + rcx*8]
jne 0x14038b70a
cmp qword [rsi + 0x170], 0
jne 0x14038b6d3
cmp qword [rsi + 0x140], 0
je 0x14038b70a
mov rax, qword [rsi + 0x20]
movsx rcx, byte [rdi + 1]
mov rsi, qword [rbx + 0x10]
shl rcx, 5
test byte [rbx + 2], 2
mov r15, qword [rcx + rax]
je 0x14038b710
cmp byte [rdi + 4], 0
je 0x14038b710
mov rbx, qword [rdi + 0x30]
mov rcx, rbx
call fcn.140300140
mov rax, qword [rbx + 0x30]
mov qword [rdi + 0x50], rax
jmp 0x14038b710
mov r15, r9
mov rsi, r9
mov rbx, qword [rsp + 0x68]
cmp qword [rbx + 0x170], 0
je 0x14038b767
test rsi, rsi
je 0x14038b767
mov dword [rsp + 0x38], 0xffffffff
test r14b, 4
mov eax, reloc.SinoSPE.dll_Ordinal_23
mov r8d, 9
cmovne r8d, eax
mov r9, r15
mov rax, qword [rsp + 0x40]
mov rdx, rdi
mov rcx, r13
mov eax, dword [rax + 0xc]
mov dword [rsp + 0x30], eax
mov rax, qword [rdi + 0x50]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rsi
call fcn.1403931e0
test r14b, 0x40
jne 0x14038f278
mov rax, qword [rsp + 0x40]
mov rcx, qword [rdi + 0x30]
movzx edx, byte [rax + 2]
call fcn.14033a060
inc dword [rbp - 0x60]
xor r9d, r9d
mov dword [rdi + 0x20], r9d
mov dword [rdi + 0x24], r9d
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x14038fa5c
test r14b, 1
je 0x14038ba96
inc qword [r13 + 0x38]
mov r10, qword [rbx + 0x140]
test r10, r10
je 0x14038ba96
test rsi, rsi
je 0x14038ba96
test byte [rsi + 0x30], 0x80
jne 0x14038ba96
mov rax, qword [rdi + 0x50]
mov r8, r15
mov r9, qword [rsi]
mov edx, 9
mov rcx, qword [rbx + 0x138]
mov rsi, rbx
mov qword [rsp + 0x20], rax
call r10
jmp 0x14038794b
mov rax, qword [r13 + 0x38]
lea rcx, [0x140000000]
mov qword [rsi + 0x78], rax
add qword [rsi + 0x80], rax
mov qword [r13 + 0x38], r9
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rbx, qword [rsp + 0x40]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [rbx + 4]
mov rdx, qword [rax + rcx*8]
movsxd rax, dword [rbx + 0xc]
mov ebx, dword [rbx + 0x10]
imul r15, rax, 0x38
mov rdi, qword [rdx + 0x30]
mov rsi, qword [rdx + 0x38]
add r15, r11
mov r14, qword [rdi + 0x30]
test r14, r14
jne 0x14038b868
mov rcx, rsi
call fcn.140385dc0
mov qword [rdi + 0x30], rax
mov r14, rax
test rax, rax
je 0x14038b98d
mov word [rax + 0x1c], bx
cmp byte [rdi + 0x58], 0
je 0x14038b8a4
cmp byte [rdi + 0x59], 0
je 0x14038b882
mov rax, qword [rdi + 0x10]
mov r8, qword [rax + 0x28]
lea rdx, [rax + 0x14]
jmp 0x14038b8ac
mov rdx, qword [rdi + 0x18]
mov rax, qword [rdx + 0x10]
movsxd rcx, dword [rax + 4]
lea rax, [rcx + rcx*4]
shl rax, 4
add rax, qword [rdx + 0x18]
mov r8, qword [rax + 0x28]
lea rdx, [rax + 0x14]
jmp 0x14038b8ac
mov rdx, qword [rdi + 0x38]
lea r8, [rdx + 0x10]
mov edx, dword [rdx]
mov r9, r14
mov rcx, rsi
call fcn.140393dd0
xor r9d, r9d
mov ecx, r9d
test ebx, ebx
jle 0x14038b8e3
mov rax, qword [r14 + 8]
add rax, 0x14
nop dword [rax + rax]
test byte [rax], 1
jne 0x14038df49
inc ecx
add rax, 0x38
cmp ecx, ebx
jl 0x14038b8d0
mov rdx, qword [r15 + 8]
mov r8, r14
mov ecx, dword [r15 + 0x10]
call fcn.1403933d0
xor r9d, r9d
mov dword [rsp + 0x4c], r9d
mov r15d, r9d
test eax, eax
jne 0x140388a01
mov dword [rsp + 0x4c], r9d
jmp 0x14038b44e
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 8]
movsxd rcx, dword [rcx + 4]
imul rbx, rax, 0x38
mov rax, qword [r13 + 0x78]
add rbx, r11
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x30]
cmp byte [rax + 0x58], 0
je 0x14038b96c
cmp byte [rax + 0x59], 0
je 0x14038b94a
mov rax, qword [rax + 0x10]
mov rsi, qword [rax + 0x28]
lea rdi, [rax + 0x14]
jmp 0x14038b974
mov rdx, qword [rax + 0x18]
mov rax, qword [rdx + 0x10]
movsxd rcx, dword [rax + 4]
lea rax, [rcx + rcx*4]
shl rax, 4
add rax, qword [rdx + 0x18]
mov rsi, qword [rax + 0x28]
lea rdi, [rax + 0x14]
jmp 0x14038b974
mov rdi, qword [rax + 0x38]
lea rsi, [rdi + 0x10]
movsxd rdi, dword [rdi]
cmp dword [rbx + 0x20], edi
jge 0x14038b99d
xor r8d, r8d
mov edx, edi
mov rcx, rbx
call fcn.140391d30
test eax, eax
je 0x14038b9aa
mov rsi, qword [rsp + 0x68]
mov r15d, 7
jmp 0x140388cee
mov rax, qword [rbx + 0x28]
mov qword [rbx + 8], rax
and word [rbx + 0x14], 0x2d
mov dword [rbx + 0x10], edi
mov ecx, 0xf250
movzx eax, word [rbx + 0x14]
mov r8, rdi
and ax, cx
mov rdx, rsi
or ax, 0x10
mov word [rbx + 0x14], ax
mov rcx, qword [rbx + 8]
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rsp + 0x40]
xor r9d, r9d
mov r15d, r9d
mov dword [rsp + 0x4c], r9d
movsxd rcx, dword [rax + 0xc]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov dword [rcx + 0x20], r9d
jmp 0x14038740b
mov r15, qword [rsp + 0x40]
movsxd rax, dword [r15 + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, qword [r13 + 0x68]
test word [rbx + 0x14], ax
je 0x14038ba1e
mov rcx, rbx
call fcn.1403152d0
mov rbx, rax
jmp 0x14038ba24
mov word [rbx + 0x14], 4
movsxd rcx, dword [r15 + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rdi, qword [rcx + 0x30]
mov rcx, rdi
call fcn.140300140
mov edx, dword [rdi + 0x40]
cmp edx, dword [rsi + 0x88]
ja 0x14038f650
mov r8, rbx
mov rcx, rdi
call fcn.140391cd0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140388cee
mov r12, qword [rsp + 0x40]
cmp dword [r12 + 0xc], eax
jne 0x14038bace
mov eax, 0x4000
test word [rbx + 0x14], ax
je 0x14038bace
mov rcx, rbx
call fcn.140391f40
test eax, eax
jne 0x1403892b4
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
mov r11, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
mov r10d, dword [rsp + 0x50]
jmp 0x14038abc9
mov r15d, dword [rsp + 0x4c]
mov r13, qword [rbp - 0x80]
movzx r14d, byte [rsp + 0x48]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
xor r9d, r9d
mov rsi, qword [rsp + 0x68]
mov r10d, dword [rsp + 0x50]
jmp 0x14038abc9
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
mov r10d, dword [rsp + 0x50]
jmp 0x14038abc9
mov r12, qword [rsp + 0x40]
xor r9d, r9d
mov rsi, qword [rsp + 0x68]
mov r10d, dword [rsp + 0x50]
jmp 0x14038abc9
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [r13 + 0x68]
test word [rdi + 0x14], ax
je 0x14038bb4b
mov rcx, rdi
call fcn.1403152d0
mov r8, qword [rsp + 0x58]
mov rdi, rax
xor r9d, r9d
mov edx, 1
jmp 0x14038bb51
mov word [rdi + 0x14], 4
movsxd rcx, dword [rbx + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
cmp byte [rbx + 2], 0
je 0x14038bb8b
mov r12, qword [rsp + 0x40]
lea rcx, [0x140000000]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
mov word [rdi + 0x14], dx
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
cmp byte [rbx + 3], 0
je 0x14038bbae
mov rax, qword [rbx + 0x50]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov qword [rbp + 0x2f8], rax
mov qword [rdi], rax
jmp 0x14038abc1
cmp byte [rbx], 2
mov rcx, qword [rbx + 0x30]
jne 0x14038bbfb
mov rbx, qword [rcx]
lea rdx, [rbp + 0x2f8]
mov rax, qword [rbx]
call qword [rax + 0x60]
mov rdx, rbx
mov rcx, r13
mov r15d, eax
mov dword [rsp + 0x4c], eax
call fcn.140395a00
test r15d, r15d
jne 0x140388cee
mov rax, qword [rbp + 0x2f8]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov qword [rdi], rax
jmp 0x14038abc1
cmp byte [rcx], 0
je 0x14038bc1c
mov rcx, rbx
call fcn.140390d80
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140388cee
xor r9d, r9d
jmp 0x14038bc24
mov r15d, r9d
mov dword [rsp + 0x4c], r9d
cmp byte [rbx + 2], 0
je 0x14038bc38
mov edx, 1
mov word [rdi + 0x14], dx
jmp 0x1403876b6
mov rbx, qword [rbx + 0x30]
mov rcx, rbx
call fcn.140300140
mov rax, qword [rbx + 0x30]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov qword [rbp + 0x2f8], rax
mov qword [rdi], rax
jmp 0x14038abc1
mov rax, qword [rsp + 0x40]
movsxd rdx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rax, qword [rax + rdx*8]
test rax, rax
jne 0x14038bcab
mov r9b, 3
mov r8d, 1
mov rcx, r13
call fcn.140296d80
test rax, rax
je 0x1403892b9
xor r9d, r9d
lea rcx, [0x1404b84dc]
mov dword [rax + 0x24], r9d
mov byte [rax + 4], 1
or dword [rax + 8], 8
mov qword [rax + 0x30], rcx
mov byte [rax + 2], 1
mov dword [rax + 0x20], r9d
cmp byte [rax], 0
jne 0x140387410
mov rcx, qword [rax + 0x30]
call fcn.1403393c0
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
mov eax, r9d
mov dword [rbp + 0x2e0], eax
mov rcx, qword [rdi + 0x30]
cmp bl, 0x89
jne 0x14038bd7d
mov dword [rdi + 0x24], 0xffffffff
cmp byte [rcx], 0
je 0x14038abbc
lea rdx, [rbp + 0x2e0]
call fcn.1402a8490
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov eax, dword [rbp + 0x2e0]
xor r9d, r9d
mov byte [rdi + 2], al
mov byte [rdi + 3], 0
mov dword [rdi + 0x20], r9d
test r15d, r15d
jne 0x140388cee
mov r8, qword [rsp + 0x58]
mov edx, 1
mov r12, qword [rsp + 0x40]
cmp dword [r12 + 8], 0
jle 0x140387415
test eax, eax
jne 0x14038e811
mov r11, qword [rsp + 0x60]
lea rcx, [0x140000000]
mov r10d, dword [rsp + 0x50]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
cmp byte [rcx], 0
jne 0x14038bd0b
test byte [rcx + 1], 8
je 0x14038bd0b
mov byte [rdi + 2], al
mov r15d, r9d
mov byte [rdi + 3], 0
mov dword [rdi + 0x20], r9d
mov dword [rsp + 0x4c], r9d
jmp 0x14038bd45
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rbx, qword [rcx + 0x30]
mov rcx, rbx
call fcn.140310280
mov r15d, eax
test eax, eax
jne 0x14038bdd3
xor eax, eax
mov rcx, rbx
mov r12d, eax
call fcn.14030fe70
mov r15d, eax
jmp 0x14038bdee
cmp eax, 0x10
jne 0x14038bdea
xor eax, eax
mov rcx, 0xffffffffffffffff
mov r15d, eax
mov dword [rsp + 0x4c], eax
jmp 0x14038be23
mov r12d, dword [rbp - 0x4c]
test r15d, r15d
jne 0x140388cf3
mov dword [rsp + 0x4c], r15d
test r12d, r12d
je 0x14038be0a
mov rcx, 0xffffffffffffffff
jmp 0x14038be23
mov rcx, rbx
call fcn.14033c5e0
mov rcx, rax
call fcn.14036b3e0
movsx rcx, ax
mov dword [rsp + 0x4c], r15d
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 0xc]
cmp rcx, rax
jl 0x14038be4f
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 0x10]
cmp rcx, rax
jg 0x14038be4f
mov edx, 1
xor r9d, r9d
mov dword [rbp - 0x4c], edx
jmp 0x140388a06
mov r12, qword [rsp + 0x40]
xor r9d, r9d
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
mov dword [rbp - 0x4c], r9d
mov dword [rsp + 0x4c], r15d
jmp 0x14038abc9
inc dword [r13 + 0xdc]
mov rax, qword [rsp + 0x40]
mov edi, edx
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rsi, qword [rax + rcx*8]
cmp byte [rsi], 1
mov rbx, qword [rsi + 0x30]
jne 0x14038bef2
cmp byte [rbx + 0x58], 0
mov dword [rsp + 0x4c], r9d
jne 0x14038bec4
cmp qword [rbx + 0x38], 0
lea rdx, [rbx + 0x38]
je 0x14038bebd
lea rcx, [rbx + 0x60]
mov edi, r9d
call fcn.1403b3770
mov dword [rsp + 0x4c], eax
xor r9d, r9d
jmp 0x14038bf1d
mov edi, 1
jmp 0x14038bf1d
mov rcx, rbx
call fcn.1403b27a0
mov edx, eax
mov rcx, rbx
call fcn.1403b2910
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x14038beb8
mov rcx, rbx
call fcn.1403b34a0
xor r9d, r9d
mov dword [rsp + 0x4c], eax
mov edi, r9d
jmp 0x14038bf1d
mov rcx, rbx
call fcn.140310280
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x14038bf4e
xor eax, eax
mov rcx, rbx
mov edi, eax
call fcn.14030fe70
mov dword [rsp + 0x4c], eax
xor r9d, r9d
mov byte [rsi + 3], 0
mov dword [rsi + 0x20], r9d
mov r15d, dword [rsp + 0x4c]
test r15d, r15d
jne 0x14038f459
mov r12, qword [rsp + 0x40]
mov byte [rsi + 2], dil
cmp dword [r12 + 8], r15d
jle 0x14038bf62
test edi, edi
je 0x14038bf62
mov r8, qword [rsp + 0x58]
mov edx, 1
jmp 0x140388a10
cmp eax, 0x10
jne 0x14038bf12
xor r9d, r9d
mov edi, 1
mov dword [rsp + 0x4c], r9d
jmp 0x14038bf15
mov rsi, qword [rsp + 0x68]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
jmp 0x14038abc9
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rsi, qword [rax + rcx*8]
mov rdi, qword [rsi + 0x30]
mov qword [rbp - 0x68], rdi
cmp byte [rdi + 0x58], 0
je 0x14038c020
cmp byte [rdi + 0x59], 0
je 0x14038bfdd
mov rcx, qword [rdi + 0x10]
call fcn.1403b19b0
xor r9d, r9d
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x14038c06d
mov rax, qword [rdi + 0x10]
cmp qword [rax + 0x18], r9
jne 0x14038c06d
mov rbx, qword [rsp + 0x40]
mov ecx, 0x65
mov rdi, qword [rsp + 0x78]
mov dword [rsp + 0x4c], ecx
jmp 0x14038c133
mov rcx, qword [rdi + 0x18]
lea rdx, [rbp + 0x2e0]
mov dword [rbp + 0x2e0], r9d
call fcn.1403b1330
xor r9d, r9d
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x14038c06d
cmp dword [rbp + 0x2e0], r9d
je 0x14038c06d
mov rbx, qword [rsp + 0x40]
mov ecx, 0x65
mov rdi, qword [rsp + 0x78]
mov dword [rsp + 0x4c], ecx
jmp 0x14038c133
mov rdx, qword [rdi + 0x38]
mov rax, qword [rdx + 8]
mov qword [rdi + 0x38], rax
mov qword [rdx + 8], r9
cmp qword [rdi + 0x40], 0
jne 0x14038c05b
mov rdi, qword [rsp + 0x68]
nop dword [rax]
mov rbx, qword [rdx + 8]
mov rcx, rdi
call fcn.140342c30
mov rdx, rbx
test rbx, rbx
jne 0x14038c040
mov rdi, qword [rbp - 0x68]
xor r9d, r9d
cmp qword [rdi + 0x38], 0
mov ecx, 0x65
cmovne ecx, r9d
mov dword [rsp + 0x4c], ecx
mov rbx, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x78]
jmp 0x14038c133
mov rax, qword [r13 + 0x78]
mov rbx, qword [rsp + 0x40]
movsxd rcx, dword [rbx + 4]
mov rsi, qword [rax + rcx*8]
mov rcx, qword [rsi + 0x30]
and byte [rcx + 1], 0xf1
mov word [rcx + 0x46], r9w
cmp byte [rcx], 0
jne 0x14038c0c3
movzx edx, word [rcx + 0x56]
test dx, dx
je 0x14038c0c3
mov rax, qword [rcx + 0x88]
cmp byte [rax + 8], 0
je 0x14038c0c3
dec dx
mov dword [rsp + 0x4c], r9d
mov word [rcx + 0x56], dx
jmp 0x14038c133
call fcn.1402a8fa0
jmp 0x14038c12c
mov rax, qword [r13 + 0x78]
mov rbx, qword [rsp + 0x40]
movsxd rcx, dword [rbx + 4]
mov rsi, qword [rax + rcx*8]
mov rcx, qword [rsi + 0x30]
mov word [rcx + 0x46], r9w
and byte [rcx + 1], 0xf9
cmp byte [rcx], 0
je 0x14038c0f4
call fcn.1402a8730
jmp 0x14038c12c
movzx r8d, word [rcx + 0x56]
mov rdx, qword [rcx + 0x88]
lea eax, [r8 + 1]
mov word [rcx + 0x56], ax
cmp ax, word [rdx + 0x18]
jb 0x14038c11a
mov word [rcx + 0x56], r8w
call fcn.1402a8730
jmp 0x14038c12c
cmp byte [rdx + 8], 0
je 0x14038c127
mov dword [rsp + 0x4c], r9d
jmp 0x14038c133
call fcn.14030fe70
xor r9d, r9d
mov dword [rsp + 0x4c], eax
mov r15d, dword [rsp + 0x4c]
mov dword [rsi + 0x20], r9d
test r15d, r15d
jne 0x14038c156
mov byte [rsi + 2], r15b
movzx eax, word [rbx + 2]
inc dword [r13 + rax*4 + 0xd4]
jmp 0x14038ea22
cmp r15d, 0x65
jne 0x140389ea1
mov r15d, r9d
mov dword [rsp + 0x4c], r9d
mov byte [rsi + 2], 1
mov rsi, qword [rsp + 0x68]
mov eax, dword [rsi + 0x1b0]
mov rdi, qword [rsp + 0x78]
test eax, eax
jne 0x14038fa2f
mov r14, qword [rsp + 0x70]
cmp rdi, r14
jb 0x140387e8b
nop dword [rax]
nop word [rax + rax]
mov rdx, qword [rsi + 0x228]
test rdx, rdx
je 0x140387e8b
mov eax, dword [rsi + 0x238]
mov rcx, qword [rsi + 0x230]
add r14, rax
mov qword [rsp + 0x70], r14
call rdx
test eax, eax
jne 0x14038f879
cmp rdi, r14
jae 0x14038c1a0
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov r15, qword [rsp + 0x40]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r15 + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [r15 + 8]
imul rbx, rax, 0x38
add rbx, r11
test byte [r15 + 2], 1
je 0x14038c210
inc qword [r13 + 0x38]
mov eax, 0x400
test word [rbx + 0x14], ax
je 0x14038c23b
mov rcx, rbx
call fcn.140391a70
mov r15d, eax
test eax, eax
jne 0x140388cee
mov r15, qword [rsp + 0x40]
xor r9d, r9d
mov r11, qword [rsp + 0x60]
movsxd rax, dword [rbx + 0x10]
mov qword [rbp + 0x260], rax
mov rax, qword [rbx + 8]
mov qword [rbp + 0x258], rax
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x270], rcx
movzx eax, word [r15 + 0x10]
mov word [rbp + 0x278], ax
movzx r8d, word [r15 + 2]
test r8b, 0x10
je 0x14038c27e
mov r9d, dword [rdi + 0x24]
mov rcx, qword [rdi + 0x30]
lea rdx, [rbp + 0x258]
and r8d, 0x8a
call fcn.14033ad30
xor r9d, r9d
mov dword [rsp + 0x4c], eax
mov dword [rdi + 0x20], r9d
mov r15d, eax
test eax, eax
jne 0x140388cee
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
jmp 0x14038abc9
mov rbx, qword [rsp + 0x40]
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [rbx + 4]
mov rdi, qword [rax + rcx*8]
movsxd rax, dword [rbx + 8]
imul rbx, rax, 0x38
mov eax, 0x400
add rbx, r11
test word [rbx + 0x14], ax
je 0x14038c2f9
mov rcx, rbx
call fcn.140391a70
mov r15d, eax
test eax, eax
jne 0x140388cee
mov rdx, rbx
mov rcx, rdi
call fcn.140394b70
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140388cee
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov rax, qword [r13 + 0x78]
lea r8, [rbp - 0x44]
mov r15, qword [rsp + 0x40]
lea rdx, [rbp + 0x230]
movsxd rcx, dword [r15 + 4]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x38]
mov rdi, qword [rbx + 0x30]
mov qword [rbp + 0x230], rax
movzx eax, word [r15 + 0xc]
mov word [rbp + 0x24c], ax
mov byte [rbp + 0x24e], 0
movsxd rax, dword [r15 + 8]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp + 0x238], rcx
mov rcx, rdi
call fcn.14033a750
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140388cee
cmp dword [rbp - 0x44], eax
jne 0x14038c3c6
mov dl, 4
mov rcx, rdi
call fcn.14033a060
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140388cee
mov r12, qword [rsp + 0x40]
xor r9d, r9d
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
mov dword [rbx + 0x20], r9d
mov dword [rbx + 0x24], r9d
jmp 0x14038abc9
mov r12, qword [rsp + 0x40]
cmp word [r12 + 2], 0
je 0x14038c3e6
mov eax, dword [rsi + 0x30]
and eax, 0x10000001
cmp rax, 1
jne 0x14038f676
mov r11, qword [rsp + 0x60]
xor r9d, r9d
mov r10d, dword [rsp + 0x50]
mov dword [rbx + 0x20], r9d
mov dword [rbx + 0x24], r9d
jmp 0x14038abc9
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
mov rax, qword [rbx + 0x30]
cmp byte [rax], 0
je 0x14038c440
mov rcx, rbx
call fcn.140390d80
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140388cf3
mov r8, qword [rsp + 0x58]
xor r9d, r9d
mov edx, 1
jmp 0x14038c448
mov r15d, r9d
mov dword [rsp + 0x4c], r9d
cmp byte [rbx + 2], 0
jne 0x14038c518
mov rdx, qword [rbx + 0x30]
lea r8, [rbp - 0x68]
mov rcx, rsi
mov qword [rbp - 0x68], r9
call fcn.140390de0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140388cf3
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0x8d
jne 0x14038c4c7
movsxd rcx, dword [rax + 0xc]
xor r9d, r9d
mov rax, qword [r13 + 0x78]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rbp - 0x68]
mov byte [rdx + 2], r15b
mov qword [rdx + 0x50], rax
mov rax, qword [rsp + 0x40]
mov byte [rdx + 3], 1
mov dword [rdx + 0x20], r9d
mov rax, qword [rax + 0x10]
mov qword [rdx + 0x10], rax
mov qword [rdx + 0x28], rbx
jmp 0x14038abc9
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [r13 + 0x68]
test word [rcx + 0x14], ax
je 0x14038c4fc
call fcn.1403152d0
mov r12, qword [rsp + 0x40]
mov rcx, rax
mov rax, qword [rbp - 0x68]
mov r11, qword [rsp + 0x60]
mov qword [rcx], rax
jmp 0x14038abc1
mov rax, qword [rbp - 0x68]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov word [rcx + 0x14], 4
mov qword [rcx], rax
jmp 0x14038abc1
mov rax, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
movsxd rax, dword [rax + 8]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, r11
test word [rcx + 0x14], ax
je 0x14038c54c
call fcn.1403b0ca0
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
mov r12, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
mov word [rcx + 0x14], dx
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx + 3], 0
je 0x140387449
call fcn.1403906e0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140388cf3
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov r15, qword [rsp + 0x40]
cmp bl, 0x2a
mov rax, qword [r13 + 0x78]
movsxd rcx, dword [r15 + 4]
mov rdx, qword [rax + rcx*8]
mov rax, qword [rdx + 0x38]
mov rbx, qword [rdx + 0x30]
mov qword [rbp - 8], rax
movzx eax, word [r15 + 0x10]
mov word [rbp + 0x14], ax
sbb al, al
mov byte [rbp + 0x16], al
movsxd rax, dword [r15 + 0xc]
imul rcx, rax, 0x38
add rcx, r11
mov qword [rbp], rcx
mov rcx, rbx
call fcn.140300140
mov ecx, dword [rbx + 0x40]
lea rax, [rcx - 1]
cmp rax, 0x7ffffffe
ja 0x14038f6a9
mov qword [rbp + 0x148], rsi
xor r9d, r9d
mov word [rbp + 0x144], r9w
mov dword [rbp + 0x150], r9d
mov rax, qword [rbx + 0x88]
movzx edx, word [rbx + 0x44]
mov r8d, dword [rax + 0x58]
sub r8d, dword [rbx + 0x38]
cmp edx, r8d
jle 0x14038c640
test r8d, r8d
mov edx, r8d
cmovs edx, r9d
mov rax, qword [rbx + 0x38]
mov qword [rbp + 0x138], rax
cmp ecx, edx
ja 0x14038c66b
mov edx, 0x4010
mov dword [rbp + 0x140], ecx
mov word [rbp + 0x144], dx
mov r15d, r9d
mov dword [rsp + 0x4c], r9d
jmp 0x14038c69b
mov r8d, ecx
lea r9, [rbp + 0x130]
mov rcx, rbx
xor edx, edx
call fcn.140391bc0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140388cf3
mov ecx, dword [rbp + 0x140]
mov rax, qword [rbp + 0x138]
xor r9d, r9d
lea r8, [rbp - 8]
mov rdx, rax
call fcn.1403933d0
cmp dword [rbp + 0x150], 0
mov ebx, eax
je 0x14038c6c1
lea rcx, [rbp + 0x130]
call fcn.1403b0c50
mov r12, qword [rsp + 0x40]
test byte [r12], 1
jne 0x14038c6d1
neg ebx
jmp 0x14038c6d3
inc ebx
xor r9d, r9d
test ebx, ebx
jg 0x14038e811
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
jmp 0x14038abc9
mov r15, qword [rsp + 0x40]
movsxd rax, dword [r15 + 8]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [r13 + 0x68]
test word [rdi + 0x14], ax
je 0x14038c71c
mov rcx, rdi
call fcn.1403152d0
mov rdi, rax
xor r9d, r9d
mov edx, 1
mov word [rdi + 0x14], dx
mov eax, dword [rsi + 0xe8]
inc eax
cmp dword [rsi + 0xdc], eax
jg 0x14038f6bb
mov rax, qword [rsp + 0x68]
movsxd r14, dword [r15 + 0xc]
mov esi, dword [r15 + 4]
mov rcx, r14
shl rcx, 5
mov rax, qword [rax + 0x20]
mov dword [rbp + 0x2e0], r9d
mov rbx, qword [rcx + rax + 8]
cmp byte [rbx + 0x11], 0
je 0x14038c76f
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x14038c76f
mov rcx, rbx
call fcn.1402a8560
lea r8, [rbp + 0x2e0]
mov edx, esi
mov rcx, rbx
call fcn.1402a7d10
cmp byte [rbx + 0x11], 0
mov r15d, eax
mov dword [rsp + 0x4c], eax
je 0x14038c79b
sub dword [rbx + 0x14], 1
jne 0x14038c79b
mov rcx, rbx
call fcn.1403acf60
movsxd rdx, dword [rbp + 0x2e0]
mov word [rdi + 0x14], 4
mov qword [rdi], rdx
test r15d, r15d
jne 0x14038f459
mov rsi, qword [rsp + 0x68]
test edx, edx
je 0x140387e8b
mov rax, qword [rsp + 0x40]
mov r9, r14
shl r9, 5
add r9, qword [rsi + 0x20]
mov r8d, dword [rax + 4]
mov rax, qword [r9 + 0x18]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x14038c7f7
mov rax, qword [rcx + 0x10]
cmp dword [rax + 0x28], edx
jne 0x14038c7ef
mov dword [rax + 0x28], r8d
mov rcx, qword [rcx]
test rcx, rcx
jne 0x14038c7e2
mov rax, qword [r9 + 0x18]
mov rcx, qword [rax + 0x28]
test rcx, rcx
je 0x14038c819
mov rax, qword [rcx + 0x10]
cmp dword [rax + 0x58], edx
jne 0x14038c811
mov dword [rax + 0x58], r8d
mov rcx, qword [rcx]
test rcx, rcx
jne 0x14038c804
mov r12, qword [rsp + 0x40]
inc r14b
mov r11, qword [rsp + 0x60]
mov byte [rbp - 0x70], r14b
movzx r14d, byte [rsp + 0x48]
jmp 0x14038abc1
mov r15, qword [rsp + 0x40]
lea r8, [rbp + 0x2f0]
mov qword [rbp + 0x2f0], r9
mov rcx, qword [rsi + 0x20]
movsxd rax, dword [r15 + 8]
mov edx, dword [r15 + 4]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.140339480
mov r12, qword [rsp + 0x40]
mov r15d, eax
mov r11, qword [rsp + 0x60]
mov dword [rsp + 0x4c], eax
cmp dword [r12 + 0xc], 0
je 0x14038c8a0
mov rax, qword [rbp + 0x2f0]
add qword [r13 + 0x38], rax
mov rax, r12
movsxd rax, dword [rax + 0xc]
test eax, eax
jle 0x14038c8a0
imul rcx, rax, 0x38
mov rax, qword [rbp + 0x2f0]
add qword [rcx + r11], rax
test r15d, r15d
jne 0x140388cf3
jmp 0x14038abc1
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
cmp byte [rcx], 1
jne 0x14038c8df
mov rdx, qword [rcx + 0x30]
mov rcx, rsi
call fcn.1403948e0
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
mov rcx, qword [rcx + 0x30]
xor r8d, r8d
mov edx, dword [rcx + 0x50]
mov rcx, qword [rcx + 8]
call fcn.140339480
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140388cf3
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 8]
imul rdi, rax, 0x38
mov eax, 0x9000
add rdi, qword [r13 + 0x68]
test word [rdi + 0x14], ax
je 0x14038c93c
mov rcx, rdi
call fcn.1403152d0
mov rdi, rax
xor r9d, r9d
jmp 0x14038c942
mov word [rdi + 0x14], 4
movsxd rcx, dword [rbx + 4]
mov rax, qword [rsp + 0x68]
mov esi, dword [rbx + 0xc]
shl rcx, 5
mov dword [rbp + 0x2e0], r9d
mov rax, qword [rax + 0x20]
mov rbx, qword [rcx + rax + 8]
cmp byte [rbx + 0x11], 0
je 0x14038c979
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x14038c979
mov rcx, rbx
call fcn.1402a8560
mov r8d, esi
lea rdx, [rbp + 0x2e0]
mov rcx, rbx
call fcn.1402a78a0
cmp byte [rbx + 0x11], 0
mov r15d, eax
mov dword [rsp + 0x4c], eax
je 0x14038c9a6
sub dword [rbx + 0x14], 1
jne 0x14038c9a6
mov rcx, rbx
call fcn.1403acf60
mov rsi, qword [rsp + 0x68]
test r15d, r15d
jne 0x140388cee
mov eax, dword [rbp + 0x2e0]
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov qword [rdi], rax
jmp 0x14038abc1
inc byte [rsi + 0x70]
mov rcx, qword [rsp + 0x40]
mov r14, qword [rsp + 0x68]
mov qword [rbp + 0x28], r9
mov rbx, qword [rsi + 0x218]
test byte [rcx + 4], 1
movzx edi, byte [rsi + 0x6e]
mov esi, dword [rsi + 0x300]
je 0x14038ca00
mov qword [r14 + 0x218], r9
mov byte [r14 + 0x6e], 0
test byte [rcx + 4], 2
je 0x14038ca10
mov eax, dword [rcx + 8]
mov dword [r14 + 0x300], eax
mov rdx, qword [rcx + 0x10]
lea rax, [rbp + 0x28]
mov rcx, r14
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
call fcn.140281db0
dec byte [r14 + 0x70]
mov r15d, eax
mov qword [r14 + 0x218], rbx
mov byte [r14 + 0x6e], dil
mov dword [r14 + 0x300], esi
mov r8, qword [rbp + 0x28]
mov dword [rsp + 0x4c], eax
test r8, r8
jne 0x14038f6ce
test eax, eax
jne 0x14038f6ce
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov r15, qword [rsp + 0x40]
cmp qword [r15 + 0x10], 0
movsxd rbx, dword [r15 + 4]
jne 0x14038cace
mov rcx, qword [rsi + 0x20]
mov rax, rbx
shl rax, 5
mov rcx, qword [rax + rcx + 0x18]
call fcn.140379a40
and dword [rsi + 0x2c], 0xffffffef
lea r8, [r13 + 0xa8]
movzx r9d, word [r15 + 2]
mov edx, ebx
mov rcx, rsi
call fcn.140367c50
or dword [rsi + 0x2c], 1
mov r15d, eax
and dword [r13 + 0xc8], 0xfffffffc
mov dword [rsp + 0x4c], eax
jmp 0x14038cbd4
mov dword [rbp + 0x88], r9d
lea rax, [r13 + 0xa8]
mov qword [rbp + 0x78], rax
lea r9, str.sqlite_master
mov qword [rbp + 0x70], rsi
mov rdx, rbx
mov dword [rbp + 0x80], ebx
mov rax, qword [rsi + 0x20]
shl rdx, 5
mov rcx, qword [rax + rdx + 8]
mov rax, qword [rcx + 8]
mov ecx, dword [rax + 0x40]
mov dword [rbp + 0x90], ecx
mov rcx, rsi
mov r8, qword [rsi + 0x20]
mov rax, qword [r15 + 0x10]
mov qword [rsp + 0x20], rax
mov r8, qword [r8 + rdx]
lea rdx, str.SELECTFROM__w_._s_WHERE__s_ORDER_BY_rowid
call fcn.14036b6a0
mov rbx, rax
mov rcx, rsi
test rax, rax
je 0x14038f764
xor eax, eax
mov byte [rsi + 0xc5], 1
lea r9, [rbp + 0x70]
mov dword [rbp + 0x84], eax
lea r8, [fcn.140367960]
mov dword [rbp + 0x8c], eax
mov rdx, rbx
mov qword [rsp + 0x20], rax
call fcn.140281db0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14038cbc2
mov r15d, dword [rbp + 0x84]
mov dword [rsp + 0x4c], r15d
test r15d, r15d
jne 0x14038cbc2
cmp dword [rbp + 0x8c], r15d
jne 0x14038cbc2
lea rax, [0x1403f4d04]
mov r15d, Ordinal_16
mov ecx, r15d
mov qword [rsp + 0x20], rax
mov r9d, 0x18757
lea r8, str.database_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.1402608a0
mov dword [rsp + 0x4c], r15d
mov rdx, rbx
mov rcx, rsi
call fcn.140342c30
mov byte [rsi + 0xc5], 0
test r15d, r15d
je 0x140387513
mov rcx, rsi
call fcn.140377a10
mov r12, qword [rsp + 0x70]
cmp r15d, 7
je 0x1403892be
mov eax, VariantTimeToDosDateTime
jmp 0x140388cfd
mov rax, qword [rsp + 0x40]
mov rcx, rsi
mov edx, dword [rax + 4]
call fcn.140336940
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140388cf3
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov rax, qword [rsp + 0x40]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rdx, qword [rax + 0x10]
shl rcx, 5
add rcx, qword [rsi + 0x20]
mov rcx, qword [rcx + 0x18]
add rcx, 8
call fcn.140366cc0
test rax, rax
je 0x14038cc75
cmp qword [rsi + 0x320], 0
jne 0x14038cc6a
mov ecx, 0xffffffff
add dword [rax + 0x2c], ecx
jne 0x14038cc75
mov rdx, rax
mov rcx, rsi
call fcn.1402b48c0
or dword [rsi + 0x2c], 1
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov rax, qword [rsp + 0x40]
xor r8d, r8d
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov rax, qword [rsp + 0x40]
add rcx, 0x20
mov rdx, qword [rax + 0x10]
call fcn.140366cc0
mov r8, rax
test rax, rax
je 0x14038cc75
mov rax, qword [rax + 0x18]
mov rcx, qword [rax + 0x10]
cmp rcx, r8
jne 0x14038ccee
mov rcx, qword [r8 + 0x28]
mov rdx, r8
mov qword [rax + 0x10], rcx
mov rcx, rsi
call fcn.140350100
or dword [rsi + 0x2c], 1
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
test rcx, rcx
je 0x14038cd2a
lea rdx, [rcx + 0x28]
mov rcx, qword [rcx + 0x28]
cmp rcx, r8
je 0x14038cd23
test rcx, rcx
jne 0x14038ccf3
mov rdx, r8
mov rcx, rsi
call fcn.140350100
or dword [rsi + 0x2c], 1
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
mov rax, qword [r8 + 0x28]
mov qword [rdx], rax
mov rdx, r8
mov rcx, rsi
call fcn.140350100
or dword [rsi + 0x2c], 1
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
mov rbx, qword [rsp + 0x40]
xor r8d, r8d
mov rax, qword [rsi + 0x20]
movsxd rcx, dword [rbx + 4]
mov rdx, qword [rbx + 0x10]
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
add rcx, 0x38
call fcn.140366cc0
mov rbx, rax
test rax, rax
je 0x140387513
mov rcx, qword [rax + 0x30]
cmp qword [rax + 0x28], rcx
jne 0x14038cde6
mov rdx, qword [rax + 8]
add rcx, 8
xor r8d, r8d
call fcn.1402bb740
mov rdx, qword [rax + 0x10]
test rdx, rdx
je 0x14038cde6
mov rax, qword [rdx + 0x58]
add rdx, 0x58
test rax, rax
je 0x14038cde6
mov rcx, rax
nop dword [rax]
cmp rax, rbx
mov rax, qword [rcx + 0x40]
je 0x14038cde3
lea rdx, [rcx + 0x40]
mov rcx, rax
test rax, rax
jne 0x14038cdb0
mov rdx, rbx
mov rcx, rsi
call fcn.140344510
or dword [rsi + 0x2c], 1
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
mov qword [rdx], rax
mov rdx, rbx
mov rcx, rsi
call fcn.140344510
or dword [rsi + 0x2c], 1
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
mov r15, qword [rsp + 0x40]
mov rdx, qword [rsi + 0x20]
movsxd rax, dword [r15 + 4]
mov r8, qword [r15 + 0x10]
mov r10d, dword [r15 + 8]
add r8, 4
imul rdi, rax, 0x38
add rdi, r11
inc rax
imul rbx, rax, 0x38
movsxd rax, dword [r15 + 0xc]
mov ecx, dword [rdi]
add rbx, r11
imul r9, rax, 0x38
movzx eax, word [r15 + 2]
inc ecx
add r9, r11
shl rax, 5
lea r11, [rbp - 0x38]
mov qword [rsp + 0x38], r11
lea r11, [rbp - 0x40]
mov qword [rsp + 0x30], r11
mov rdx, qword [rax + rdx + 8]
mov dword [rsp + 0x28], ecx
mov rcx, rsi
mov dword [rsp + 0x20], r10d
call fcn.14033b290
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x14038ce8a
mov rcx, rbx
call fcn.1403b0ca0
jmp 0x14038ce90
mov word [rbx + 0x14], 1
mov eax, dword [rbp - 0x40]
test eax, eax
je 0x14038ceca
test r15d, r15d
jne 0x14038f76e
mov rdx, qword [rbp - 0x38]
dec eax
movsxd rcx, eax
mov r9b, 1
sub qword [rdi], rcx
lea rax, [fcn.140286150]
mov rcx, rbx
mov qword [rsp + 0x20], rax
mov r8, 0xffffffffffffffff
call fcn.140392290
test byte [rbx + 0x14], 2
jne 0x14038ced9
mov byte [rbx + 0x16], r14b
jmp 0x14038c171
cmp byte [rbx + 0x16], r14b
je 0x14038c171
movzx edx, r14b
mov rcx, rbx
call fcn.140392690
jmp 0x14038c171
mov rcx, qword [rsp + 0x40]
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 + 0x14], 0x10
jne 0x14038cf25
mov rcx, rbx
call fcn.140392190
test eax, eax
jne 0x1403892b4
mov rdx, qword [rdi]
mov rcx, qword [rbx + 8]
call fcn.140378550
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r11
test byte [rdi + 0x14], 0x10
je 0x14038cfda
mov rbx, qword [rdi + 8]
movzx eax, word [rbx + 0x32]
test al, 2
jne 0x14038cf81
test al, 1
jne 0x14038cf7c
mov rcx, qword [rbx + 0x10]
call fcn.140324d40
mov qword [rbx + 0x10], rax
mov edx, 1
or word [rbx + 0x32], 3
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x14038cfda
mov rdi, qword [rax]
mov rax, qword [rax + 8]
mov qword [rbx + 0x10], rax
test rax, rax
jne 0x14038cfa2
mov rcx, rbx
call fcn.140378480
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 0xc]
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, qword [rsp + 0x60]
test word [rcx + 0x14], ax
je 0x14038cfcc
mov rdx, rdi
call fcn.1403b1f80
jmp 0x14038c171
mov qword [rcx], rdi
mov word [rcx + 0x14], 4
jmp 0x14038c171
mov eax, 0x9000
test word [rdi + 0x14], ax
je 0x14038cff2
mov rcx, rdi
call fcn.1403b0ca0
jmp case.0x140386f2c.9
mov word [rdi + 0x14], dx
jmp case.0x140386f2c.9
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
mov esi, dword [rcx + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rdi, rax, 0x38
add rbx, r11
add rdi, r11
test byte [rbx + 0x14], 0x10
jne 0x14038d02f
mov rcx, rbx
call fcn.140392190
test eax, eax
jne 0x14038fa44
test esi, esi
je 0x14038d04b
mov r8, qword [rdi]
mov edx, esi
mov rcx, qword [rbx + 8]
call fcn.1403785c0
test eax, eax
jne 0x14038e809
test esi, esi
js 0x140387f94
mov rdx, qword [rdi]
mov rcx, qword [rbx + 8]
call fcn.140378550
mov r11, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 0xc]
mov r12, qword [rcx + 0x10]
imul r15, rax, 0x38
add r15, r11
cmp word [rcx + 2], 0
je 0x14038d0b3
mov rax, qword [r13 + 0x108]
mov rcx, qword [r12 + 0x20]
test rax, rax
je 0x14038d0b3
nop dword [rax]
cmp qword [rax + 0x30], rcx
je 0x14038f29e
mov rax, qword [rax + 8]
test rax, rax
jne 0x14038d0a0
mov eax, dword [rsi + 0xb0]
cmp dword [r13 + 0x118], eax
jge 0x14038f77c
test byte [r15 + 0x14], 0x10
jne 0x14038d1f4
mov edx, dword [r12 + 0x10]
mov ecx, dword [r12 + 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 [r12 + 8]
add ecx, edx
add eax, 7
jns 0x14038d0fa
add eax, 7
sar eax, 3
lea r14d, [rax + rcx*8]
mov rcx, qword [rsp + 0x68]
movsxd rsi, r14d
mov rdx, rsi
call fcn.140342dc0
mov rbx, rax
test rax, rax
je 0x14038fa44
mov r8, rsi
xor edx, edx
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
mov eax, 0x9000
test word [r15 + 0x14], ax
jne 0x14038d13d
cmp dword [r15 + 0x20], 0
je 0x14038d145
mov rcx, r15
call fcn.1403b0c50
mov rsi, qword [rsp + 0x68]
lea rax, [0x140390750]
mov word [r15 + 0x14], 0x1010
xor r9d, r9d
mov qword [r15 + 8], rbx
mov dword [r15 + 0x10], r14d
mov qword [r15 + 0x30], rax
mov qword [rbx], r13
mov dword [rbx + 0x58], edi
mov eax, dword [r12 + 0x10]
mov dword [rbx + 0x5c], eax
mov rax, qword [rsp + 0x40]
sub rax, qword [rsp + 0x58]
sar rax, 5
mov dword [rbx + 0x4c], eax
mov rax, qword [r13 + 0x68]
mov qword [rbx + 0x18], rax
mov eax, dword [r13 + 0x24]
mov dword [rbx + 0x54], eax
mov rax, qword [r13 + 0x78]
mov qword [rbx + 0x20], rax
mov eax, dword [r13 + 0x28]
mov dword [rbx + 0x48], eax
mov rax, qword [r13 + 0x88]
mov qword [rbx + 0x10], rax
mov eax, dword [r13 + 0x90]
mov dword [rbx + 0x50], eax
mov rax, qword [r12 + 0x20]
mov qword [rbx + 0x30], rax
movsxd rax, edi
add rax, 2
imul rcx, rax, 0x38
lea rax, [rbx + 0x70]
add rcx, rbx
cmp rax, rcx
je 0x14038d1f8
nop dword [rax]
mov word [rax + 0x14], r9w
mov qword [rax + 0x18], rsi
add rax, 0x38
cmp rax, rcx
jne 0x14038d1e0
jmp 0x14038d1f8
mov rbx, qword [r15 + 8]
inc dword [r13 + 0x118]
lea rdx, [rbx + 0x70]
mov rax, qword [r13 + 0x108]
mov qword [rbx + 8], rax
mov rax, qword [rsi + 0x38]
mov qword [rbx + 0x38], rax
mov rax, qword [r13 + 0x38]
mov qword [rbx + 0x60], rax
mov rax, qword [r13]
mov qword [rsp + 0x60], rdx
mov rcx, qword [rax + 0x78]
mov qword [rbx + 0x68], rcx
mov rax, qword [r13 + 0x128]
mov qword [rbx + 0x40], rax
mov qword [r13 + 0x128], r9
mov qword [r13 + 0x38], r9
mov qword [r13 + 0x108], rbx
mov qword [r13 + 0x68], rdx
movsxd rcx, dword [rbx + 0x58]
mov dword [r13 + 0x24], ecx
movzx eax, word [rbx + 0x5c]
mov dword [r13 + 0x28], eax
imul rcx, rcx, 0x38
add rdx, rcx
mov qword [r13 + 0x78], rdx
movsxd rax, dword [r12 + 0x10]
lea rcx, [rdx + rax*8]
mov qword [rbx + 0x28], rcx
mov eax, dword [r12 + 8]
add eax, 7
cdq
and edx, 7
add eax, edx
xor edx, edx
sar eax, 3
movsxd r8, eax
call sub.VCRUNTIME140.dll_memset
mov rcx, qword [r12]
mov r15d, dword [rsp + 0x4c]
mov qword [r13 + 0x88], rcx
mov eax, dword [r12 + 8]
mov dword [r13 + 0x90], eax
lea rax, [rcx - 0x20]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x58], rcx
jmp 0x14038c171
mov rax, qword [rsp + 0x40]
mov edi, 0x9000
movsxd rax, dword [rax + 8]
imul r9, rax, 0x38
add r9, qword [r13 + 0x68]
test word [r9 + 0x14], di
je 0x14038d2f1
mov rcx, r9
call fcn.1403152d0
mov r9, rax
mov edx, 1
jmp 0x14038d2f8
mov word [r9 + 0x14], 4
mov r8, qword [r13 + 0x108]
mov rax, qword [r8 + 0x10]
movsxd rcx, dword [r8 + 0x4c]
shl rcx, 5
mov ecx, dword [rcx + rax + 4]
mov rax, qword [rsp + 0x40]
add ecx, dword [rax + 4]
movsxd rax, ecx
imul rcx, rax, 0x38
add rcx, qword [r8 + 0x18]
test word [r9 + 0x14], di
je 0x14038d349
mov rdx, rcx
mov r8d, 0x4000
mov rcx, r9
call fcn.1403afa50
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
movups xmm0, xmmword [rcx]
mov r12, qword [rsp + 0x40]
mov eax, 0x2000
mov r11, qword [rsp + 0x60]
mov r10d, dword [rsp + 0x50]
mov r8, qword [rsp + 0x58]
movups xmmword [r9], xmm0
movsd xmm1, qword [rcx + 0x10]
movsd qword [r9 + 0x10], xmm1
test word [rcx + 0x14], ax
lea rcx, [0x140000000]
jne 0x14038867f
mov eax, 0xcfff
and word [r9 + 0x14], ax
mov eax, 0x4000
or word [r9 + 0x14], ax
xor r9d, r9d
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov eax, dword [rsi + 0x30]
bt rax, 0x13
mov rax, qword [rsp + 0x40]
mov r12, rax
jae 0x14038d3dc
movsxd rax, dword [rax + 8]
lea rcx, [0x140000000]
add qword [rsi + 0x318], rax
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
cmp dword [rax + 4], 0
lea rcx, [0x140000000]
movsxd rax, dword [rax + 8]
je 0x14038d402
add qword [rsi + 0x310], rax
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
add qword [r13 + 0x50], rax
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
cmp dword [r12 + 4], 0
je 0x14038d44d
cmp qword [rsi + 0x310], 0
jne case.0x140386f2c.89
cmp qword [rsi + 0x318], 0
je 0x140388a10
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
cmp qword [r13 + 0x50], 0
jne case.0x140386f2c.89
cmp qword [rsi + 0x318], 0
je 0x140388a10
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rcx, qword [r13 + 0x108]
test rcx, rcx
je 0x14038d4af
mov rax, qword [rcx + 8]
test rax, rax
je 0x14038d49c
mov rcx, rax
mov rax, qword [rax + 8]
test rax, rax
jne 0x14038d490
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, qword [rcx + 0x18]
jmp 0x14038d4bf
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rdi, rax, 0x38
add rdi, r11
mov rcx, rdi
call fcn.140391eb0
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 8]
imul rbx, rax, 0x38
add rbx, qword [rsp + 0x60]
mov rcx, rbx
call fcn.140391eb0
mov rax, qword [rbx]
cmp qword [rdi], rax
jge 0x140387513
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov qword [rdi], rax
jmp 0x14038abc1
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rdx, qword [rcx + r11]
test rdx, rdx
jle 0x14038abce
mov rax, r12
movsxd rax, dword [rax + 0xc]
sub rdx, rax
mov qword [rcx + r11], rdx
mov edx, 1
jmp 0x140388a10
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
imul rdi, rax, 0x38
movsxd rax, dword [rcx + 8]
add rbx, r11
imul r8, rax, 0x38
add rdi, r11
mov eax, 0x9000
add r8, qword [r13 + 0x68]
test word [r8 + 0x14], ax
je 0x14038d57e
mov rcx, r8
call fcn.1403152d0
mov r11, qword [rsp + 0x60]
mov r8, rax
xor r9d, r9d
jmp 0x14038d585
mov word [r8 + 0x14], 4
mov rdx, qword [rbx]
test rdx, rdx
jle 0x14038d5c3
mov rcx, qword [rdi]
test rcx, rcx
cmovle rcx, r9
test rcx, rcx
js 0x14038d5ae
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, rcx
jl 0x14038d5c3
mov r12, qword [rsp + 0x40]
add rdx, rcx
mov r10d, dword [rsp + 0x50]
mov qword [r8], rdx
jmp 0x14038abc9
mov r12, qword [rsp + 0x40]
mov rdx, 0xffffffffffffffff
mov r10d, dword [rsp + 0x50]
mov qword [r8], rdx
jmp 0x14038abc9
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
test rax, rax
je 0x140387449
mov r12, qword [rsp + 0x40]
jle 0x140388a10
dec rax
mov qword [rcx + r11], rax
jmp 0x140388a10
mov rax, qword [rsp + 0x40]
movabs rbx, 0x8000000000000000
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov rax, qword [rcx + r11]
cmp rax, rbx
jle 0x14038d634
dec rax
mov qword [rcx + r11], rax
mov r12, qword [rsp + 0x40]
test rax, rax
je 0x140388a10
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rax, qword [rsp + 0x40]
mov rcx, rsi
movzx ebx, word [rax + 2]
lea rdx, [rbx*8 + 0x68]
call fcn.140342dc0
mov rdx, rax
test rax, rax
je 0x1403892b4
xor r12d, r12d
lea rcx, [rbx + 6]
mov qword [rax + 0x10], r12
lea rcx, [rax + rcx*8]
mov qword [rax], rcx
mov rax, qword [rsp + 0x40]
mov word [rcx + 0x14], 1
mov qword [rcx + 0x18], rsi
mov dword [rcx + 0x20], r12d
mov rcx, qword [rax + 0x10]
mov qword [rdx + 8], rcx
mov rcx, rax
sub rax, qword [rsp + 0x58]
sar rax, 5
mov dword [rdx + 0x20], eax
mov qword [rdx + 0x18], r13
mov byte [rdx + 0x29], r12b
mov dword [rdx + 0x24], r12d
mov byte [rdx + 0x28], r14b
mov byte [rdx + 0x2a], bl
mov byte [rcx + 1], 0xf1
mov qword [rcx + 0x10], rdx
mov byte [rcx], 0xa3
jmp 0x14038d6e0
mov rcx, qword [rsp + 0x40]
xor r12d, r12d
movsxd rax, dword [rcx + 0xc]
mov rbx, qword [rcx + 0x10]
mov rdi, qword [rsp + 0x60]
imul r10, rax, 0x38
add r10, rdi
cmp qword [rbx + 0x10], r10
je 0x14038d74a
mov qword [rbx + 0x10], r10
movzx eax, byte [rbx + 0x2a]
mov edx, eax
sub rdx, 1
lea r9d, [rax - 1]
js 0x14038d74a
mov rsi, qword [rsp + 0x40]
lea r8, [rdx + 6]
lea r8, [rbx + r8*8]
nop dword [rax + rax]
mov eax, dword [rsi + 8]
lea r8, [r8 - 8]
add eax, r9d
dec r9d
cdqe
imul rcx, rax, 0x38
add rcx, rdi
sub rdx, 1
mov qword [r8 + 8], rcx
jns 0x14038d720
mov rsi, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x40]
inc dword [r10 + 0x10]
lea r8, [rbx + 0x30]
cmp dword [rcx + 4], 0
mov rcx, rbx
mov rax, qword [rbx + 8]
movzx edx, byte [rbx + 0x2a]
je 0x14038d768
call qword [rax + reloc.SinoSPE.dll_Ordinal_48]
jmp 0x14038d76b
call qword [rax + reloc.SinoSPE.dll_Ordinal_24]
mov eax, dword [rbx + 0x24]
test eax, eax
je 0x140387513
jle 0x14038d7d4
mov rcx, qword [rbx]
test rcx, rcx
jne 0x14038d785
mov rax, r12
jmp 0x14038d7b9
movzx edx, word [rcx + 0x14]
mov r8d, 0x202
movzx eax, dx
and ax, r8w
cmp ax, r8w
jne 0x14038d7a8
cmp byte [rcx + 0x16], 1
jne 0x14038d7a8
mov rax, qword [rcx + 8]
jmp 0x14038d7b9
test dl, 1
je 0x14038d7b2
mov rax, r12
jmp 0x14038d7b9
mov dl, 1
call fcn.1403af620
mov r8, rax
lea rdx, [0x1403e9084]
mov rcx, r13
call fcn.140386d40
mov r15d, dword [rbx + 0x24]
mov dword [rsp + 0x4c], r15d
cmp byte [rbx + 0x29], 0
je 0x14038d817
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax - 0x1c]
test eax, eax
je 0x14038d813
imul rcx, rax, 0x38
mov eax, 0x9000
add rcx, rdi
test word [rcx + 0x14], ax
je 0x14038d805
mov edx, 1
call fcn.1403b1f80
jmp 0x14038d813
mov eax, 1
mov qword [rcx], rax
mov word [rcx + 0x14], 4
mov byte [rbx + 0x29], 0
mov rcx, qword [rbx]
mov eax, 0x9000
test word [rcx + 0x14], ax
jne 0x14038d82b
cmp dword [rcx + 0x20], 0
je 0x14038d830
call fcn.1403b0c50
mov rax, qword [rbx]
xor r9d, r9d
mov edx, 1
mov word [rax + 0x14], dx
mov dword [rbx + 0x24], r9d
test r15d, r15d
jne 0x140388cee
mov r11, rdi
jmp 0x1403876bb
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
mov rsi, qword [rcx + 0x10]
imul rbx, rax, 0x38
movsxd rax, dword [rcx + 0xc]
add rbx, r11
test eax, eax
je 0x14038d90a
imul rdi, rax, 0x38
xorps xmm0, xmm0
movups xmmword [rbp + 0x198], xmm0
movups xmmword [rbp + 0x1a8], xmm0
xor eax, eax
mov qword [rbp + 0x1c8], rax
add rdi, r11
mov eax, 0x9000
movups xmmword [rbp + 0x1b8], xmm0
test word [rdi + 0x14], ax
je 0x14038d8b1
mov rcx, rdi
call fcn.1403b0ca0
jmp 0x14038d8b5
mov word [rdi + 0x14], dx
mov qword [rbp + 0x198], rdi
mov qword [rbp + 0x1a8], rbx
mov qword [rbp + 0x1a0], rsi
mov rax, qword [rbx + 0x18]
movzx ecx, byte [rax + 0x64]
mov byte [rbp + 0x1c0], cl
lea rcx, [rbp + 0x198]
call qword [rsi + reloc.SinoSPE.dll_Ordinal_40]
mov rax, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r15d, dword [rbp + 0x1bc]
mov rdi, qword [rsp + 0x78]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
mov dword [rsp + 0x4c], r15d
add rbx, r11
jmp 0x14038d921
mov rdx, rsi
mov rcx, rbx
call fcn.140391ae0
mov r11, qword [rsp + 0x60]
mov r15d, eax
mov dword [rsp + 0x4c], eax
test r15d, r15d
jne 0x14038f793
test byte [rbx + 0x14], 2
jne 0x14038d939
mov byte [rbx + 0x16], r14b
jmp 0x14038abb7
cmp byte [rbx + 0x16], r14b
je 0x140387f94
movzx edx, r14b
mov rcx, rbx
call fcn.140392690
mov r11, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
lea rax, [rbp + 0x348]
mov dword [rbp + 0x340], r9d
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x344]
mov rax, qword [rsp + 0x40]
mov rcx, rsi
mov dword [rbp + 0x348], 0xffffffff
mov dword [rbp + 0x344], 0xffffffff
mov r8d, dword [rax + 8]
mov edx, dword [rax + 4]
call fcn.14033d900
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
je 0x14038d9c9
cmp eax, 5
jne 0x140388cf3
xor eax, eax
mov ecx, 1
mov r15d, eax
mov dword [rsp + 0x4c], eax
jmp 0x14038d9cf
mov ecx, dword [rbp + 0x340]
mov rax, qword [rsp + 0x40]
mov edi, 0x9000
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
movsxd rax, ecx
add rbx, qword [rsp + 0x60]
test word [rbx + 0x14], di
je 0x14038da01
mov rdx, rax
mov rcx, rbx
call fcn.1403b1f80
mov edx, 4
jmp 0x14038da0d
mov edx, 4
mov qword [rbx], rax
mov word [rbx + 0x14], dx
lea rcx, [rbx + 0x38]
movsxd rax, dword [rbp + 0x344]
test word [rbx + 0x4c], di
je 0x14038da2d
mov rdx, rax
call fcn.1403b1f80
mov edx, 4
jmp 0x14038da34
mov qword [rcx], rax
mov word [rbx + 0x4c], dx
lea rcx, [rbx + 0x70]
movsxd rax, dword [rbp + 0x348]
test word [rbx + 0x84], di
je 0x14038da5f
mov rdx, rax
call fcn.1403b1f80
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov qword [rcx], rax
mov word [rbx + 0x84], dx
jmp 0x14038abc1
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 8]
imul r15, rax, 0x38
mov eax, 0x9000
add r15, qword [r13 + 0x68]
test word [r15 + 0x14], ax
je 0x14038daa5
mov rcx, r15
call fcn.1403152d0
mov r15, rax
xor r9d, r9d
jmp 0x14038daac
mov word [r15 + 0x14], 4
mov rax, qword [rsi + 0x20]
mov edx, dword [rbx + 0xc]
movsxd rcx, dword [rbx + 4]
shl rcx, 5
cmp edx, 0xffffffff
mov r13, qword [rcx + rax + 8]
mov rax, qword [r13 + 8]
mov rbx, qword [rax]
movzx r14d, byte [rbx + 9]
mov esi, r14d
cmovne esi, edx
cmp byte [rbx + 0x15], 3
jae 0x14038daec
mov rax, qword [rbx + 0x50]
cmp qword [rax], 0
je 0x14038daef
cmp qword [rbx + 0x60], 0
jle 0x14038daef
mov esi, r14d
cmp byte [rbx + 0x13], 0
jne 0x14038db0a
lea rax, reloc.SinoSPE.dll_Ordinal_2
cmp qword [rbx], rax
je 0x14038db0a
mov rcx, qword [rbx + 0xd8]
jmp 0x14038db11
lea rcx, [0x1403e1574]
cmp esi, 5
jne 0x14038db86
test rcx, rcx
je 0x14038db51
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x14038db22
test eax, 0x3fffffff
je 0x14038db51
cmp byte [rbx + 0x11], 0
mov rax, qword [rbx + 0x48]
mov rcx, qword [rax]
jne 0x14038db51
cmp byte [rbx + 8], 0
jne 0x14038db86
cmp dword [rcx], 2
jl 0x14038db51
cmp qword [rcx + 0x68], 0
jne 0x14038db86
mov esi, r14d
mov ecx, dword [rsp + 0x4c]
test ecx, ecx
je 0x14038db5f
mov esi, r14d
mov edx, esi
mov rcx, rbx
call fcn.14036e710
mov word [r15 + 0x14], 0x2202
cmp eax, 6
jne 0x14038dd13
xor ebx, ebx
mov qword [r15 + 8], rbx
mov eax, ebx
jmp 0x14038dd50
cmp esi, r14d
je 0x14038db54
cmp r14d, 5
je 0x14038db96
cmp esi, 5
jne 0x14038db54
mov r12, qword [rsp + 0x68]
cmp byte [r12 + 0x65], 0
je 0x14038f7b7
cmp dword [r12 + 0xdc], 1
jg 0x14038f7b7
cmp r14d, 5
jne 0x14038dcd6
cmp qword [rbx + 0x128], 0
mov edi, r9d
jne 0x14038dc56
mov dword [rbp + 0x2e8], r9d
movzx eax, byte [rbx + 0x16]
cmp al, 1
jb 0x14038dbe5
cmp al, r14b
jne 0x14038dc0a
cmp byte [rbx + 0x11], 0
jne 0x14038dc00
mov rcx, qword [rbx + 0x48]
mov edx, 1
mov rax, qword [rcx]
call qword [rax + Ordinal_58]
mov edi, eax
test eax, eax
jne 0x14038dc0a
cmp byte [rbx + 0x16], 5
je 0x14038dc0a
mov byte [rbx + 0x16], 1
test edi, edi
jne 0x14038dcbe
mov rax, qword [rbx]
lea r9, [rbp + 0x2e8]
mov rdx, qword [rbx + 0x130]
xor r8d, r8d
mov rcx, rax
call qword [rax + Ordinal_58]
mov edi, eax
test eax, eax
jne 0x14038dcbe
cmp dword [rbp + 0x2e8], eax
je 0x14038dc4c
mov rcx, rbx
call fcn.140315c20
mov edi, eax
test eax, eax
jne 0x14038dcbe
cmp qword [rbx + 0x128], 0
je 0x14038dcbe
mov rcx, rbx
call fcn.140315920
mov edi, eax
test eax, eax
jne 0x14038dcbe
mov rax, qword [rbx + 0x118]
mov rdx, r12
movzx r8d, byte [rbx + 0xf]
mov r9d, dword [rbx + 0xc8]
mov rcx, qword [rbx + 0x128]
mov qword [rsp + 0x20], rax
call fcn.1403963f0
mov edi, eax
mov dword [rsp + 0x4c], eax
xor eax, eax
mov rcx, rbx
mov qword [rbx + 0x128], rax
call fcn.1403159b0
test edi, edi
je 0x14038dcbe
cmp byte [rbx + 8], 0
jne 0x14038dcbe
mov edx, 1
mov rcx, rbx
call fcn.140316440
jmp 0x14038db5c
mov dword [rsp + 0x4c], edi
test edi, edi
jne 0x14038db5c
mov edx, esi
mov rcx, rbx
call fcn.14036e710
jmp 0x14038dcf4
cmp r14d, 4
jne 0x14038dce9
mov edx, 2
mov rcx, rbx
call fcn.14036e710
cmp dword [rsp + 0x4c], 0
jne 0x14038db5c
xor eax, eax
mov rcx, r13
mov edx, eax
cmp esi, 5
sete dl
inc edx
call fcn.14033cb20
mov ecx, eax
mov dword [rsp + 0x4c], eax
jmp 0x14038db58
cdqe
lea rcx, [0x140000000]
mov rcx, qword [rcx + rax*8 + 0x3e4248]
mov qword [r15 + 8], rcx
test rcx, rcx
jne 0x14038dd33
xor ebx, ebx
mov eax, ebx
jmp 0x14038dd50
mov rax, 0xffffffffffffffff
nop word [rax + rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x14038dd40
and eax, 0x3fffffff
xor ebx, ebx
movzx r14d, byte [rsp + 0x48]
mov dword [r15 + 0x10], eax
mov byte [r15 + 0x16], 1
cmp r14b, 1
je 0x14038dd71
movzx edx, r14b
mov rcx, r15
call fcn.140392690
mov r15d, dword [rsp + 0x4c]
mov rsi, qword [rsp + 0x68]
mov r13, qword [rbp - 0x80]
test r15d, r15d
jne 0x14038fa6e
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov r15, qword [rsp + 0x40]
movsxd rax, dword [r15 + 8]
test eax, eax
je 0x14038ddab
imul r9, rax, 0x38
add r9, r11
mov r8d, dword [r15 + 4]
lea rcx, [r13 + 0xa8]
mov rdx, rsi
call fcn.1403791f0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x140388cf3
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rsi, qword [rcx + rax + 8]
cmp byte [rsi + 0x11], 0
mov rdi, qword [rsi + 8]
je 0x14038de0d
inc dword [rsi + 0x14]
cmp byte [rsi + 0x12], 0
jne 0x14038de0d
mov rcx, rsi
call fcn.1402a8560
cmp byte [rdi + 0x21], 0
jne 0x14038de23
mov r15d, 0x65
mov dword [rsp + 0x4c], r15d
jmp 0x14038df1f
mov rax, qword [rdi + 0x18]
mov r14d, dword [rdi + 0x40]
mov edx, r14d
mov rcx, qword [rax + 0x50]
mov ebx, dword [rcx + 0x24]
mov rcx, rdi
bswap ebx
mov r8d, ebx
call fcn.1402bae60
mov r15d, eax
cmp r14d, eax
jb 0x14038dee6
cmp ebx, r14d
jae 0x14038dee6
test ebx, ebx
je 0x14038ded9
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x14038de7a
xor r8d, r8d
xor edx, edx
call fcn.140328a80
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x14038ded2
mov rax, qword [rdi + 0x10]
test rax, rax
je 0x14038de90
and byte [rax + 1], 0xfb
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x14038de83
xor r9d, r9d
mov r8d, r14d
mov edx, r15d
mov rcx, rdi
call fcn.140302c40
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14038df19
mov rcx, qword [rdi + 0x18]
mov rcx, qword [rcx + 0x70]
call fcn.14036ee80
mov edx, dword [rdi + 0x40]
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov rax, qword [rdi + 0x18]
bswap edx
mov rcx, qword [rax + 0x50]
mov dword [rcx + 0x1c], edx
jmp 0x14038df19
mov r15d, dword [rsp + 0x4c]
jmp 0x14038df19
mov r15d, 0x65
mov dword [rsp + 0x4c], r15d
jmp 0x14038df19
lea rax, [0x1403f4d04]
mov ebx, VariantTimeToDosDateTime
mov ecx, ebx
mov qword [rsp + 0x20], rax
mov r9d, 0x123cb
lea r8, str.database_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.1402608a0
mov r15d, ebx
mov dword [rsp + 0x4c], ebx
movzx r14d, byte [rsp + 0x48]
cmp byte [rsi + 0x11], 0
je 0x14038df33
sub dword [rsi + 0x14], 1
jne 0x14038df33
mov rcx, rsi
call fcn.1403acf60
test r15d, r15d
je 0x140387f94
cmp r15d, 0x65
jne 0x14038f459
xor r9d, r9d
mov r15d, r9d
mov dword [rsp + 0x4c], r9d
jmp 0x140388a01
cmp dword [r12 + 4], 0
jne 0x14038df95
mov rdx, qword [rsi + 8]
mov r8d, dword [r12 + 8]
test rdx, rdx
je 0x14038abc9
mov eax, dword [rdx + 0xc8]
lea ecx, [r8 + 1]
xor ecx, eax
and ecx, 3
xor ecx, eax
mov dword [rdx + 0xc8], ecx
mov rdx, qword [rdx + 0x10]
test rdx, rdx
jne 0x14038df70
jmp 0x14038abc9
mov ecx, dword [r12 + 8]
mov eax, dword [r13 + 0xc8]
inc ecx
xor ecx, eax
and ecx, 3
xor ecx, eax
mov dword [r13 + 0xc8], ecx
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x30]
lea rcx, [0x140000000]
or byte [rax + 1], 0x40
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rcx, qword [rax + rcx*8]
mov rax, qword [rcx + 0x30]
lea rcx, [0x140000000]
and byte [rax + 1], 0xbf
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
movzx r8d, byte [r12 + 0xc]
test r8b, r8b
jne 0x14038e04b
movabs rax, 0x400000000
test qword [rsi + 0x30], rax
jne 0x1403876c5
mov r15, qword [rsp + 0x40]
mov rcx, qword [rsi + 0x20]
movsxd rax, dword [r15 + 4]
mov edx, dword [r15 + 8]
shl rax, 5
mov rcx, qword [rax + rcx + 8]
call fcn.14033b890
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
je 0x140387513
mov r14, qword [rsp + 0x40]
cmp al, 6
jne 0x14038e095
mov r8, qword [r14 + 0x10]
lea rdx, str.database_table_is_locked:__s
mov rcx, r13
call fcn.140386d40
mov r12, qword [rsp + 0x70]
mov eax, VariantTimeToDosDateTime
jmp 0x140388d02
movsxd rdx, dword [rsi + 0x23c]
mov edi, r9d
mov rbx, qword [r12 + 0x10]
test edx, edx
jle 0x14038e0dd
cmp qword [rsi + 0x260], 0
jne 0x14038e0dd
mov r15d, 6
mov dword [rsp + 0x4c], r15d
mov edi, r15d
test rbx, rbx
je 0x140388cee
jmp 0x14038e199
test rbx, rbx
jne 0x14038e0ef
mov r15d, r9d
mov dword [rsp + 0x4c], r9d
jmp 0x14038abce
mov rax, qword [rbx + 0x10]
mov rsi, qword [rax]
cmp qword [rsi + 0x70], 0
je 0x14038e18d
mov r14, qword [rsp + 0x68]
mov rcx, r9
test edx, edx
jle 0x14038e129
mov rax, qword [r14 + 0x260]
cmp qword [rax], rbx
je 0x14038e1bd
inc rcx
add rax, 8
cmp rcx, rdx
jl 0x14038e114
mov rcx, r14
call fcn.140301ed0
mov edi, eax
test eax, eax
jne 0x14038e18d
mov rcx, qword [rbx + 0x10]
call qword [rsi + 0x70]
mov edi, eax
test eax, eax
jne 0x14038e18d
mov edx, dword [r14 + 0x30c]
add edx, dword [r14 + 0x308]
movsxd rcx, dword [r14 + 0x23c]
mov rax, qword [r14 + 0x260]
mov qword [rax + rcx*8], rbx
inc dword [r14 + 0x23c]
inc dword [rbx + 0x18]
test edx, edx
je 0x14038e18d
cmp qword [rsi + 0xa0], 0
je 0x14038e18d
mov dword [rbx + 0x20], edx
dec edx
mov rcx, qword [rbx + 0x10]
call qword [rsi + 0xa0]
mov edi, eax
mov rsi, qword [rsp + 0x68]
mov r15d, edi
mov dword [rsp + 0x4c], edi
mov rdx, qword [rbx + 0x10]
mov rcx, r13
call fcn.140395a00
test edi, edi
jne 0x140388cee
movzx r14d, byte [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov r15d, r9d
mov dword [rsp + 0x4c], r9d
mov rsi, r14
jmp 0x14038e199
mov rax, qword [rsp + 0x40]
lea rcx, [rbp + 0x98]
xorps xmm0, xmm0
mov qword [rbp + 0x98], r9
xorps xmm1, xmm1
mov qword [rbp + 0xc8], r9
movdqu xmmword [rbp + 0xa0], xmm0
mov qword [rbp + 0xb0], rsi
movdqu xmmword [rbp + 0xb8], xmm1
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
add rdx, r11
call fcn.1403919e0
movzx ecx, word [rbp + 0xac]
mov r15d, eax
mov dword [rsp + 0x4c], eax
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x14038e241
cmp byte [rbp + 0xae], 1
jne 0x14038e241
mov rax, qword [rbp + 0xa0]
jmp 0x14038e25f
test cl, 1
jne 0x14038e323
mov dl, 1
lea rcx, [rbp + 0x98]
call fcn.1403af620
movzx ecx, word [rbp + 0xac]
test rax, rax
je 0x14038e323
mov r8, qword [rsi + 0x20]
lea rbx, [r13 + 0xa8]
mov rcx, qword [rsp + 0x40]
mov rdx, rax
movsxd rcx, dword [rcx + 4]
shl rcx, 5
mov r8, qword [rcx + r8]
mov rcx, rsi
call fcn.14034d2b0
mov r14, qword [rsp + 0x68]
xor r8d, r8d
mov rsi, rax
mov rcx, qword [rax + 0x48]
mov rdi, qword [rcx]
lea rcx, [r14 + 0x240]
mov rdx, rdi
call fcn.1402bb740
mov r8, qword [rax + 0x10]
test r8, r8
je 0x14038e3ae
mov rcx, qword [r8]
mov r9, qword [rcx + 8]
test r9, r9
je 0x14038e3ae
cmp qword [rcx + 0x28], 0
je 0x14038e3ae
mov rdx, rsi
mov qword [rsp + 0x20], rbx
mov rcx, r14
call fcn.1403b4d10
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14038e30e
mov rax, qword [rsi + 0x50]
test rax, rax
je 0x14038e30e
nop dword [rax]
cmp qword [rax], r14
je 0x14038e35a
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x14038e300
mov rsi, r14
movzx ecx, word [rbp + 0xac]
movzx r14d, byte [rsp + 0x48]
mov rdi, qword [rsp + 0x78]
mov eax, 0x9000
test ax, cx
jne 0x14038e336
cmp dword [rbp + 0xb8], 0
je 0x14038e342
lea rcx, [rbp + 0x98]
call fcn.1403b0c50
test r15d, r15d
jne 0x140388cf3
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov rcx, r14
call fcn.140301ed0
mov dword [rsp + 0x4c], eax
mov r15d, eax
test eax, eax
jne 0x14038e30e
mov rdx, qword [rsi + 0x50]
mov rsi, r14
test rdx, rdx
je 0x14038e38e
nop dword [rax]
cmp qword [rdx], rsi
je 0x14038e38e
mov rdx, qword [rdx + 0x28]
test rdx, rdx
jne 0x14038e380
movsxd rcx, dword [rsi + 0x23c]
mov rax, qword [rsi + 0x260]
mov qword [rax + rcx*8], rdx
inc dword [rsi + 0x23c]
inc dword [rdx + 0x18]
jmp 0x14038e311
mov r8, rdi
lea rdx, str.no_such_module:__s
mov rcx, r14
mov rsi, r14
call fcn.14036b6a0
mov qword [rbx], rax
mov eax, 1
mov r15d, eax
mov dword [rsp + 0x4c], eax
jmp 0x14038e311
mov rax, qword [rsp + 0x40]
mov rcx, rsi
inc dword [rsi + 0xe8]
mov r8, qword [rax + 0x10]
mov edx, dword [rax + 4]
call fcn.140394fb0
dec dword [rsi + 0xe8]
mov r15d, eax
mov dword [rsp + 0x4c], eax
test eax, eax
jne 0x140388cf3
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x20], r9
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x14038f7fa
mov rdi, qword [rbx]
test rdi, rdi
je 0x14038f7f5
lea rdx, [rbp + 0x20]
mov rcx, rbx
call qword [rdi + reloc.SinoSPE.dll_Ordinal_48]
mov rdx, rbx
mov rcx, r13
mov r15d, eax
mov dword [rsp + 0x4c], eax
call fcn.140395a00
test r15d, r15d
jne 0x140388cee
mov rax, qword [rbp + 0x20]
mov r9b, 2
xor r8d, r8d
mov rcx, r13
mov qword [rax], rbx
mov rax, qword [rsp + 0x40]
mov edx, dword [rax + 4]
call fcn.140296d80
mov rcx, qword [rbp + 0x20]
test rax, rax
je 0x14038f7ed
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov qword [rax + 0x30], rcx
inc dword [rbx + 8]
jmp 0x14038abc1
mov rax, qword [rsp + 0x40]
mov qword [rbp + 0x30], r9
movsxd rax, dword [rax + 8]
imul rbx, rax, 0x38
mov eax, 0x9000
add rbx, r11
test word [rbx + 0x14], ax
je 0x14038e4ce
mov rcx, rbx
call fcn.1403b0ca0
mov r11, qword [rsp + 0x60]
jmp 0x14038e4d2
mov word [rbx + 0x14], dx
mov rax, qword [rsp + 0x40]
mov rdi, qword [rax + 0x10]
mov rax, qword [rdi + 0x50]
test rax, rax
je 0x14038abbc
mov rcx, qword [rax + 0x10]
lea r8, [rbp + 0x30]
mov r15, qword [rsp + 0x40]
mov qword [rsp + 0x20], r8
mov r10, qword [rcx]
inc dword [rax + 0x18]
movsxd rax, dword [r15 + 4]
mov rdx, qword [rsi + 0x20]
mov r9d, dword [r15 + 0xc]
mov r8, qword [rdi]
shl rax, 5
mov rdx, qword [rax + rdx]
call qword [r10 + 0xc0]
mov rcx, qword [rdi + 0x50]
mov r15d, eax
mov dword [rsp + 0x4c], eax
call fcn.140395e70
test r15d, r15d
jne 0x14038f805
mov rdx, qword [rbp + 0x30]
test rdx, rdx
je 0x140387513
lea rax, [fcn.140286150]
mov r9b, 1
mov r8, 0xffffffffffffffff
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.140392290
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
mov r11, qword [rsp + 0x60]
jmp 0x14038abb7
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rbx, qword [rax + rcx*8]
call fcn.1403a2170
test eax, eax
jne 0x1403892b9
mov ecx, reloc.SinoSPE.dll_Ordinal_16
call fcn.14036b6d0
mov rdi, rax
test rax, rax
je 0x1403892b4
mov rcx, qword [rbx + 0x30]
mov qword [rax], rcx
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 0xc]
imul rdx, rcx, 0x38
add rdx, qword [rsp + 0x60]
mov qword [rdi + 8], rdx
movsxd rcx, dword [rax + 8]
mov eax, 0x9000
imul rbx, rcx, 0x38
add rbx, qword [r13 + 0x68]
test word [rbx + 0x14], ax
je 0x14038e5ee
mov rcx, rbx
call fcn.1403152d0
mov rbx, rax
mov rcx, rbx
mov word [rbx + 0x14], 1
call fcn.1403b0c50
mov r12, qword [rsp + 0x40]
lea rax, str.ValueList
mov r11, qword [rsp + 0x60]
mov qword [rbx], rax
lea rax, [fcn.1402c8630]
mov qword [rbx + 8], rdi
mov word [rbx + 0x14], 0x1a01
mov byte [rbx + 0x17], WSAStartup
mov qword [rbx + 0x30], rax
jmp 0x14038abc1
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 0xc]
movsxd rcx, dword [rcx + 4]
imul rdx, rax, 0x38
mov rax, qword [r13 + 0x78]
mov r13, qword [rax + rcx*8]
lea rbx, [rdx + 0x38]
mov rax, qword [rbp - 0x80]
add rbx, r11
mov r12d, dword [rdx + r11]
mov rsi, qword [r13 + 0x30]
mov r11, qword [rax + 0x70]
movq xmm4, rbx
movsxd rdi, dword [rbx]
xor eax, eax
punpcklqdq xmm4, xmm4
mov edx, eax
mov r15, qword [rsi]
mov r14, qword [r15]
test edi, edi
jle 0x14038e790
cmp edi, 8
jb 0x14038e790
cmp dword [reloc.SinoSPE.dll_Ordinal_1], 6
jl 0x14038e790
mov r9d, eax
mov eax, edi
and eax, 0x80000007
jge 0x14038e6a5
dec eax
or eax, 0xfffffff8
inc eax
mov r10d, edi
lea rcx, [r11 + 0x20]
sub r10d, eax
mov r8d, 4
nop word [rax + rax]
movq xmm3, xmm9
movd xmm1, r9d
pshufd xmm1, xmm1, 0
lea eax, [r8 - 2]
paddd xmm1, xmm3
movd xmm2, eax
pshufd xmm2, xmm2, 0
lea eax, [r8 + 2]
paddd xmm2, xmm3
lea rcx, [rcx + 0x40]
movq xmm0, xmm8
add r9d, 8
paddd xmm1, xmm0
add rdx, 8
pmovsxdq xmm0, xmm1
vpmullq xmm1, xmm0, xmm7
paddq xmm1, xmm4
movq xmm0, xmm8
paddd xmm2, xmm0
pmovsxdq xmm0, xmm2
movdqu xmmword [rcx - 0x60], xmm1
vpmullq xmm1, xmm0, xmm7
paddq xmm1, xmm4
movd xmm2, r8d
movdqu xmmword [rcx - 0x50], xmm1
add r8d, 8
pshufd xmm2, xmm2, 0
movq xmm0, xmm8
paddd xmm2, xmm3
paddd xmm2, xmm0
pmovsxdq xmm0, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm3
vpmullq xmm1, xmm0, xmm7
paddq xmm1, xmm4
movq xmm0, xmm8
paddd xmm2, xmm0
movdqu xmmword [rcx - 0x40], xmm1
pmovsxdq xmm0, xmm2
vpmullq xmm1, xmm0, xmm7
paddq xmm1, xmm4
movdqu xmmword [rcx - 0x30], xmm1
cmp r9d, r10d
jl 0x14038e6c0
cmp rdx, rdi
jge 0x14038e7b9
lea r8d, [r9 + 1]
nop dword [rax]
movsxd rax, r8d
inc r8d
imul rcx, rax, 0x38
add rcx, rbx
mov qword [r11 + rdx*8], rcx
inc rdx
cmp rdx, rdi
jl 0x14038e7a0
mov rax, qword [rsp + 0x40]
mov r9d, edi
mov edx, r12d
mov qword [rsp + 0x20], r11
mov rcx, rsi
mov r8, qword [rax + 0x10]
call qword [r14 + 0x40]
mov rcx, qword [rbp - 0x80]
mov rdx, r15
mov dword [rsp + 0x4c], eax
call fcn.140395a00
mov r15d, dword [rsp + 0x4c]
test r15d, r15d
jne 0x14038fa4e
mov rcx, rsi
call qword [r14 + 0x50]
mov byte [r13 + 2], r15b
test eax, eax
je 0x14038f280
mov r13, qword [rbp - 0x80]
xor r9d, r9d
mov r12, qword [rsp + 0x40]
mov r8, qword [rsp + 0x58]
mov edx, 1
jmp 0x140388a10
mov r15d, dword [rsp + 0x4c]
jmp 0x14038e809
mov rbx, qword [rsp + 0x40]
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 0x14038e86f
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x1403888ca
mov rcx, rbx
call fcn.1403b0ca0
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
mov rax, qword [rdi + 0x30]
xorps xmm0, xmm0
mov rcx, qword [rsp + 0x40]
mov rsi, qword [rax]
xor eax, eax
mov r14, qword [rsi]
mov qword [rbp + 0x200], rax
movzx eax, byte [rsp + 0x48]
movups xmmword [rbp + 0x1d0], xmm0
mov qword [rbp + 0x1d0], rbx
movups xmmword [rbp + 0x1f0], xmm0
mov byte [rbp + 0x1f8], al
lea rax, [rbp + 0x290]
mov qword [rbp + 0x1d8], rax
movups xmmword [rbp + 0x1e0], xmm0
mov qword [rbp + 0x298], r9
mov dword [rbp + 0x294], 0x1000000
test byte [rcx + 2], 1
je 0x14038e8fc
mov eax, 0x9000
test word [rbx + 0x14], ax
je 0x14038e8f1
mov rcx, rbx
call fcn.1403b0ca0
mov rcx, qword [rsp + 0x40]
xor r9d, r9d
mov word [rbx + 0x14], 0x401
mov dword [rbx], r9d
jmp 0x14038e910
movzx eax, word [rbx + 0x14]
mov edx, 0xf241
and ax, dx
or ax, 1
mov word [rbx + 0x14], ax
mov r8d, dword [rcx + 8]
lea rdx, [rbp + 0x1d0]
mov rcx, qword [rdi + 0x30]
call qword [r14 + 0x58]
mov rdx, rsi
mov rcx, r13
mov r15d, eax
mov dword [rsp + 0x4c], eax
call fcn.140395a00
cmp dword [rbp + 0x1f4], 0
jle 0x14038e98f
movzx ecx, word [rbx + 0x14]
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x14038e95e
cmp byte [rbx + 0x16], 1
jne 0x14038e95e
mov rax, qword [rbx + 8]
jmp 0x14038e971
test cl, 1
je 0x14038e967
xor eax, eax
jmp 0x14038e971
mov dl, 1
mov rcx, rbx
call fcn.1403af620
mov r8, rax
lea rdx, [0x1403e9084]
mov rcx, r13
call fcn.140386d40
mov r15d, dword [rbp + 0x1f4]
mov dword [rsp + 0x4c], r15d
test byte [rbx + 0x14], 2
movzx r14d, byte [rsp + 0x48]
jne 0x14038e9a1
mov byte [rbx + 0x16], r14b
jmp 0x14038e9b3
cmp byte [rbx + 0x16], r14b
je 0x14038e9b3
movzx edx, r14b
mov rcx, rbx
call fcn.140392690
mov rsi, qword [rsp + 0x68]
test r15d, r15d
jne 0x140388cee
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [r13 + 0x78]
mov rdi, qword [rax + rcx*8]
cmp byte [rdi + 2], 0
jne 0x140387449
mov rcx, qword [rdi + 0x30]
mov rbx, qword [rcx]
mov rsi, qword [rbx]
call qword [rsi + 0x48]
mov rdx, rbx
mov rcx, r13
mov r15d, eax
mov dword [rsp + 0x4c], eax
call fcn.140395a00
test r15d, r15d
jne 0x14038f459
mov rcx, qword [rdi + 0x30]
call qword [rsi + 0x50]
test eax, eax
jne 0x14038c16c
mov rsi, qword [rsp + 0x68]
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 8]
dec eax
movsxd rcx, eax
shl rcx, 5
add rcx, qword [rsp + 0x58]
mov qword [rsp + 0x40], rcx
jmp 0x14038c171
mov edi, dword [rsi + 0x30]
or qword [rsi + 0x30], 0x4000000
and edi, 0x4000000
mov rcx, qword [rsp + 0x40]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax + 0x10]
movsxd rax, dword [rcx + 4]
imul rbx, rax, 0x38
add rbx, r11
test byte [rbx + 0x14], 2
jne 0x14038ea7c
mov byte [rbx + 0x16], 1
jmp 0x14038ea97
cmp byte [rbx + 0x16], 1
je 0x14038ea97
mov dl, 1
mov rcx, rbx
call fcn.140392690
mov r15d, eax
test eax, eax
jne 0x14038f459
mov rax, qword [rsi]
mov rcx, rsi
mov rdx, qword [rbx + 8]
call qword [rax + 0x98]
mov dword [rsp + 0x4c], eax
mov r15d, eax
test edi, edi
jne 0x14038eabf
mov rax, qword [rsp + 0x68]
and qword [rax + 0x30], 0xfffffffffbffffff
mov rdx, rsi
mov rcx, r13
call fcn.140395a00
and dword [r13 + 0xc8], 0xfffffffc
mov rsi, qword [rsp + 0x68]
test r15d, r15d
jne 0x140388cee
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov qword [rbp + 0x300], r9
cmp byte [rsi + 0x67], 0
jne 0x1403892b9
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x10]
mov rbx, qword [rax + 0x10]
test rbx, rbx
je 0x14038f7fa
mov r10, qword [rbx]
test r10, r10
je 0x14038f7fa
cmp qword [r10 + 0x68], 0
mov r12, qword [rsp + 0x40]
movsxd rdx, dword [r12 + 8]
je 0x1403871b2
movsxd rax, dword [r12 + 0xc]
mov r15, r12
movzx edi, byte [rsi + 0x6c]
mov r8, qword [r13 + 0x70]
imul rcx, rax, 0x38
mov rax, r9
add rcx, r11
test edx, edx
jle 0x14038eb70
nop word [rax + rax]
mov qword [r8 + rax*8], rcx
add rcx, 0x38
inc rax
cmp rax, rdx
jl 0x14038eb60
movzx eax, byte [r15 + 2]
lea r9, [rbp + 0x300]
mov rcx, rbx
mov byte [rsi + 0x6c], al
call qword [r10 + 0x68]
mov rdx, rbx
mov byte [rsi + 0x6c], dil
mov rcx, r13
mov dword [rsp + 0x4c], eax
mov r15d, eax
call fcn.140395a00
test r15d, r15d
jne 0x14038ebba
mov r12, qword [rsp + 0x40]
cmp dword [r12 + 4], r15d
je 0x14038ec05
mov rax, qword [rbp + 0x300]
mov qword [rsi + 0x38], rax
jmp 0x14038ec05
cmp r15b, 0x13
jne 0x14038ec00
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x10]
cmp byte [rax + 0x1c], 0
je 0x14038ec00
mov rcx, qword [rsp + 0x40]
movzx ecx, word [rcx + 2]
cmp ecx, 4
jne 0x14038f890
mov r12, qword [rsp + 0x40]
xor r9d, r9d
mov r11, qword [rsp + 0x60]
mov r15d, r9d
mov r10d, dword [rsp + 0x50]
mov dword [rsp + 0x4c], r9d
jmp 0x14038abc9
mov r12, qword [rsp + 0x40]
inc qword [r13 + 0x38]
test r15d, r15d
jne 0x140388cee
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 8]
imul rdx, rax, 0x38
mov eax, 0x9000
add rdx, qword [r13 + 0x68]
test word [rdx + 0x14], ax
je 0x14038ec4d
mov rcx, rdx
call fcn.1403152d0
mov r8, qword [rsp + 0x58]
mov rdx, rax
xor r9d, r9d
jmp 0x14038ec53
mov word [rdx + 0x14], 4
mov rax, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
mov r10d, dword [rsp + 0x50]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax + 8]
mov rax, qword [rcx + 8]
mov ecx, dword [rax + 0x40]
mov qword [rdx], rcx
jmp 0x14038abce
mov rbx, qword [rsp + 0x40]
movsxd rax, dword [rbx + 8]
imul rsi, rax, 0x38
mov eax, 0x9000
add rsi, qword [r13 + 0x68]
test word [rsi + 0x14], ax
je 0x14038ecb3
mov rcx, rsi
call fcn.1403152d0
mov rsi, rax
xor r9d, r9d
jmp 0x14038ecb9
mov word [rsi + 0x14], 4
movsxd rcx, dword [rbx + 4]
mov edi, r9d
mov rax, qword [rsp + 0x68]
shl rcx, 5
mov rax, qword [rax + 0x20]
mov rbx, qword [rcx + rax + 8]
mov rax, qword [rsp + 0x40]
mov ecx, dword [rax + 0xc]
test ecx, ecx
je 0x14038ecea
mov rax, qword [rbx + 8]
mov edi, dword [rax + 0x40]
cmp edi, ecx
cmovb edi, ecx
cmp byte [rbx + 0x11], 0
je 0x14038ed01
inc dword [rbx + 0x14]
cmp byte [rbx + 0x12], 0
jne 0x14038ed01
mov rcx, rbx
call fcn.1402a8560
mov rax, qword [rbx + 8]
mov rcx, qword [rax]
test edi, edi
je 0x14038ed12
mov dword [rcx + 0xbc], edi
cmp byte [rbx + 0x11], 0
mov edi, dword [rcx + 0xbc]
je 0x14038ed2c
sub dword [rbx + 0x14], 1
jne 0x14038ed2c
mov rcx, rbx
call fcn.1403acf60
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
mov qword [rsi], rdi
mov rsi, qword [rsp + 0x68]
jmp 0x14038abc1
mov rax, qword [rsp + 0x40]
mov r15, qword [rax + 0x10]
movsxd rax, dword [rax + 0xc]
imul rbx, rax, 0x38
mov qword [rbp - 0x68], r15
add rbx, r11
cmp qword [r15], rbx
je 0x14038edb5
mov qword [r15 + 0x18], r13
mov qword [r15], rbx
mov byte [r15 + 0x28], r14b
movzx eax, byte [r15 + 0x2a]
mov edx, eax
sub rdx, 1
lea r9d, [rax - 1]
js 0x14038edb5
mov rsi, qword [rsp + 0x40]
lea r8, [r15 + 0x30]
lea r8, [r8 + rdx*8]
nop dword [rax]
mov eax, dword [rsi + 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 0x14038ed90
mov rsi, qword [rsp + 0x68]
movzx eax, word [rbx + 0x14]
lea r8, [r15 + 0x30]
mov ecx, 0xf241
and ax, cx
mov rcx, r15
or ax, 1
mov word [rbx + 0x14], ax
mov rax, qword [r15 + 8]
movzx edx, byte [r15 + 0x2a]
call qword [rax + reloc.SinoSPE.dll_Ordinal_24]
mov eax, dword [r15 + 0x24]
test eax, eax
je 0x140387af5
jle 0x14038ee37
movzx ecx, word [rbx + 0x14]
mov edx, 0x202
movzx eax, cx
and ax, dx
cmp ax, dx
jne 0x14038ee0a
cmp byte [rbx + 0x16], 1
jne 0x14038ee0a
mov rax, qword [rbx + 8]
jmp 0x14038ee1d
test cl, 1
je 0x14038ee13
xor eax, eax
jmp 0x14038ee1d
mov dl, 1
mov rcx, rbx
call fcn.1403af620
mov r8, rax
lea rdx, [0x1403e9084]
mov rcx, r13
call fcn.140386d40
mov ecx, dword [r15 + 0x24]
mov dword [rsp + 0x4c], ecx
mov r12, qword [rsp + 0x40]
lea rdi, [r13 + 0x128]
mov rbx, qword [rdi]
mov esi, dword [r15 + 0x20]
mov r14d, dword [r12 + 4]
test rbx, rbx
je 0x14038eead
mov r15, qword [rsp + 0x68]
nop dword [rax]
test esi, esi
js 0x14038ee80
cmp dword [rbx], esi
jne 0x14038ee7a
mov eax, dword [rbx + 4]
test eax, eax
js 0x14038ee7a
cmp eax, 0x1f
jg 0x14038ee80
bt r14d, eax
jae 0x14038ee80
lea rdi, [rbx + 0x18]
jmp 0x14038eea1
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x14038ee8f
mov rcx, qword [rbx + 8]
call rax
mov rax, qword [rbx + 0x18]
mov rdx, rbx
mov rcx, r15
mov qword [rdi], rax
call fcn.140342c30
mov rbx, qword [rdi]
test rbx, rbx
jne 0x14038ee60
mov r15, qword [rbp - 0x68]
mov rsi, qword [rsp + 0x68]
xor r9d, r9d
mov dword [r15 + 0x24], r9d
mov r15d, dword [rsp + 0x4c]
test r15d, r15d
jne 0x140388cee
mov r11, qword [rsp + 0x60]
movzx r14d, byte [rsp + 0x48]
mov r10d, dword [rsp + 0x50]
jmp 0x14038abc9
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rax + 4]
imul rcx, rax, 0x38
mov eax, 0xf7ff
and word [rcx + r11 + 0x14], ax
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rcx, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
mov eax, 0x800
add rcx, r11
test word [rdx + r11 + 0x14], ax
je 0x14038ef6d
movzx eax, byte [rdx + r11 + 0x17]
mov edx, 0x9000
test word [rcx + 0x14], dx
je 0x14038ef5a
mov edx, eax
call fcn.1403b1f80
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
mov r12, qword [rsp + 0x40]
mov qword [rcx], rax
mov word [rcx + 0x14], 4
jmp 0x14038abce
mov eax, 0x9000
test word [rcx + 0x14], ax
je 0x14038ef8c
call fcn.1403b0ca0
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x40]
jmp 0x14038abc1
mov edx, 1
mov r12, qword [rsp + 0x40]
mov word [rcx + 0x14], dx
lea rcx, [0x140000000]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rcx, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
movsxd rax, dword [rcx + 4]
imul rdx, rax, 0x38
movsxd rax, dword [rcx + 8]
imul rcx, rax, 0x38
add rcx, r11
test byte [rdx + r11 + 0x14], 1
je 0x14038efe2
mov eax, 0xf7ff
and word [rcx + 0x14], ax
jmp 0x14038abce
mov eax, 0x800
or word [rcx + 0x14], ax
movzx eax, byte [rdx + r11]
mov byte [rcx + 0x17], al
jmp 0x14038abce
mov rcx, qword [rsp + 0x40]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
mov rcx, r11
imul rbx, rax, 0x38
add rbx, r11
call fcn.1402baa90
mov ecx, dword [rbx + 0x10]
xor edx, edx
mov r12, qword [rsp + 0x40]
mov r11, qword [rsp + 0x60]
shl ecx, 3
movsxd r8, ecx
mov rcx, qword [rbx + 8]
div r8
mov r8, rdx
and edx, 7
shr r8, 3
movsx eax, byte [r8 + rcx]
bts eax, edx
mov byte [r8 + rcx], al
jmp 0x14038abc1
mov rcx, qword [rsp + 0x40]
mov rdx, rcx
movsxd rax, dword [rcx + 4]
mov rcx, r11
imul rbx, rax, 0x38
add rbx, r11
call fcn.1402baa90
mov ecx, dword [rbx + 0x10]
xor edx, edx
mov r12, qword [rsp + 0x40]
shl ecx, 3
movsxd r8, ecx
div r8
mov rax, qword [rbx + 8]
mov rcx, rdx
shr rcx, 3
movsx r8d, byte [rcx + rax]
movzx eax, dl
and al, 7
mov edx, 1
movzx eax, al
bt r8d, eax
mov r8, qword [rsp + 0x58]
jb 0x14038f0af
inc dword [r13 + 0xf4]
xor r9d, r9d
jmp 0x140388a10
inc dword [r13 + 0xf0]
lea rcx, [0x140000000]
mov r11, qword [rsp + 0x60]
xor r9d, r9d
mov r10d, dword [rsp + 0x50]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
movzx eax, byte [rsi + 0x6e]
test al, 0x41
je 0x14038f1a6
cmp byte [r13 + 0xc5], 0xfe
je 0x14038f1a6
mov rcx, qword [rsp + 0x40]
mov r9, qword [rcx + 0x10]
test r9, r9
jne 0x14038f110
mov r9, qword [r13 + 0xf8]
test r9, r9
je 0x14038f1a3
test al, 0x40
je 0x14038f13c
mov rdx, r9
mov rcx, r13
call fcn.14038ffe0
mov rcx, qword [rsi + 0x100]
mov rdx, rax
mov rbx, rax
call qword [rsi + 0xf8]
mov rcx, rbx
call fcn.140286150
jmp 0x14038f199
cmp dword [rsi + 0xe4], 1
jle 0x14038f184
mov r8, r9
lea rdx, [0x1403efe14]
mov rcx, rsi
call fcn.14036b6a0
mov rdx, qword [rsi + 0x100]
mov r9, rax
mov r8, r13
mov ecx, 1
mov rbx, rax
call qword [rsi + 0xf8]
test rbx, rbx
je 0x14038f199
mov rdx, rbx
mov rcx, rsi
call fcn.140342c30
jmp 0x14038f199
mov rdx, qword [rsi + 0x100]
mov r8, r13
mov ecx, 1
call qword [rsi + 0xf8]
mov r8, qword [rsp + 0x58]
mov edx, 1
xor r9d, r9d
mov rax, qword [rsp + 0x40]
mov r12, qword [rsp + 0x40]
mov eax, dword [rax + 4]
cmp eax, dword [0x1404a5cf8]
jl 0x14038f204
cmp byte [r12], 0xb8
je 0x140387143
cmp dword [r13 + 0x90], 1
jle 0x14038f201
mov eax, reloc.SinoSPE.dll_Ordinal_32
nop word [rax + rax]
mov rcx, qword [r13 + 0x88]
cmp byte [rax + rcx], 0xf
jne 0x14038f1f2
mov dword [rax + rcx + 4], r9d
inc edx
add rax, 0x20
cmp edx, dword [r13 + 0x90]
jl 0x14038f1e0
mov eax, r9d
inc eax
mov edx, 1
mov dword [r12 + 4], eax
inc dword [r13 + 0xec]
jmp 0x140388a10
mov rsi, qword [rsp + 0x68]
lea rcx, [0x140000000]
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x40]
mov r13, qword [rbp - 0x80]
jmp 0x14038abc6
mov rsi, qword [rsp + 0x68]
mov r15d, dword [rsp + 0x4c]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
mov r10d, dword [rsp + 0x50]
jmp 0x14038abc9
mov rsi, rbx
jmp 0x14038794b
mov rsi, qword [rsp + 0x68]
mov r13, qword [rbp - 0x80]
mov r12, qword [rsp + 0x40]
movzx r14d, byte [rsp + 0x48]
mov r11, qword [rsp + 0x60]
jmp 0x14038abc1
mov r15d, dword [rsp + 0x4c]
lea rcx, [0x140000000]
mov r12, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x78]
add r12, 0x20
jmp 0x140386efa
mov r15, qword [rsp + 0x40]
mov ecx, dword [r15 + 4]
mov dword [r13 + 0x34], ecx
movzx eax, byte [r15 + 8]
mov byte [r13 + 0xc4], al
test ecx, ecx
je 0x14038f370
movzx eax, word [r15 + 2]
mov rcx, r13
test ax, ax
je 0x14038f331
mov r8d, eax
lea rdx, str._s_constraint_failed
lea rax, [0x140000000]
mov r8, qword [rax + r8*8 + 0x3e40b8]
call fcn.140386d40
mov r9, qword [r15 + 0x10]
test r9, r9
je 0x14038f341
mov r8, qword [r13 + 0xa8]
lea rdx, str._z:__s
mov rcx, rsi
call fcn.14036b6a0
mov qword [r13 + 0xa8], rax
jmp 0x14038f341
mov r8, qword [r15 + 0x10]
lea rdx, [0x1403e9084]
call fcn.140386d40
mov rax, qword [r13 + 0xa8]
lea rdx, str.abort_at__d_in___s_:__s
mov r9, qword [r13 + 0xf8]
mov r8, r15
sub r8, qword [rsp + 0x58]
mov ecx, dword [r15 + 4]
sar r8, 5
mov qword [rsp + 0x20], rax
call fcn.1402608a0
mov rcx, r13
call fcn.1403909d0
mov r14, qword [rsp + 0x40]
mov r15d, eax
mov r12, qword [rsp + 0x70]
cmp eax, 5
jne 0x14038f393
mov dword [r13 + 0x34], eax
jmp 0x14038a097
cmp dword [r13 + 0x34], 0
mov r15d, 0x65
mov eax, 1
cmovne r15d, eax
jmp 0x14038a097
mov r15d, 0x313
lea rdx, str.FOREIGN_KEY_constraint_failed
mov dword [r13 + 0x34], r15d
mov rcx, r13
mov byte [r13 + 0xc4], 2
call fcn.140386d40
cmp byte [r13 + 0xc6], 0
mov eax, 1
cmovge r15d, eax
jmp 0x140388cf3
mov ecx, 0x17853
call fcn.140340d50
mov r13, qword [rbp - 0x80]
mov r15d, eax
jmp 0x140388cee
lea r10, [0x140000000]
movsxd rax, esi
and edx, 0x3f
lea rcx, [rax + rax*2]
mov r9d, dword [r15 + rcx*8 + 8]
mov rax, qword [r15 + rcx*8]
mov rcx, r13
movzx r8d, byte [rdx + r10 + 0x3e4010]
lea rdx, str.cannot_store__s_value_in__s_column__s._s
shr r9d, 4
and r9d, 0xf
mov qword [rsp + 0x28], rax
mov rax, qword [r14]
dec r9d
mov r8, qword [r10 + r8*8 + 0x4a9f10]
mov qword [rsp + 0x20], rax
mov r9, qword [r10 + r9*8 + 0x4a95f0]
call fcn.140386d40
mov r15d, 0xc13
mov rsi, qword [rsp + 0x68]
jmp 0x140388cee
lea rdx, str.cannot_open_savepoint___SQL_statements_in_progress
mov rcx, r13
call fcn.140386d40
mov r15d, 5
mov rsi, rdi
jmp 0x140388cee
mov r13, qword [rbp - 0x80]
lea rdx, str.cannot_release_savepoint___SQL_statements_in_progress
mov rcx, r13
call fcn.140386d40
mov r15d, 5
jmp 0x140388cf3
mov byte [rsi + 0x65], 0
mov r13, rbx
jmp 0x140388cf3
mov r14, qword [rsp + 0x40]
mov r15d, 5
mov r12, qword [rsp + 0x70]
mov rax, r14
sub rax, qword [rsp + 0x58]
mov r13, rbx
sar rax, 5
mov dword [rbx + 0x30], eax
mov byte [rsi + 0x65], 0
mov dword [rbx + 0x34], r15d
jmp 0x14038a097
bt rax, 0x14
mov r15d, 8
mov eax, VariantTimeToDosDateTime
cmovae r15d, eax
jmp 0x140388cf8
mov r14, qword [rsp + 0x40]
mov r12, qword [rsp + 0x70]
cmp r15b, 5
jne 0x14038e09a
mov rax, r14
sub rax, qword [rsp + 0x58]
sar rax, 5
mov dword [r13 + 0x30], eax
mov dword [r13 + 0x34], r15d
jmp 0x14038a097
mov rdx, qword [r13 + 0xa8]
test rdx, rdx
je 0x14038f533
mov rcx, rsi
call fcn.140342c30
mov edx, Ordinal_32
mov rcx, rsi
call fcn.140342dc0
test rax, rax
je 0x14038f565
movups xmm0, xmmword [str.database_schema_has_changed]
movups xmmword [rax], xmm0
movsd xmm0, qword [0x1403efd10]
movsd qword [rax + 0x10], xmm0
mov ecx, dword [0x1403efd18]
mov dword [rax + 0x18], ecx
mov qword [r13 + 0xa8], rax
mov rax, qword [rsp + 0x40]
movsxd rdx, dword [rax + 4]
mov rax, qword [rsi + 0x20]
mov rcx, rdx
shl rcx, 5
mov rcx, qword [rcx + rax + 0x18]
mov eax, dword [rbp - 0x50]
cmp dword [rcx], eax
je 0x14038f594
mov rcx, rsi
call fcn.140377ab0
mov eax, dword [r13 + 0xc8]
mov r15d, reloc.SinoSPE.dll_Ordinal_17
and eax, 0xffffffed
or eax, 1
mov dword [r13 + 0xc8], eax
jmp 0x140388cf3
mov r15d, 0x204
jmp 0x140388cf3
mov rcx, qword [rbx + 0x10]
call fcn.140339560
jmp 0x140388cee
lea rax, [0x1403f4d04]
mov r9d, 0x1600c
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
mov ecx, VariantTimeToDosDateTime
call fcn.1402608a0
mov rsi, qword [rsp + 0x68]
mov eax, VariantTimeToDosDateTime
mov rdi, qword [rsp + 0x78]
mov r15d, eax
jmp 0x140388cf8
lea rax, [0x1403f4d04]
mov r9d, 0x18121
lea r8, str.database_corruption
mov qword [rsp + 0x20], rax
lea rdx, str._s_at_line__d_of___.10s_
mov ecx, VariantTimeToDosDateTime
call fcn.1402608a0
mov rdi, qword [rsp + 0x78]
mov eax, VariantTimeToDosDateTime
mov r15d, eax
jmp 0x140388cf8
mov rsi, rax
mov r13, qword [rbp - 0x80]
mov rdi, qword [rsp + 0x78]
lea rdx, str.string_or_blob_too_big
mov rcx, r13
call fcn.140386d40
mov r15d, reloc.OLEAUT32.dll_SafeArrayGetUBound
jmp 0x140388cf3
mov rsi, qword [rsp + 0x68]
jmp 0x14038f650
lea rax, [0x1403f4d04]
mov r15d, 0x30b
mov ecx, r15d
mov qword [rsp + 0x20], rax
mov r9d, 0x18565
lea r8, str.index_corruption
lea rdx, str._s_at_line__d_of___.10s_
call fcn.1402608a0
jmp 0x140388cee
mov ecx, 0x18632
call fcn.140340d50
mov r15d, eax
jmp 0x140388cf3
mov r15d, 6
mov byte [r13 + 0xc4], 2
jmp 0x140388cee
lea rdx, [0x1403e9084]
mov rcx, r13
call fcn.140386d40
mov rbx, qword [rbp + 0x28]
test rbx, rbx
je 0x14038f741
cmp dword [reloc.SinoSPE.dll_Ordinal_1], 0
je 0x14038f738
mov rcx, qword [0x1404b8660]
test rcx, rcx
je 0x14038f701
call qword [0x1404a5bd0]
mov rcx, rbx
call qword [0x1404a5b88]
dec qword [0x1404b85e8]
movsxd rcx, eax
sub qword [0x1404b85a0], rcx
mov rcx, rbx
call qword [0x1404a5b78]
mov rcx, qword [0x1404b8660]
test rcx, rcx
je 0x14038f741
call qword [0x1404a5be0]
jmp 0x14038f741
mov rcx, rbx
call qword [0x1404a5b78]
mov rsi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
cmp r15d, 7
je 0x1403892be
mov eax, VariantTimeToDosDateTime
jmp 0x140388cfd
call fcn.140377a10
jmp 0x1403892b9
mov rcx, qword [rbp - 0x38]
call fcn.140286150
jmp 0x140388cee
mov r15d, edx
mov rcx, r13
lea rdx, str.too_many_levels_of_trigger_recursion
call fcn.140386d40
jmp 0x140388cf3
mov rcx, rbx
call fcn.14028c4c0
mov r8, rax
lea rdx, [0x1403e9084]
mov rcx, r13
call fcn.140386d40
mov rsi, qword [rsp + 0x68]
jmp 0x140388cf3
mov r13, qword [rbp - 0x80]
lea rax, str.into
cmp esi, 5
lea r8, str.out_of
lea rdx, str.cannot_change__s_wal_mode_from_within_a_transaction
mov rcx, r13
cmove r8, rax
mov r15d, 1
call fcn.140386d40
mov rsi, r12
jmp 0x140388cf3
call qword [rdi + Ordinal_58]
jmp 0x1403892b4
mov rdi, qword [rsp + 0x78]
mov r15d, 6
jmp 0x140388cf3
mov rbx, qword [rbp + 0x30]
test rbx, rbx
je 0x140388cee
cmp dword [reloc.SinoSPE.dll_Ordinal_1], 0
je 0x14038f86b
mov rcx, qword [0x1404b8660]
test rcx, rcx
je 0x14038f82d
call qword [0x1404a5bd0]
mov rcx, rbx
call qword [0x1404a5b88]
dec qword [0x1404b85e8]
movsxd rcx, eax
sub qword [0x1404b85a0], rcx
mov rcx, rbx
call qword [0x1404a5b78]
mov rcx, qword [0x1404b8660]
test rcx, rcx
je 0x140388cee
call qword [0x1404a5be0]
jmp 0x140388cee
mov rcx, rbx
call qword [0x1404a5b78]
jmp 0x140388cee
mov r12, 0xffffffffffffffff
mov r15d, 9
mov eax, VariantTimeToDosDateTime
jmp 0x140388cfd
movzx eax, cl
cmp ecx, 5
mov ecx, 2
cmove eax, ecx
mov byte [r13 + 0xc4], al
jmp 0x140388cee
mov eax, dword [r13 + 0x2c]
mov r15, qword [rsp + 0x40]
add eax, 2
or eax, 1
mov dword [r13 + 0x2c], eax
movsxd rax, dword [r15 + 4]
imul rcx, rax, 0x38
add rcx, r11
mov qword [r13 + 0xa0], rcx
cmp byte [rsi + 0x67], 0
jne 0x1403892b9
test byte [rsi + 0x6e], 4
je 0x14038f8fc
mov rdx, qword [rsi + 0x100]
xor r9d, r9d
mov r8, r13
mov ecx, 4
call qword [rsi + 0xf8]
mov r8, qword [rsp + 0x58]
mov rax, r15
mov r15d, 0x64
sub rax, r8
sar rax, 5
inc eax
mov dword [r13 + 0x30], eax
mov r14, qword [rsp + 0x40]
mov r12, qword [rsp + 0x70]
jmp 0x14038a097
mov r15, qword [rsp + 0x40]
movzx eax, byte [rsi + 0x65]
mov ebx, dword [r15 + 4]
mov ecx, dword [r15 + 8]
cmp ebx, eax
je 0x14038f9fb
test ecx, ecx
je 0x14038f94f
mov edx, 0x204
mov rcx, rsi
call fcn.140378310
mov al, 1
jmp 0x14038f98d
test ebx, ebx
je 0x14038f976
cmp dword [rsi + 0xe0], 0
jle 0x14038f976
lea rdx, str.cannot_commit_transaction___SQL_statements_in_progress
mov rcx, r13
call fcn.140386d40
mov r15d, 5
jmp 0x140388cf3
mov rcx, r13
call fcn.140385f50
mov r15d, eax
test eax, eax
jne 0x14038f912
mov r15, qword [rsp + 0x40]
movzx eax, bl
mov rcx, r13
mov byte [rsi + 0x65], al
call fcn.1403909d0
cmp eax, 5
jne 0x14038f9d0
mov r14, qword [rsp + 0x40]
mov rax, r15
sub rax, qword [rsp + 0x58]
mov r15d, 5
mov r12, qword [rsp + 0x70]
sar rax, 5
mov dword [r13 + 0x30], eax
mov eax, 1
sub al, bl
mov byte [rsi + 0x65], al
mov dword [r13 + 0x34], r15d
jmp 0x14038a097
mov rcx, rsi
call fcn.14033de00
cmp dword [r13 + 0x34], 0
mov r15d, 0x65
mov r14, qword [rsp + 0x40]
mov eax, 1
mov r12, qword [rsp + 0x70]
cmovne r15d, eax
jmp 0x14038a097
test ebx, ebx
jne 0x14038fa08
lea rdx, str.cannot_start_a_transaction_within_a_transaction
jmp 0x14038fa1c
test ecx, ecx
lea rax, str.cannot_rollback___no_transaction_is_active
lea rdx, str.cannot_commit___no_transaction_is_active
cmovne rdx, rax
mov rcx, r13
call fcn.140386d40
mov r15d, 1
jmp 0x140388cf3
mov r12, qword [rsp + 0x70]
mov r15d, 9
mov eax, VariantTimeToDosDateTime
jmp 0x140388cfd
mov rsi, qword [rsp + 0x68]
jmp 0x1403892b4
mov rsi, qword [rsp + 0x68]
mov r13, qword [rbp - 0x80]
jmp 0x140388cee
mov r15d, dword [rsp + 0x4c]
mov rsi, rbx
jmp 0x140388cee
mov rsi, qword [rsp + 0x68]
mov r14, qword [rsp + 0x40]
mov eax, VariantTimeToDosDateTime
mov r12, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
jmp 0x140388d04
mov rsi, qword [rsp + 0x68]
mov r15d, dword [rsp + 0x4c]
mov r13, qword [rbp - 0x80]
jmp 0x140388cee
mov r15d, dword [rsp + 0x4c]
mov r13, qword [rbp - 0x80]
jmp 0x140388cf3
cmp r15d, 0x210a
jne 0x14038fade
lea rcx, [0x1403f4d04]
mov r9d, 0x18f47
mov qword [rsp + 0x20], rcx
lea r8, str.database_corruption
mov ecx, eax
lea rdx, str._s_at_line__d_of___.10s_
call fcn.1402608a0
mov r15d, Ordinal_16
cmp qword [r13 + 0xa8], 0
jne 0x14038fb57
cmp r15d, 0xc0a
je 0x14038fb57
mov ecx, r15d
lea r8, str.unknown_error
sub ecx, 0x64
je 0x14038fb41
sub ecx, 1
je 0x14038fb38
cmp ecx, 0x19f
je 0x14038fb2f
movzx eax, r15b
cmp eax, 0x1d
jae 0x14038fb48
lea rcx, [0x140000000]
mov rcx, qword [rcx + rax*8 + 0x3e7d70]
test rcx, rcx
je 0x14038fb48
mov r8, rcx
jmp 0x14038fb48
lea r8, str.abort_due_to_ROLLBACK
jmp 0x14038fb48
lea r8, str.no_more_rows_available
jmp 0x14038fb48
lea r8, str.another_row_available
lea rdx, [0x1403e9084]
mov rcx, r13
call fcn.140386d40
mov edx, r15d
mov dword [r13 + 0x34], r15d
mov rcx, rsi
call fcn.1403801d0
mov rax, qword [r13 + 0xa8]
lea rdx, str.statement_aborts_at__d:___s___s
mov r9, qword [r13 + 0xf8]
mov r8, r14
sub r8, qword [rsp + 0x58]
mov ecx, r15d
sar r8, 5
mov qword [rsp + 0x20], rax
call fcn.1402608a0
cmp byte [r13 + 0xc7], 2
jne 0x14038fba6
mov rcx, r13
call fcn.1403909d0
cmp r15d, 0xc0a
jne 0x14038fbb9
mov rcx, rsi
call fcn.14036c6d0
jmp 0x14038fbd3
cmp r15d, 0xb
jne 0x14038fbd3
cmp byte [rsi + 0x65], 0
jne 0x14038fbd3
movabs rax, 0x200000000
or qword [rsi + 0x30], rax
movzx eax, byte [rbp - 0x70]
mov r15d, 1
test al, al
je 0x14038a097
cmp eax, r15d
jb 0x14038fc0f
mov ecx, eax
mov rax, qword [rsi + 0x20]
shl rcx, 5
mov rcx, qword [rcx + rax - 8]
or word [rcx + 0x72], 8
mov rax, qword [rsi + 0x20]
mov rcx, qword [rax + 0x38]
or word [rcx + 0x72], 8
and dword [rsi + 0x2c], 0xffffffef
cmp dword [rsi + 0x48], 0
jne 0x14038a097
cmp dword [rsi + 0x28], 0
mov edi, ebx
jle 0x14038a092
nop word [rax + rax]
mov rax, qword [rsi + 0x20]
mov rcx, qword [rbx + rax + 0x18]
test byte [rcx + 0x72], 8
je 0x14038fc44
call fcn.140379a40
inc edi
add rbx, 0x20
cmp edi, dword [rsi + 0x28]
jl 0x14038fc30
jmp 0x14038a092
mov r14, qword [rsp + 0x40]
mov r13, rbx
mov r12, qword [rsp + 0x70]
jmp 0x14038a097
add dword [r13 + 0xe4], edi
cmp dword [r13 + 0xd0], 0
movaps xmm10, xmmword [rsp + 0x460]
movaps xmm9, xmmword [rsp + 0x470]
movaps xmm8, xmmword [rsp + 0x480]
movaps xmm7, xmmword [rsp + 0x490]
movaps xmm6, xmmword [rsp + 0x4a0]
mov r14, qword [rsp + 0x4b0]
mov r12, qword [rsp + 0x4b8]
mov rdi, qword [rsp + 0x4f8]
mov rsi, qword [rsp + 0x4f0]
mov rbx, qword [rsp + 0x4e8]
je 0x14038fcd2
mov rcx, r13
call fcn.1403b0b70
mov eax, r15d
mov rcx, qword [rbp + 0x350]
xor rcx, rsp
call fcn.1403ca460
add rsp, 0x4c0
pop r15
pop r13
pop rbp
ret