Function at 0x14028e240
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x98
mov rcx, qword [rcx]
lea r12, [0x1405267e0]
mov rax, qword [rsp + 0x108]
xor ebx, ebx
mov rdi, qword [rsp + 0x100]
mov r14, r9
mov dword [rsp + 0x30], ebx
mov r11, r8
mov dword [rsp + 0x34], ebx
mov r9, rdx
mov dword [rax + 0x2c], 0xffffffff
mov ebp, ebx
mov dword [rsp + 0x70], ebx
mov r15d, ebx
mov qword [rsp + 0x50], rcx
mov esi, ebx
mov qword [rsp + 0x40], rbx
mov r10d, ebx
mov qword [rsp + 0x80], rdi
mov r13d, ebx
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x60], rbx
test rdx, rdx
je 0x14028e3eb
test byte [rdi + 0x28], 6
je 0x14028e2e6
mov edx, ebx
mov qword [rsp + 0xe8], rbx
jmp 0x14028e3f3
movsxd rsi, dword [rcx + 0x28]
test esi, esi
jle 0x14028e386
mov rbp, qword [rcx + 0x20]
xor r12d, r12d
mov r11, rbp
lea r12, [0x1405267e0]
nop dword [rax]
nop word [rax + rax]
mov r8, qword [r11]
sub r9, r8
nop word [rax + rax]
movzx ecx, byte [r8]
movzx eax, byte [r9 + r8]
cmp ecx, eax
jne 0x14028e34f
test ecx, ecx
jne 0x14028e35d
mov r9, qword [rsp + 0xe8]
movsxd rax, ebx
shl rax, 5
mov r10, qword [rax + rbp + 0x18]
mov ebp, r13d
mov qword [rsp + 0x68], r10
jmp 0x14028e37e
movzx edx, byte [rax + r12]
movzx ecx, byte [rcx + r12]
cmp ecx, edx
jne 0x14028e362
inc r8
jmp 0x14028e320
mov r9, qword [rsp + 0xe8]
inc ebx
inc r10
add r11, 0x20
cmp r10, rsi
jl 0x14028e310
mov ebp, r13d
mov r10d, ebp
mov r11, qword [rsp + 0xf0]
cmp ebx, esi
jne 0x14028e3e7
lea rdx, str.main
sub r9, rdx
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdx]
movzx r8d, byte [r9 + rdx]
cmp eax, r8d
jne 0x14028e3d4
test eax, eax
jne 0x14028e3e2
mov rax, qword [rsp + 0x50]
xor ebx, ebx
mov esi, ebx
mov rax, qword [rax + 0x20]
mov r10, qword [rax + 0x18]
mov rdx, qword [rax]
mov qword [rsp + 0x68], r10
mov qword [rsp + 0xe8], rdx
jmp 0x14028e3f3
movzx ecx, byte [rax + r12]
movzx eax, byte [r8 + r12]
cmp ecx, eax
jne 0x14028e3e7
inc rdx
jmp 0x14028e3a0
xor ebx, ebx
mov esi, ebx
mov rdx, qword [rsp + 0xe8]
mov rcx, qword [rdi + 8]
lea r8, [0x140530f5c]
mov qword [rsp + 0x78], rcx
test rcx, rcx
je 0x14028e622
cmp dword [rcx], 0
lea rdi, [rcx + 8]
mov qword [rsp + 0x58], rdi
mov eax, ebx
mov dword [rsp + 0x38], ebx
jle 0x14028e5e1
test dword [rdi + 0x40], 0x2000
mov r12, qword [rdi + 0x20]
mov qword [rsp + 0x88], r12
je 0x14028e892
mov rax, qword [rdi + 0x28]
mov r14d, ebx
mov ebp, ebx
mov r12, qword [rax + 0x20]
cmp dword [r12], 0
jle 0x14028e7df
nop word [rax + rax]
mov r9, rdx
movsxd r15, ebp
mov rdx, qword [rsp + 0xf8]
mov r8, r11
shl r15, 5
add r15, r12
lea rcx, [r15 + 8]
call fcn.1402dec30
test eax, eax
je 0x14028e7a6
cmp dword [rsp + 0x30], 0
jle 0x14028e559
test dword [rdi + 0x40], 0x400
je 0x14028e53f
mov rax, qword [rdi + 0x48]
mov edi, ebx
movsxd rsi, dword [rax]
test rsi, rsi
jle 0x14028e538
lea r11, [rax + 8]
nop word [rax + rax]
mov r8, qword [r11]
mov r10, qword [rsp + 0xf8]
sub r10, r8
nop
movzx eax, byte [r8]
movzx r9d, byte [r8 + r10]
cmp eax, r9d
jne 0x14028e507
test eax, eax
jne 0x14028e525
test edi, edi
mov rdi, qword [rsp + 0x58]
js 0x14028e53d
movzx eax, byte [rdi + 0x3c]
test al, 0x10
je 0x14028e7a1
test al, 8
jne 0x14028e6b3
xor ebx, ebx
mov dword [rsp + 0x30], ebx
jmp 0x14028e53f
mov rcx, rax
lea rax, [0x1405267e0]
movzx edx, byte [rcx + rax]
lea rcx, [0x1405267e0]
movzx eax, byte [r9 + rcx]
cmp edx, eax
jne 0x14028e52a
inc r8
jmp 0x14028e4d0
inc edi
inc rbx
add r11, 0x10
cmp rbx, rsi
jl 0x14028e4c0
mov rdi, qword [rsp + 0x58]
xor ebx, ebx
test r13, r13
je 0x14028e551
mov rcx, qword [rsp + 0x50]
mov rdx, r13
call fcn.14025b200
mov qword [rsp + 0x60], rbx
mov r13, rbx
mov rax, qword [rsp + 0x108]
mov rsi, rdi
inc dword [rsp + 0x30]
mov r14d, 1
mov dword [rsp + 0x34], 2
mov qword [rsp + 0x40], rdi
mov word [rax + 0x30], bp
or dword [r15 + 0x1c], 0x40
test byte [r15 + 0x1c], 0x80
je 0x14028e7a6
mov r15d, dword [rsp + 0x34]
mov rcx, qword [rsp + 0x78]
mov eax, dword [rsp + 0x38]
mov rdx, qword [rsp + 0xe8]
mov ebp, dword [rsp + 0x30]
mov r14, qword [rsp + 0xf8]
inc eax
mov r11, qword [rsp + 0xf0]
add rdi, 0x68
mov ebx, 0
mov r10, qword [rsp + 0x68]
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x58], rdi
cmp eax, dword [rcx]
jl 0x14028e424
lea r8, [0x140530f5c]
test rsi, rsi
je 0x14028e612
mov eax, dword [rsi + 0x44]
mov rcx, qword [rsp + 0x108]
mov dword [rcx + 0x2c], eax
mov rax, qword [rsi + 0x20]
mov qword [rcx + 0x40], rax
test byte [rsi + 0x3c], 0x48
je 0x14028e609
or dword [rcx + 4], 0x200000
mov rcx, qword [rax + 0x60]
mov qword [rsp + 0x68], rcx
test ebp, ebp
jne 0x14028ee4e
mov rdi, qword [rsp + 0x100]
mov r12, qword [rsp + 0xe0]
test rdx, rdx
jne 0x14028ecb5
mov r9, qword [r12 + 0xa8]
mov rsi, rbx
mov r11, qword [rsp + 0xf0]
test r9, r9
je 0x14028ebbc
movzx r10d, byte [r12 + 0xd4]
cmp byte [r12 + 0xd5], dl
je 0x14028eb15
test dword [rdi + 0x28], 0x400
je 0x14028ebbc
test r11, r11
je 0x14028e69a
mov r9, qword [r9]
mov rdx, r11
sub r9, r11
movzx eax, byte [rdx]
movzx r8d, byte [rdx + r9]
cmp eax, r8d
jne 0x14028eaf5
test eax, eax
jne 0x14028eb0d
mov rdx, qword [rsp + 0x108]
mov eax, ebx
cmp r10b, 0x80
setne al
mov dword [rdx + 0x2c], eax
jmp 0x14028ebb4
mov rax, qword [rsp + 0x108]
mov edx, 0x48
mov rsi, qword [rsp + 0xe0]
movzx ebx, word [rax + 0x30]
mov rcx, qword [rsi]
call fcn.1402c1930
mov rcx, rax
test rax, rax
je 0x14028e559
mov rdx, qword [rsp + 0x40]
xor eax, eax
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
movups xmmword [rcx + 0x10], xmm0
movups xmmword [rcx + 0x20], xmm0
movups xmmword [rcx + 0x30], xmm0
mov qword [rcx + 0x40], rax
mov rax, 0xffffffffffffffff
mov word [rcx + 0x32], ax
mov byte [rcx], 0xa7
mov dword [rcx + 0x28], 1
mov eax, dword [rdx + 0x44]
mov dword [rcx + 0x2c], eax
mov word [rcx + 0x30], bx
mov rax, qword [rdx + 0x20]
or dword [rcx + 4], 0x200000
mov qword [rcx + 0x40], rax
test r13, r13
jne 0x14028e748
mov rdx, rcx
mov rcx, qword [rsi]
call fcn.1402c9de0
mov r13, rax
mov qword [rsp + 0x60], rax
jmp 0x14028e559
movsxd rax, dword [r13]
lea edx, [rax + 1]
cmp dword [r13 + 4], edx
jge 0x14028e770
mov r8, rcx
mov rdx, r13
mov rcx, qword [rsi]
call fcn.1402c9cf0
mov r13, rax
mov qword [rsp + 0x60], rax
jmp 0x14028e559
movups xmm0, xmmword [0x140527638]
shl rax, 5
movups xmm1, xmmword [0x140527648]
mov dword [r13], edx
mov qword [rsp + 0x60], r13
movups xmmword [rax + r13 + 8], xmm0
movups xmmword [rax + r13 + 0x18], xmm1
mov qword [rax + r13 + 8], rcx
jmp 0x14028e559
mov rsi, qword [rsp + 0x40]
mov r11, qword [rsp + 0xf0]
inc ebp
mov ebx, 0
mov rdx, qword [rsp + 0xe8]
cmp ebp, dword [r12]
jl 0x14028e460
mov rcx, qword [rsp + 0x78]
mov r15d, dword [rsp + 0x34]
test r14d, r14d
jne 0x14028e599
mov r10, qword [rsp + 0x68]
mov eax, dword [rsp + 0x38]
mov rdx, qword [rsp + 0xe8]
test r11, r11
je 0x14028e5a5
mov r14, qword [rsp + 0xf8]
mov r12, qword [rsp + 0x88]
test rdx, rdx
je 0x14028e82c
cmp qword [r12 + 0x60], r10
jne 0x14028e5a5
test r10, r10
jne 0x14028e82c
cmp byte [rdx], 0x2a
jne 0x14028e5a5
cmp byte [rdx + 1], r10b
jne 0x14028e5a5
mov r10, qword [rdi + 0x18]
mov rdx, r10
test r10, r10
jne 0x14028e83c
mov rdx, qword [r12]
mov r9, r11
sub r9, rdx
movzx eax, byte [rdx]
movzx r8d, byte [rdx + r9]
cmp eax, r8d
jne 0x14028e89c
test eax, eax
jne 0x14028e8b5
mov r11, qword [rsp + 0xe0]
cmp byte [r11 + 0x124], 2
jb 0x14028e8bd
test r10, r10
je 0x14028e8bd
mov rax, qword [r11 + 0x190]
test rax, rax
je 0x14028e8bd
mov rcx, qword [rsp + 0x108]
add rcx, 0x40
cmp qword [rax], rcx
je 0x14028e8ba
mov rax, qword [rax + 0x18]
test rax, rax
jne 0x14028e882
jmp 0x14028e8bd
test r11, r11
je 0x14028e8bd
jmp 0x14028e804
lea r11, [0x1405267e0]
movzx ecx, byte [rax + r11]
movzx eax, byte [r8 + r11]
cmp ecx, eax
jne 0x14028e594
inc rdx
jmp 0x14028e842
mov qword [rax], rbx
mov rcx, r14
call fcn.1402f3070
movsx r14d, word [r12 + 0x36]
movzx r15d, al
mov rsi, qword [r12 + 8]
mov ebp, ebx
test r14d, r14d
jle 0x14028e9ab
nop
cmp byte [rsi + 0xe], r15b
jne 0x14028e994
mov rdx, qword [rsi]
mov r9, qword [rsp + 0xf8]
sub r9, rdx
nop dword [rax + rax]
movzx eax, byte [rdx]
movzx r8d, byte [r9 + rdx]
cmp eax, r8d
jne 0x14028e9f6
test eax, eax
jne 0x14028ea0b
cmp dword [rsp + 0x30], eax
jle 0x14028ea5c
test dword [rdi + 0x40], 0x400
je 0x14028ea42
mov rax, qword [rdi + 0x48]
xor r12d, r12d
mov r11d, r12d
movsxd rdi, dword [rax]
test rdi, rdi
jle 0x14028ea3b
lea r10, [rax + 8]
lea r12, [0x1405267e0]
mov rdx, qword [r10]
mov r9, qword [rsp + 0xf8]
sub r9, rdx
nop
movzx eax, byte [rdx]
movzx r8d, byte [rdx + r9]
cmp eax, r8d
jne 0x14028ea13
test eax, eax
jne 0x14028ea21
mov rdi, qword [rsp + 0x58]
test ebx, ebx
js 0x14028ea40
movzx eax, byte [rdi + 0x3c]
test al, 0x10
jne 0x14028eab8
xor ebx, ebx
inc ebp
add rsi, 0x18
cmp ebp, r14d
jl 0x14028e8e0
mov r12, qword [rsp + 0x88]
mov rsi, qword [rsp + 0x40]
mov ebp, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x34]
mov eax, dword [rsp + 0x38]
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rsp + 0xe8]
test ebp, ebp
jne 0x14028e5a9
test dword [r12 + 0x30], 0x200
jne 0x14028e5a9
inc r15d
mov qword [rsp + 0x40], rdi
mov dword [rsp + 0x34], r15d
mov rsi, rdi
jmp 0x14028e5a9
lea r10, [0x1405267e0]
movzx ecx, byte [rax + r10]
movzx eax, byte [r8 + r10]
cmp ecx, eax
jne 0x14028e994
inc rdx
jmp 0x14028e900
movzx ecx, byte [rax + r12]
movzx eax, byte [r8 + r12]
cmp ecx, eax
jne 0x14028ea29
inc rdx
jmp 0x14028e960
inc ebx
inc r11
add r10, 0x10
cmp r11, rdi
jl 0x14028e951
mov rdi, qword [rsp + 0x58]
xor ebx, ebx
test r13, r13
je 0x14028ea54
mov rcx, qword [rsp + 0x50]
mov rdx, r13
call fcn.14025b200
mov qword [rsp + 0x60], rbx
mov r13, rbx
inc dword [rsp + 0x30]
movzx eax, bp
mov r12, qword [rsp + 0x88]
mov rsi, rdi
mov qword [rsp + 0x40], rdi
movsx ecx, word [r12 + 0x34]
cmp ebp, ecx
mov rcx, 0xffffffffffffffff
cmove ax, cx
mov rcx, qword [rsp + 0x108]
mov word [rcx + 0x30], ax
test dword [rdi + 0x40], 0x2000
je 0x14028e9b0
mov rax, qword [rdi + 0x28]
mov rcx, qword [rax + 0x20]
movsxd rax, ebp
shl rax, 5
or dword [rax + rcx + 0x1c], 0x40
jmp 0x14028e9b0
test al, 8
jne 0x14028eac7
xor ebx, ebx
mov dword [rsp + 0x30], ebx
jmp 0x14028ea42
mov rax, qword [rsp + 0x108]
lea rdx, [rsp + 0x60]
mov r8, qword [rsp + 0x40]
mov rcx, qword [rsp + 0xe0]
movzx r9d, word [rax + 0x30]
call fcn.14025bc50
mov r13, qword [rsp + 0x60]
jmp 0x14028ea5c
lea rbp, [0x1405267e0]
movzx ecx, byte [rax + rbp]
movzx eax, byte [r8 + rbp]
cmp ecx, eax
jne 0x14028ebc3
inc rdx
jmp 0x14028e681
cmp r10b, 0x80
je 0x14028eb77
test r11, r11
je 0x14028eb6a
mov r9, r11
lea rax, [0x140530f5c]
sub r9, rax
nop dword [rax]
movzx ecx, byte [r8]
movzx eax, byte [r9 + r8]
cmp ecx, eax
jne 0x14028eb52
test ecx, ecx
jne 0x14028eb65
mov rdx, qword [rsp + 0x108]
mov dword [rdx + 0x2c], 1
jmp 0x14028ebb4
lea rbp, [0x1405267e0]
movzx edx, byte [rax + rbp]
movzx ecx, byte [rcx + rbp]
cmp ecx, edx
jne 0x14028eb71
inc r8
jmp 0x14028eb30
lea rbp, [0x1405267e0]
cmp r10b, 0x7f
je 0x14028ebc3
test r11, r11
je 0x14028ebbc
lea rax, [0x140530f60]
mov r9, r11
mov rdx, rax
sub r9, rax
nop dword [rax]
movzx eax, byte [rdx]
movzx r8d, byte [r9 + rdx]
cmp eax, r8d
jne 0x14028ed5c
test eax, eax
jne 0x14028ed74
mov rdx, qword [rsp + 0x108]
mov dword [rdx + 0x2c], ebx
mov rsi, qword [r12 + 0xa8]
lea rbp, [0x1405267e0]
test dword [rdi + 0x28], 0x200
je 0x14028ec20
test r11, r11
je 0x14028ec20
mov r10, qword [rdi + 0x10]
test r10, r10
je 0x14028ec20
lea rax, str.excluded
mov r9, r11
mov r8, rax
sub r9, rax
nop word [rax + rax]
movzx ecx, byte [r8]
movzx eax, byte [r9 + r8]
cmp ecx, eax
jne 0x14028ed7c
test ecx, ecx
jne 0x14028ed8c
mov rax, qword [r10 + 0x40]
mov rsi, qword [rax + 0x28]
mov rax, qword [rsp + 0x108]
mov dword [rax + 0x2c], 2
test rsi, rsi
je 0x14028ecb5
mov rcx, r14
call fcn.1402f3070
movsx edi, word [rsi + 0x36]
inc r15d
mov rcx, qword [rsi + 0x60]
movzx r11d, al
mov r10, qword [rsi + 8]
mov qword [rsp + 0x68], rcx
mov dword [rsp + 0x34], r15d
test edi, edi
jle 0x14028ec8a
cmp byte [r10 + 0xe], r11b
jne 0x14028eda8
mov r8, qword [r10]
mov r9, r14
sub r9, r8
movzx ecx, byte [r8]
movzx eax, byte [r9 + r8]
cmp ecx, eax
jne 0x14028ed94
test ecx, ecx
jne 0x14028eda0
movsx eax, word [rsi + 0x34]
cmp ebx, eax
je 0x14028ee64
cmp ebx, edi
jl 0x14028ecab
mov rcx, r14
call fcn.1402dcc40
test eax, eax
je 0x14028ecab
test dword [rsi + 0x30], 0x200
mov rax, 0xffffffffffffffff
cmove ebx, eax
mov edx, ebx
cmp ebx, edi
jl 0x14028ee6f
mov rdi, qword [rsp + 0x100]
cmp r15d, 1
jne 0x14028ecf5
mov r15, qword [rsp + 0x40]
test r15, r15
je 0x14028ecf0
test byte [rdi + 0x28], 0x28
jne 0x14028ecf0
mov rcx, r14
call fcn.1402dcc40
test eax, eax
je 0x14028ecf0
mov rax, qword [r15 + 0x20]
test dword [rax + 0x30], 0x200
je 0x14028f060
mov r15d, dword [rsp + 0x34]
mov ebp, dword [rdi + 0x28]
xor ebx, ebx
mov r11, qword [rsp + 0xf0]
test bpl, bpl
jns 0x14028ee0f
test r11, r11
jne 0x14028ee0f
mov rsi, qword [rdi + 0x10]
mov r10d, ebx
mov edi, dword [rsi]
test edi, edi
jle 0x14028ee07
nop word [rax + rax]
movsxd rbx, r10d
mov rax, rbx
shl rax, 5
test byte [rax + rsi + 0x1c], 3
mov r11, qword [rax + rsi + 0x10]
jne 0x14028edf1
test r11, r11
jne 0x14028edbb
mov rax, r14
neg rax
sbb ecx, ecx
jmp 0x14028ede9
lea rbp, [0x1405267e0]
movzx ecx, byte [rax + rbp]
movzx eax, byte [r8 + rbp]
cmp ecx, eax
jne 0x14028ebc3
inc rdx
jmp 0x14028eb90
movzx edx, byte [rax + rbp]
movzx ecx, byte [rcx + rbp]
cmp ecx, edx
jne 0x14028ec20
inc r8
jmp 0x14028ebf0
movzx edx, byte [rax + rbp]
movzx ecx, byte [rcx + rbp]
cmp ecx, edx
jne 0x14028eda8
inc r8
jmp 0x14028ec65
inc ebx
add r10, 0x18
cmp ebx, edi
jl 0x14028ec52
jmp 0x14028ec8e
test r14, r14
je 0x14028edf1
mov r9, r14
lea r12, [0x1405267e0]
sub r9, r11
mov rdx, r11
movzx ecx, byte [rdx]
movzx r8d, byte [r9 + rdx]
cmp ecx, r8d
jne 0x14028ee3b
test ecx, ecx
jne 0x14028ee49
mov r12, qword [rsp + 0xe0]
test ecx, ecx
je 0x14028f081
inc r10d
cmp r10d, edi
jl 0x14028ed30
mov r11, qword [rsp + 0xf0]
xor ebx, ebx
mov rdi, qword [rsp + 0x100]
mov rdi, qword [rdi + 0x18]
inc dword [rsp + 0x70]
mov qword [rsp + 0x100], rdi
test rdi, rdi
je 0x14028f205
mov rsi, qword [rsp + 0x40]
mov ebp, dword [rsp + 0x30]
mov r10, qword [rsp + 0x68]
jmp 0x14028e3eb
movzx ecx, byte [rcx + r12]
movzx eax, byte [r8 + r12]
sub ecx, eax
jne 0x14028ede1
inc rdx
jmp 0x14028edd0
mov rdi, qword [rsp + 0x108]
cmp ebp, 1
je 0x14028f40d
jmp 0x14028f2b9
mov rax, 0xffffffffffffffff
mov ebx, eax
mov edx, eax
mov rdi, qword [rsp + 0x108]
xor r12d, r12d
mov ebp, 1
mov r15d, r12d
mov r11d, dword [rdi + 0x2c]
cmp r11d, 2
jne 0x14028ef3f
mov rax, qword [rsp + 0xe0]
cmp byte [rax + 0x124], r11b
jb 0x14028eeae
mov word [rdi + 0x30], dx
mov qword [rdi + 0x40], rsi
jmp 0x14028f415
test byte [rsi + 0x30], 0x20
je 0x14028ef1f
test dx, dx
js 0x14028ef1f
movsx eax, dx
mov r10d, r12d
movzx r8d, r12w
test eax, eax
jle 0x14028eefb
mov rdx, qword [rsi + 8]
mov r10d, eax
add rdx, 0x12
mov r9d, eax
nop word [rax + rax]
movzx eax, byte [rdx]
lea ecx, [r8 + 1]
and al, 0x20
lea rdx, [rdx + 0x18]
cmovne cx, r8w
movzx r8d, cx
sub r9, rbp
jne 0x14028eee0
movsxd rax, r10d
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 8]
test byte [rax + rcx*8 + 0x12], 0x20
je 0x14028ef1b
movzx edx, word [rsi + 0x38]
sub dx, r8w
add dx, r10w
jmp 0x14028ef1f
movzx edx, r8w
mov r14, qword [rsp + 0x100]
mov r13d, 0xb0
movsx ecx, dx
mov rax, qword [r14 + 0x10]
add ecx, dword [rax + 0x48]
mov dword [rdi + 0x2c], ecx
jmp 0x14028f423
mov r8, qword [rsp + 0xe0]
mov qword [rdi + 0x40], rsi
cmp byte [r8 + 0xd5], r12b
je 0x14028eff4
mov byte [rdi + 2], 0xa7
mov r13d, 0xb0
test byte [rsi + 0x30], 0x20
je 0x14028efcf
test dx, dx
js 0x14028efcf
movsx eax, dx
mov r10d, r12d
movzx r8d, r12w
test eax, eax
jle 0x14028efab
mov rdx, qword [rsi + 8]
mov r10d, eax
add rdx, 0x12
mov r9d, eax
nop dword [rax]
movzx eax, byte [rdx]
lea ecx, [r8 + 1]
and al, 0x20
lea rdx, [rdx + 0x18]
cmovne cx, r8w
movzx r8d, cx
sub r9, rbp
jne 0x14028ef90
movsxd rax, r10d
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 8]
test byte [rax + rcx*8 + 0x12], 0x20
je 0x14028efcb
movzx edx, word [rsi + 0x38]
sub dx, r8w
add dx, r10w
jmp 0x14028efcf
movzx edx, r8w
movsx ecx, word [rsi + 0x36]
mov r14, qword [rsp + 0x100]
inc ecx
imul ecx, r11d
movsx eax, dx
inc ecx
add ecx, dword [r14 + 0x10]
add ecx, eax
mov dword [rdi + 0x2c], ecx
jmp 0x14028f423
mov word [rdi + 0x30], dx
mov r13d, 0x4d
test ebx, ebx
jns 0x14028f00b
mov byte [rdi + 1], 0x44
jmp 0x14028f41b
test r11d, r11d
jne 0x14028f038
cmp ebx, 0x20
jl 0x14028f026
mov eax, 0xffffffff
or dword [r8 + 0xcc], eax
jmp 0x14028f41b
mov ecx, ebx
mov eax, ebp
shl eax, cl
or dword [r8 + 0xcc], eax
jmp 0x14028f41b
cmp ebx, 0x20
jl 0x14028f04e
mov eax, 0xffffffff
or dword [r8 + 0xd0], eax
jmp 0x14028f41b
mov ecx, ebx
mov eax, ebp
shl eax, cl
or dword [r8 + 0xd0], eax
jmp 0x14028f41b
mov rdi, qword [rsp + 0x108]
mov rax, 0xffffffffffffffff
mov ebp, 1
mov word [rdi + 0x30], ax
mov byte [rdi + 1], 0x44
jmp 0x14028f412
shl rbx, 5
mov rax, qword [rbx + rsi + 8]
test bpl, 1
jne 0x14028f0c1
test byte [rax + 4], 0x10
je 0x14028f0c1
mov r8, r11
lea rdx, str.misuse_of_aliased_aggregate__s
mov rcx, r12
call fcn.1402c4450
mov eax, 2
add rsp, 0x98
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
test dword [rax + 4], 0x8000
je 0x14028f0ee
bt ebp, 0xe
jae 0x14028f0e2
mov r14, qword [rsp + 0x100]
cmp r14, qword [rsp + 0x80]
je 0x14028f0f6
mov r8, r11
lea rdx, str.misuse_of_aliased_window_function__s
jmp 0x14028f0a0
mov r14, qword [rsp + 0x100]
movzx ecx, byte [rax]
cmp cl, 0xb0
jne 0x14028f102
movzx ecx, byte [rax + 2]
cmp cl, 0xb1
je 0x14028f110
cmp cl, 0x8a
jne 0x14028f12d
mov rax, qword [rax + 0x20]
mov rcx, qword [rax + 0x20]
cmp dword [rcx], 1
je 0x14028f12d
lea rdx, str.row_value_misused
mov rcx, r12
call fcn.1402c4450
jmp 0x14028f0a8
mov ecx, dword [rsp + 0x70]
mov r8d, r10d
mov rdi, qword [rsp + 0x108]
mov rdx, rsi
mov dword [rsp + 0x20], ecx
mov r9, rdi
mov rcx, r12
call fcn.14029fc90
cmp byte [r12 + 0x124], 2
jb 0x14028f178
mov rax, qword [r12 + 0x190]
test rax, rax
je 0x14028f178
cmp qword [rax], rdi
je 0x14028f1fa
mov rax, qword [rax + 0x18]
test rax, rax
jne 0x14028f166
xor r12d, r12d
mov r11, qword [rsp + 0xe0]
mov rax, qword [r11]
cmp qword [rax + 0x1f8], 0
je 0x14028f564
movzx ecx, byte [rdi]
cmp cl, 0xa7
je 0x14028f1a5
cmp cl, 0x4d
jne 0x14028f564
mov rdx, qword [rsp + 0x68]
mov r10, qword [r14 + 8]
test rdx, rdx
je 0x14028f564
mov rax, qword [rax + 0x20]
mov r9d, r12d
add rax, 0x18
cmp qword [rax], rdx
je 0x14028f1e5
nop word [rax + rax]
inc r9d
lea rax, [rax + 0x20]
cmp qword [rax], rdx
jne 0x14028f1d0
test r9d, r9d
js 0x14028f564
cmp cl, 0x4d
jne 0x14028f4d9
mov r12, qword [r11 + 0xa8]
jmp 0x14028f511
xor r12d, r12d
mov qword [rax], r12
jmp 0x14028f17b
mov rdi, qword [rsp + 0x108]
test r11, r11
jne 0x14028f2b0
mov ebx, dword [rdi + 4]
test bl, bl
jns 0x14028f289
mov rax, qword [rsp + 0x50]
cmp byte [rax + 0xc5], r11b
jne 0x14028f264
mov rdx, qword [rsp + 0x80]
mov rcx, qword [rax + 0x30]
test dword [rdx + 0x28], 0x10000
je 0x14028f25b
mov rax, rcx
and eax, 0x10000001
cmp rax, 1
jne 0x14028f255
bt rcx, 0x1e
jb 0x14028f264
shr rcx, 0x1d
jmp 0x14028f25f
shr rcx, 0x1e
test cl, 1
je 0x14028f289
mov r8, r14
lea rdx, str.double_quoted_string_literal:___w_
mov ecx, 0x1c
call fcn.1402415c0
xor ecx, ecx
mov byte [rdi], 0x75
mov qword [rdi + 0x40], rcx
lea eax, [rcx + 1]
jmp 0x14028f0ad
test ebx, 0x4000800
jne 0x14028f2b0
mov rcx, qword [rdi + 8]
call fcn.1402dce20
test eax, eax
je 0x14028f2b0
or ebx, eax
mov byte [rdi], 0xaa
mov dword [rdi + 4], ebx
mov eax, 1
jmp 0x14028f0ad
mov rsi, qword [rsp + 0x40]
mov ebp, dword [rsp + 0x30]
test r13, r13
je 0x14028f361
lea eax, [rbp - 1]
cmp dword [r13], eax
jne 0x14028f354
mov eax, dword [rdi + 4]
bt eax, 0x17
jae 0x14028f2e4
btr eax, 0x17
mov dword [rdi + 4], eax
xor r12d, r12d
jmp 0x14028f316
mov rdx, qword [rdi + 0x10]
mov rbx, qword [rsp + 0x50]
test rdx, rdx
je 0x14028f2fa
mov rcx, rbx
call fcn.1402c8e50
mov rdx, qword [rdi + 0x18]
xor r12d, r12d
mov qword [rdi + 0x10], r12
test rdx, rdx
je 0x14028f312
mov rcx, rbx
call fcn.1402c8e50
mov qword [rdi + 0x18], r12
movzx r9d, word [rdi + 0x30]
lea rdx, [rsp + 0x60]
mov rcx, qword [rsp + 0xe0]
mov r8, rsi
call fcn.14025bc50
mov r14, qword [rsp + 0x100]
lea rax, str.coalesce
mov qword [rdi + 8], rax
mov rax, qword [rsp + 0x60]
mov qword [rdi + 0x20], rax
mov byte [rdi], 0xac
jmp 0x14028f17b
mov rcx, qword [rsp + 0x50]
mov rdx, r13
call fcn.14025b200
mov r9, qword [rsp + 0xe8]
lea rax, str.no_such_column
mov r11, qword [rsp + 0xf0]
lea r8, str.ambiguous_column_name
mov rcx, qword [rsp + 0xe0]
test ebp, ebp
cmove r8, rax
test r9, r9
je 0x14028f3aa
mov qword [rsp + 0x28], r14
lea rdx, str._s:__s._s._s
mov qword [rsp + 0x20], r11
call fcn.1402c4450
jmp 0x14028f3d4
test r11, r11
je 0x14028f3c5
mov r9, r11
mov qword [rsp + 0x20], r14
lea rdx, str._s:__s._s
call fcn.1402c4450
jmp 0x14028f3d4
mov r9, r14
lea rdx, str._s:__s
call fcn.1402c4450
mov r8, qword [rsp + 0xe0]
mov rax, rdi
mov rdx, qword [r8]
test byte [rax + 4], 3
jne 0x14028f3ef
mov ecx, dword [rax + 0x34]
test ecx, ecx
jg 0x14028f3fa
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x14028f3e2
jmp 0x14028f3fd
mov dword [rdx + 0x54], ecx
mov rax, qword [rsp + 0x80]
mov byte [r8 + 0x1d], 1
inc dword [rax + 0x24]
mov r15, qword [rsp + 0x40]
xor r12d, r12d
mov r13d, 0xa7
mov r14, qword [rsp + 0x100]
test dword [rdi + 4], 0x810000
jne 0x14028f462
mov rdx, qword [rdi + 0x10]
mov rbx, qword [rsp + 0x50]
test rdx, rdx
je 0x14028f442
mov rcx, rbx
call fcn.1402c8e50
mov rdx, qword [rdi + 0x18]
mov qword [rdi + 0x10], r12
test rdx, rdx
je 0x14028f457
mov rcx, rbx
call fcn.1402c8e50
or dword [rdi + 4], 0x800000
mov qword [rdi + 0x18], r12
movsx rax, word [rdi + 0x30]
test ax, ax
js 0x14028f4c8
test r15, r15
je 0x14028f4c8
mov r8, qword [rdi + 0x40]
mov rdx, rax
test byte [r8 + 0x30], 0x60
je 0x14028f4af
lea rcx, [rax + rax*2]
mov rax, qword [r8 + 8]
test byte [rax + rcx*8 + 0x12], 0x60
je 0x14028f4af
movzx ecx, word [r8 + 0x36]
cmp cx, 0x40
jl 0x14028f4a2
mov rax, 0xffffffffffffffff
jmp 0x14028f4c4
mov eax, 1
shl rax, cl
dec rax
jmp 0x14028f4c4
cmp edx, 0x40
mov eax, 0x3f
cmovge edx, eax
mov eax, 1
mov ecx, edx
shl rax, cl
or qword [r15 + 0x50], rax
mov byte [rdi], r13b
cmp ebp, 1
jne 0x14028f0a8
jmp 0x14028f17b
movsxd rax, dword [r10]
test eax, eax
jle 0x14028f511
mov edx, dword [rdi + 0x2c]
mov r8, rax
lea rax, [r10 + 0x4c]
mov rcx, r12
nop dword [rax]
cmp edx, dword [rax]
je 0x14028f505
inc r12d
inc rcx
add rax, 0x68
cmp rcx, r8
jl 0x14028f4f0
jmp 0x14028f564
movsxd rax, r12d
imul rcx, rax, 0x68
mov r12, qword [rcx + r10 + 0x28]
movsx rax, word [rdi + 0x30]
test r12, r12
je 0x14028f564
test ax, ax
js 0x14028f52f
lea rcx, [rax + rax*2]
mov rax, qword [r12 + 8]
mov r8, qword [rax + rcx*8]
jmp 0x14028f550
movsx rax, word [r12 + 0x34]
test ax, ax
js 0x14028f549
lea rcx, [rax + rax*2]
mov rax, qword [r12 + 8]
mov r8, qword [rax + rcx*8]
jmp 0x14028f550
lea r8, str.ROWID
mov rdx, qword [r12]
mov rcx, r11
call fcn.1402b5ae0
cmp eax, 2
jne 0x14028f564
mov byte [rdi], 0x79
mov rax, qword [rsp + 0x80]
inc dword [rax + 0x20]
cmp rax, r14
je 0x14028f580
mov rax, qword [rax + 0x18]
inc dword [rax + 0x20]
cmp rax, r14
jne 0x14028f574
mov eax, 1
jmp 0x14028f0ad