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

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
mov rbp, rsp
sub rsp, 0x78
mov rbx, rcx
mov rax, r9
xor ecx, ecx
mov r13d, r8d
mov qword [rbp - 0x40], rcx
mov r12d, ecx
mov qword [rbp - 0x30], rcx
mov esi, ecx
mov edi, ecx
test rbx, rbx
je 0x14003f6e2
cmp word [rbx], cx
je 0x14003f6e2
test rax, rax
je 0x14003f6e2
call fcn.14004aba0
mov eax, r13d
mov rcx, rbx
shr eax, 9
not eax
and eax, 0x400
or eax, r13d
movzx edx, ax
call fcn.1400492d0
mov qword [rbp - 0x18], rax
test rax, rax
je 0x14003f6ed
mov qword [rsp + 0xb8], r14
lea rdx, [rbp - 0x30]
mov rcx, rax
mov qword [rsp + 0x70], r15
call fcn.1400492b0
cmp qword [rbp - 0x30], 0x20
jb 0x14003f686
mov ecx, 0x1b8
call fcn.1400a2ae4
mov qword [rbp - 0x40], rax
test rax, rax
jne 0x14003ef2a
lea edi, [rax + 8]
jmp 0x14003f68b
mov ecx, 0x1000
call fcn.1400a2ae4
mov qword [rbp - 0x28], rax
mov r12, rax
test rax, rax
jne 0x14003ef48
lea edi, [rax + 8]
jmp 0x14003f68b
mov rcx, qword [rbp - 0x40]
xor r15d, r15d
mov r14, qword [rbp - 0x30]
xor edx, edx
mov r8d, 0x1b8
mov qword [rbp - 0x38], r15
mov dword [rbp - 0x48], r15d
call fcn.1400b1140
mov rax, qword [rbp - 0x40]
lea rcx, [0x14004ab30]
lea rdx, [rbp - 0x48]
mov dword [rax + 0x178], 0x97130300
mov rax, qword [rbp - 0x40]
mov qword [rax + 0x68], rcx
mov rcx, qword [rbp - 0x18]
mov rax, qword [rbp - 0x40]
mov qword [rbp - 0x18], r15
mov qword [rax], rcx
mov rcx, qword [rbp - 0x40]
mov rcx, qword [rcx]
call fcn.140049290
mov eax, dword [rbp - 0x48]
mov rcx, qword [rbp - 0x40]
shr eax, 8
and eax, 1
or dword [rcx + 0x180], eax
mov eax, r13d
mov rcx, qword [rbp - 0x40]
shr eax, 0xf
and eax, 0x20
or dword [rcx + 0x180], eax
mov eax, r13d
mov rcx, qword [rbp - 0x40]
shr eax, 0xe
and eax, 0x80
or dword [rcx + 0x180], eax
mov eax, 0x8000000
mov r11, qword [rbp - 0x30]
cmp r14, rax
cmova r14, rax
mov qword [rbp - 0x20], r14
cmp r11, 0x1000
jae 0x14003f010
xor edx, edx
mov r8d, 0x1000
mov rcx, r12
call fcn.1400b1140
mov r11, qword [rbp - 0x30]
mov r10, qword [rbp - 0x40]
mov r15d, 0x200
mov rdx, qword [rbp - 0x38]
nop
cmp rdx, r14
jae 0x14003f385
mov ecx, 0x1000
mov rax, r11
sub rax, rdx
mov dword [rbp + 0x48], ecx
cmp rax, rcx
jae 0x14003f044
mov ecx, r11d
sub ecx, edx
mov dword [rbp + 0x48], ecx
mov r9d, ecx
lea rdx, [rbp - 0x38]
mov rcx, qword [r10]
mov r8, r12
call fcn.140049660
test al, al
je 0x14003f375
test esi, esi
jne 0x14003f19a
mov eax, dword [rbp + 0x48]
cmp eax, 0x10
jbe 0x14003f16e
mov esi, dword [r12]
mov edx, 0x2e
mov r15d, dword [r12 + 4]
mov rcx, rbx
mov r14d, dword [r12 + 8]
mov r12d, dword [r12 + 0xc]
call fcn.1400969a4
mov rbx, rax
test rax, rax
je 0x14003f119
lea rdx, [0x1400b3d68]
mov rcx, rax
call fcn.14009b63c
test eax, eax
je 0x14003f109
lea rdx, [0x1400b3d78]
mov rcx, rbx
call fcn.14009b63c
test eax, eax
je 0x14003f109
lea rdx, [0x1400b3d88]
mov rcx, rbx
call fcn.14009b63c
test eax, eax
je 0x14003f109
lea rdx, [0x1400b3d98]
mov rcx, rbx
call fcn.14009b63c
test eax, eax
je 0x14003f0f9
lea rdx, [0x1400b3da8]
mov rcx, rbx
call fcn.14009b63c
test eax, eax
jne 0x14003f119
mov esi, 3
mov r15d, 0x200
jmp 0x14003f19a
mov esi, 5
mov r15d, 0x200
jmp 0x14003f19a
cmp esi, 0x46464952
jne 0x14003f141
cmp r14d, 0x20495641
jne 0x14003f161
cmp r12d, 0x5453494c
mov r12, qword [rbp - 0x28]
jne 0x14003f165
mov edi, 0x2710
jmp 0x14003f68b
cmp esi, 0x57334d48
jne 0x14003f161
test r15d, r15d
mov r15d, 0x200
jne 0x14003f15b
mov esi, 4
jmp 0x14003f19a
mov r12, qword [rbp - 0x28]
jmp 0x14003f16b
mov r12, qword [rbp - 0x28]
mov r15d, 0x200
mov eax, dword [rbp + 0x48]
cmp eax, r15d
jbe 0x14003f195
cmp byte [r12], 0x4d
jne 0x14003f195
cmp byte [r12 + 1], 0x5a
jne 0x14003f195
mov eax, dword [r12 + 0x3c]
mov esi, 4
dec eax
cmp eax, 0xfffe
jbe 0x14003f19a
mov esi, 1
mov r10, qword [rbp - 0x40]
xor r14d, r14d
mov r12, qword [rbp - 0x28]
cmp dword [rbp + 0x48], r14d
ja 0x14003f1c0
mov r11, qword [rbp - 0x30]
mov rbx, qword [rbp + 0x38]
mov r14, qword [rbp - 0x20]
jmp 0x14003f01a
lea rdx, [r10 + 0x80]
mov ecx, r14d
add rcx, r12
lea rdx, [rdx + 0x80]
movups xmm0, xmmword [rcx]
movups xmmword [rdx - 0x80], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rdx - 0x70], xmm1
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rdx - 0x60], xmm0
movups xmm1, xmmword [rcx + 0x30]
movups xmmword [rdx - 0x50], xmm1
movups xmm0, xmmword [rcx + 0x40]
movups xmmword [rdx - 0x40], xmm0
movups xmm1, xmmword [rcx + 0x50]
movups xmmword [rdx - 0x30], xmm1
movups xmm0, xmmword [rcx + 0x60]
movups xmmword [rdx - 0x20], xmm0
movups xmm1, xmmword [rcx + 0x70]
movups xmmword [rdx - 0x10], xmm1
movups xmm0, xmmword [rcx + 0x80]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rcx + 0x90]
movups xmmword [rdx + 0x10], xmm1
movups xmm0, xmmword [rcx + 0xa0]
movups xmmword [rdx + 0x20], xmm0
movups xmm1, xmmword [rcx + 0xb0]
movups xmmword [rdx + 0x30], xmm1
movups xmm0, xmmword [rcx + 0xc0]
movups xmmword [rdx + 0x40], xmm0
mov r10, qword [rbp - 0x40]
mov r11, qword [rbp - 0x30]
mov rdx, qword [rbp - 0x38]
mov ebx, dword [r10 + 0x80]
cmp esi, 4
je 0x14003f2a0
bt r13d, 0x13
jb 0x14003f2a0
cmp qword [r10 + 0x40], 0
jne 0x14003f2a0
cmp ebx, 0x1b51504d
jne 0x14003f2a0
mov eax, dword [r10 + 0x84]
cmp dword [r10 + 0x8c], eax
ja 0x14003f2a0
mov ecx, dword [r10 + 0x88]
cmp eax, ecx
ja 0x14003f2a0
mov eax, ecx
lea rcx, [rdx + 0x20]
add rcx, rax
cmp rcx, r11
jb 0x14003f319
cmp ebx, dword [0x1400d9460]
jne 0x14003f2dd
cmp dword [r10 + 0x84], 0x20
jb 0x14003f2dd
mov r9d, r13d
mov dword [rsp + 0x20], esi
mov r8, r11
mov rcx, r10
call fcn.140043cb0
mov r10, qword [rbp - 0x40]
mov edi, eax
mov rdx, qword [rbp - 0x38]
cmp eax, 0x2719
jne 0x14003f385
mov r11, qword [rbp - 0x30]
cmp esi, 1
jne 0x14003f2f1
bt r13d, 0x13
jb 0x14003f2f1
cmp ebx, 0x1a4b504d
je 0x14003f35b
bt r13d, 0x12
jb 0x14003f36b
add rdx, r15
add r14d, r15d
mov qword [rbp - 0x38], rdx
cmp r14d, dword [rbp + 0x48]
jb 0x14003f1c0
mov rbx, qword [rbp + 0x38]
mov r14, qword [rbp - 0x20]
jmp 0x14003f020
mov rbx, qword [rbp + 0x38]
mov r14, qword [rbp - 0x20]
mov qword [r10 + 8], rdx
mov rax, qword [rbp - 0x40]
lea rcx, [rax + 0x70]
mov qword [rax + 0x40], rcx
movups xmm0, xmmword [r10 + 0x80]
movups xmmword [rcx], xmm0
mov rdx, qword [rbp - 0x38]
mov r10, qword [rbp - 0x40]
mov r11, qword [rbp - 0x30]
mov rax, qword [r10 + 0x40]
mov ecx, dword [rax + 8]
add rdx, rcx
mov qword [rbp - 0x38], rdx
jmp 0x14003f020
mov r8d, r13d
mov rdx, r11
mov rcx, r10
call fcn.140052f20
jmp 0x14003f37b
mov edi, 0x32
jmp 0x14003f68b
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rdx, qword [rbp - 0x38]
mov edi, eax
mov r10, qword [rbp - 0x40]
test edi, edi
jne 0x14003f68b
cmp qword [r10 + 0x40], 0
jne 0x14003f39c
mov qword [r10 + 8], rdx
mov r10, qword [rbp - 0x40]
lea rax, [r10 + 0x80]
mov qword [r10 + 0x48], rax
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp - 0x38]
mov qword [rcx + 0x10], rax
mov rax, qword [rbp - 0x30]
mov rcx, qword [rbp - 0x40]
mov qword [rcx + 0x18], rax
mov rax, qword [rbp - 0x30]
cmp qword [rbp - 0x38], rax
jae 0x14003f686
mov rax, qword [rbp - 0x40]
mov rcx, qword [rax + 0x48]
cmp word [rcx + 0xe], 0
je 0x14003f686
bt r13d, 0x13
jae 0x14003f413
xor edx, edx
mov word [rcx + 0xc], dx
mov rax, qword [rbp - 0x40]
mov rcx, qword [rax + 0x48]
mov dword [rcx + 4], 0x20
mov rax, qword [rbp - 0x40]
or dword [rax + 0x180], 1
mov rax, qword [rbp - 0x40]
mov qword [rax + 0x40], rdx
mov rax, qword [rbp - 0x40]
mov rax, qword [rax + 0x48]
and dword [rax + 0x1c], 0xfffffff
mov rax, qword [rbp - 0x40]
mov rcx, qword [rax + 0x48]
and dword [rcx + 0x18], 0xfffffff
test r13d, 0x30000
je 0x14003f441
mov rax, qword [rbp - 0x40]
or dword [rax + 0x180], 1
bt r13d, 0x16
jae 0x14003f456
mov rax, qword [rbp - 0x40]
or dword [rax + 0x180], 0x2000
mov rcx, qword [rbp - 0x40]
mov rax, qword [rcx + 0x48]
cmp dword [rax], 0x1a51504d
jne 0x14003f495
cmp dword [rax + 4], 0x20
jne 0x14003f495
mov edx, dword [rax + 8]
cmp edx, 0x28fb3
je 0x14003f487
cmp edx, 0x351853d
je 0x14003f487
cmp edx, 0xaec8960
jne 0x14003f495
or dword [rcx + 0x180], 0x100
mov rcx, qword [rbp - 0x40]
call fcn.140044da0
mov rcx, qword [rbp - 0x40]
mov qword [rcx + 0x20], rax
sub esi, 3
je 0x14003f4ca
cmp esi, 1
jne 0x14003f4e3
mov rax, qword [rbp - 0x40]
mov dword [rax + 0x178], 0x96030300
mov rax, qword [rbp - 0x40]
or dword [rax + 0x180], 0x400
jmp 0x14003f4e3
mov rax, qword [rbp - 0x40]
mov dword [rax + 0x178], 0x80030300
mov rax, qword [rbp - 0x40]
or dword [rax + 0x180], r15d
mov rdx, qword [rbp - 0x40]
mov rax, qword [rdx + 0x48]
movzx ecx, byte [rax + 0xe]
shl r15d, cl
mov dword [rdx + 0x164], r15d
mov r8, qword [rbp - 0x40]
mov rdi, qword [rbp - 0x30]
mov rsi, r8
mov rbx, qword [r8 + 0x48]
mov rcx, qword [rbx + 0x3c]
test rcx, rcx
je 0x14003f521
mov rax, qword [r8 + 0x10]
add rcx, rax
cmp rcx, rdi
ja 0x14003f686
mov rcx, qword [rbx + 0x34]
test rcx, rcx
je 0x14003f53a
mov rax, qword [r8 + 0x10]
add rcx, rax
cmp rcx, rdi
ja 0x14003f686
movzx eax, word [rbx + 0x28]
test ax, ax
jne 0x14003f549
cmp dword [rbx + 0x10], 0
je 0x14003f56b
movzx edx, ax
mov rcx, r8
mov eax, dword [rbx + 0x10]
shl rdx, 0x20
or rdx, rax
call fcn.140044840
cmp rax, rdi
ja 0x14003f686
mov r8, qword [rbp - 0x40]
movzx eax, word [rbx + 0x2a]
test ax, ax
jne 0x14003f57a
cmp dword [rbx + 0x14], 0
je 0x14003f59c
movzx edx, ax
mov rcx, rsi
mov eax, dword [rbx + 0x14]
shl rdx, 0x20
or rdx, rax
call fcn.140044840
cmp rax, rdi
ja 0x14003f686
mov r8, qword [rbp - 0x40]
mov rcx, r8
call fcn.140045130
mov edi, eax
test eax, eax
jne 0x14003f68b
mov rcx, qword [rbp - 0x40]
call fcn.1400435e0
mov edi, eax
test eax, eax
jne 0x14003f68b
bt r13d, 0x10
jb 0x14003f5fe
mov rcx, qword [rbp - 0x40]
lea rdx, str._listfile_
xor r9d, r9d
xor r8d, r8d
call fcn.140044ac0
mov rbx, rax
test rax, rax
je 0x14003f5fe
mov rcx, qword [rbp - 0x40]
xor edx, edx
call fcn.1400422d0
mov rax, qword [rbp - 0x40]
mov ecx, dword [rbx + 0x20]
mov dword [rax + 0x168], ecx
bt r13d, 0x11
jb 0x14003f642
mov rcx, qword [rbp - 0x40]
test byte [rcx + 0x180], 0x10
jne 0x14003f646
xor r9d, r9d
lea rdx, [0x1400c60c8]
xor r8d, r8d
call fcn.140044ac0
mov rbx, rax
test rax, rax
je 0x14003f642
mov rcx, qword [rbp - 0x40]
call fcn.140052c00
mov rax, qword [rbp - 0x40]
mov ecx, dword [rbx + 0x20]
mov dword [rax + 0x16c], ecx
mov rcx, qword [rbp - 0x40]
xor r9d, r9d
lea rdx, [0x1400c60d8]
xor r8d, r8d
call fcn.140044ac0
test rax, rax
je 0x14003f66a
mov ecx, dword [rax + 0x20]
mov rax, qword [rbp - 0x40]
mov dword [rax + 0x170], ecx
mov rdx, qword [rbp - 0x40]
mov eax, dword [rdx + 0x180]
mov ecx, eax
shr ecx, 2
and ecx, 1
or ecx, eax
mov dword [rdx + 0x180], ecx
jmp 0x14003f6ab
mov edi, 0xb
mov rcx, qword [rbp - 0x18]
call fcn.140049040
lea rcx, [rbp - 0x40]
call fcn.14004a610
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor eax, eax
mov qword [rbp - 0x40], rax
mov r15, qword [rsp + 0x70]
mov r14, qword [rsp + 0xb8]
test r12, r12
je 0x14003f6c5
mov rcx, r12
call fcn.1400a2ad0
mov rax, qword [rbp - 0x40]
test edi, edi
mov rcx, qword [rbp + 0x50]
mov qword [rcx], rax
sete al
add rsp, 0x78
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov ecx, 0x57
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor al, al
add rsp, 0x78
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret