Function at 0x14000ed40
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r12
push r13
push r15
lea rbp, [rsp - 0x2f0]
sub rsp, 0x3f0
mov r12, rdx
mov r15d, r8d
mov rdi, rcx
xor esi, esi
mov qword [rsp + 0x30], rsi
mov ebx, 1
mov dword [rsp + 0x28], 0x8000080
xor r9d, r9d
mov r8d, ebx
mov dword [rsp + 0x20], 3
mov edx, 0x80000000
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov r13, rax
cmp rax, 0xffffffffffffffff
jne 0x14000edab
lea eax, [rsi + 8]
jmp 0x14000f1c2
lea r9, [rbp + 0x338]
mov qword [rsp + 0x420], r14
mov r8d, 0x38e
mov qword [rsp + 0x20], rsi
lea rdx, [rsp + 0x60]
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x14000f1aa
cmp dword [rbp + 0x338], 0x38e
jb 0x14000f1aa
xor r14b, r14b
cmp dword [rsp + 0x60], 0x10000
jb 0x14000ee02
mov eax, dword [rsp + 0x64]
movzx r14d, bl
jmp 0x14000ee08
mov eax, dword [rbp + 0xaa]
cmp eax, r15d
jne 0x14000f1af
mov r8d, dword [rbp + 0x2c6]
test r14b, r14b
cmovne r8d, dword [rbp + 0x180]
test r8d, r8d
jne 0x14000ee2c
mov ebx, esi
jmp 0x14000eea1
cmp qword [rdi + 8], rsi
je 0x14000eea1
test r14b, r14b
lea rax, [rbp + 0x2e2]
lea r9, [rbp + 0x19c]
cmove r9, rax
lea rdx, [rbp + 0x18c]
lea rax, [rbp + 0x2d2]
cmove rdx, rax
nop dword [rax]
cmp ebx, 0x1f
jae 0x14000ee9b
mov eax, ebx
mov rcx, qword [rdi + rax*8]
cmp dword [rcx + 0x18], r8d
jne 0x14000ee90
mov eax, dword [r9]
cmp dword [rcx + 0x1c], eax
jne 0x14000ee90
mov eax, dword [rdx]
cmp dword [rcx + 0x20], eax
jne 0x14000ee90
mov eax, dword [rdx + 4]
cmp dword [rcx + 0x24], eax
jne 0x14000ee90
mov eax, dword [rdx + 8]
cmp dword [rcx + 0x28], eax
je 0x14000ee98
inc ebx
cmp qword [rdi + rbx*8], rsi
jne 0x14000ee60
cmp ebx, 0x1f
je 0x14000f1aa
mov eax, ebx
cmp qword [rdi + rax*8], rsi
lea rbx, [rdi + rax*8]
jne 0x14000ef37
mov ecx, 0x30
call fcn.140012d68
mov rcx, rax
test rax, rax
je 0x14000eecf
mov qword [rax], rsi
mov qword [rax + 8], rsi
mov dword [rax + 0x10], esi
jmp 0x14000eed2
mov rcx, rsi
mov qword [rbx], rcx
test rcx, rcx
jne 0x14000eee4
mov esi, reloc.ODBC32.dll_SQLExecute
jmp 0x14000f1af
mov eax, dword [rbp + 0x2c6]
test r14b, r14b
cmovne eax, dword [rbp + 0x180]
mov dword [rcx + 0x18], eax
mov eax, dword [rbp + 0x2e2]
cmovne eax, dword [rbp + 0x19c]
mov dword [rcx + 0x1c], eax
mov eax, dword [rbp + 0x2d2]
cmovne eax, dword [rbp + 0x18c]
mov dword [rcx + 0x20], eax
mov eax, dword [rbp + 0x2d6]
cmovne eax, dword [rbp + 0x190]
mov dword [rcx + 0x24], eax
mov eax, dword [rbp + 0x2da]
cmovne eax, dword [rbp + 0x194]
mov dword [rcx + 0x28], eax
mov ecx, 0xc0
call fcn.140012d68
mov r9, rax
test rax, rax
je 0x14000eeda
mov qword [rax], rsi
mov qword [rax + 8], rsi
movups xmm0, xmmword [r12]
movups xmmword [rax + 0x10], xmm0
movups xmm1, xmmword [r12 + 0x10]
movups xmmword [rax + 0x20], xmm1
movups xmm0, xmmword [r12 + 0x20]
movups xmmword [rax + 0x30], xmm0
movups xmm1, xmmword [r12 + 0x30]
movups xmmword [rax + 0x40], xmm1
movups xmm0, xmmword [r12 + 0x40]
movups xmmword [rax + 0x50], xmm0
movups xmm1, xmmword [r12 + 0x50]
movups xmmword [rax + 0x60], xmm1
movups xmm0, xmmword [r12 + 0x60]
movups xmmword [rax + 0x70], xmm0
movups xmm1, xmmword [r12 + 0x70]
mov byte [rax + 0xbe], r14b
movups xmmword [rax + 0x80], xmm1
test r14b, r14b
je 0x14000efdc
movsd xmm0, qword [rbp + 0x1b0]
movsd qword [rax + 0x90], xmm0
mov eax, dword [rbp + 0x1b8]
mov dword [r9 + 0x98], eax
movzx eax, word [rbp + 0x1bc]
mov word [r9 + 0x9c], ax
jmp 0x14000f021
movsd xmm0, qword [rbp + 0x98]
movsd qword [rax + 0x90], xmm0
mov eax, dword [rbp + 0xa0]
mov dword [r9 + 0x98], eax
movzx eax, word [rbp + 0xa4]
mov word [r9 + 0x9c], ax
movups xmm0, xmmword [rsp + 0x78]
movups xmmword [r9 + 0x9e], xmm0
movups xmm1, xmmword [rbp - 0x78]
movups xmmword [r9 + 0xae], xmm1
mov r11, qword [rbx]
mov rax, qword [r11]
test rax, rax
je 0x14000f11c
lea rcx, [rax + 0x10]
mov r10, r12
sub r10, rcx
nop word [rax + rax]
movzx r8d, byte [rcx]
movzx edx, byte [rcx + r10]
sub r8d, edx
jne 0x14000f055
inc rcx
test edx, edx
jne 0x14000f040
test r8d, r8d
je 0x14000f182
movsd xmm0, qword [rax + 0x90]
mov ebx, dword [rax + 0x98]
mov edi, dword [r9 + 0x98]
movzx r14d, word [r9 + 0x9c]
movsd qword [rsp + 0x50], xmm0
movsd xmm0, qword [r9 + 0x90]
movsd qword [rsp + 0x40], xmm0
movzx ecx, word [rsp + 0x40]
mov dword [rsp + 0x58], ebx
mov dword [rsp + 0x48], edi
cmp cx, word [rsp + 0x50]
ja 0x14000f110
jne 0x14000f136
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x50]
mov r8, rcx
mov r10, rdx
shr r8, 0x10
shr r10, 0x10
cmp r8w, r10w
ja 0x14000f110
jne 0x14000f136
mov r8, rcx
mov r10, rdx
shr r8, 0x20
shr r10, 0x20
cmp r8w, r10w
ja 0x14000f110
jne 0x14000f136
shr rcx, 0x30
shr rdx, 0x30
cmp cx, dx
ja 0x14000f110
jne 0x14000f136
movzx ecx, di
cmp cx, bx
ja 0x14000f110
jne 0x14000f136
shr edi, 0x10
shr ebx, 0x10
cmp di, bx
ja 0x14000f110
jne 0x14000f136
cmp r14w, word [rax + 0x9c]
jbe 0x14000f136
mov rax, qword [rax]
test rax, rax
jne 0x14000f030
cmp qword [r11 + 8], rsi
jne 0x14000f191
mov qword [r11], r9
mov qword [r11 + 8], r9
mov qword [r9], rsi
mov qword [r9 + 8], rsi
inc dword [r11 + 0x10]
jmp 0x14000f1af
mov rcx, qword [r11]
cmp rcx, rax
jne 0x14000f16a
test rcx, rcx
jne 0x14000f157
mov qword [r11], r9
mov qword [r11 + 8], r9
mov qword [r9], rsi
mov qword [r9 + 8], rsi
inc dword [r11 + 0x10]
jmp 0x14000f1af
mov qword [r9], rcx
mov rax, qword [r11]
mov qword [rax + 8], r9
inc dword [r11 + 0x10]
mov qword [r11], r9
jmp 0x14000f1af
mov rcx, qword [rax + 8]
mov qword [rcx], r9
mov qword [r9], rax
mov qword [rax + 8], r9
mov qword [r9 + 8], rcx
inc dword [r11 + 0x10]
jmp 0x14000f1af
mov edx, 0xc0
mov rcx, r9
call fcn.140012da4
jmp 0x14000f1af
mov rax, qword [r11 + 8]
mov qword [r9 + 8], rax
mov rax, qword [r11 + 8]
mov qword [rax], r9
inc dword [r11 + 0x10]
mov qword [r11 + 8], r9
jmp 0x14000f1af
mov esi, 8
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r14, qword [rsp + 0x420]
mov eax, esi
lea r11, [rsp + 0x3f0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r13
pop r12
pop rdi
pop rbp
ret