Function at 0x140041780
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xc0]
sub rsp, 0x1c0
mov rax, qword [0x140129200]
xor rax, rsp
mov qword [rbp + 0xb8], rax
mov qword [rsp + 0x40], rdx
mov rbx, rcx
xor edx, edx
mov r8d, pe_nt_image_headers64
lea rcx, [rbp - 0x70]
call sub.VCRUNTIME140.dll_memset
cmp qword [rbx + 0x18], 7
jbe 0x1400417db
mov rbx, qword [rbx]
mov rdx, rbx
lea rcx, [rbp - 0x70]
call fcn.140044800
mov rax, qword [rbp - 0x70]
movsxd rcx, dword [rax + 4]
lea r12, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx - 0x70], r12
mov rax, qword [rbp - 0x70]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx - 0x74], edx
xor r15d, r15d
cmp qword [rbp + 0x20], r15
je 0x140041c30
mov rax, qword [rbp - 0x70]
movsxd rcx, dword [rax + 4]
cmp dword [rbp + rcx - 0x60], r15d
jne 0x140041c30
lea rdx, [rbp + 0xa0]
lea rcx, [rbp - 0x70]
call fcn.140043c00
mov rcx, qword [rbp + 0xa0]
add rcx, qword [rbp + 0xa8]
cmp rcx, 0x400
jle 0x140041c30
call fcn.1400d874c
mov r14, rax
lea rcx, [rbp - 0x70]
call fcn.140043ce0
mov r8, qword [rbp + 0xa8]
add r8, qword [rbp + 0xa0]
mov rdx, r14
lea rcx, [rbp - 0x70]
call fcn.140043ed0
lea rcx, [rbp - 0x60]
call fcn.1400446c0
test rax, rax
jne 0x1400418c0
mov rax, qword [rbp - 0x70]
movsxd rcx, dword [rax + 4]
mov eax, 6
mov edx, 2
cmp qword [rbp + rcx - 0x28], r15
cmovne eax, edx
or eax, dword [rbp + rcx - 0x60]
and eax, 0x17
mov dword [rbp + rcx - 0x60], eax
and eax, dword [rbp + rcx - 0x5c]
jne 0x140041ccb
mov eax, 0x5a4d
cmp word [r14], ax
jne 0x140041c28
movsxd r9, dword [r14 + 0x3c]
add r9, r14
cmp dword [r9], 0x4550
jne 0x140041c28
movzx eax, word [r9 + 4]
mov ecx, 0x14c
cmp ax, cx
jne 0x140041b1a
movzx eax, word [r9 + 0x14]
test ax, ax
je 0x140041c28
cmp dword [r9 + 0x74], r15d
jbe 0x140041c28
mov r10d, dword [r9 + 0x78]
test r10d, r10d
je 0x140041c28
lea rdi, [r9 + rax]
mov r11d, r15d
mov r8, r15
movzx ebx, word [r9 + 6]
test rbx, rbx
je 0x140041955
lea rdx, [rdi + 0x24]
mov ecx, dword [rdx]
cmp r10d, ecx
jb 0x140041946
add ecx, dword [rdx + 4]
cmp r10d, ecx
jb 0x140041b93
inc r11d
inc r8
add rdx, 0x28
cmp r8, rbx
jl 0x140041933
mov eax, r15d
mov edi, eax
add rdi, r14
test rdi, rdi
je 0x140041c28
mov r11d, dword [rdi + 0x20]
movzx esi, word [r9 + 0x14]
add rsi, r9
mov r10d, r15d
mov r8, r15
movzx ebx, word [r9 + 6]
test rbx, rbx
je 0x1400419a8
lea rdx, [rsi + 0x24]
mov ecx, dword [rdx]
cmp r11d, ecx
jb 0x140041999
add ecx, dword [rdx + 4]
cmp r11d, ecx
jb 0x140041baa
inc r10d
inc r8
add rdx, 0x28
cmp r8, rbx
jl 0x140041986
mov qword [rsp + 0x38], r14
mov r11d, dword [rdi + 0x24]
mov r10d, r15d
mov r8, r15
test rbx, rbx
je 0x1400419e2
lea rdx, [rsi + 0x24]
mov ecx, dword [rdx]
cmp r11d, ecx
jb 0x1400419d3
add ecx, dword [rdx + 4]
cmp r11d, ecx
jb 0x140041bd3
inc r10d
inc r8
add rdx, 0x28
cmp r8, rbx
jl 0x1400419c0
mov eax, r15d
add rax, r14
mov qword [rsp + 0x48], rax
mov r11d, dword [rdi + 0x1c]
movzx esi, word [r9 + 0x14]
add rsi, r9
mov r10d, r15d
mov r8, r15
movzx ebx, word [r9 + 6]
test rbx, rbx
je 0x140041a32
lea rdx, [rsi + 0x24]
nop dword [rax]
mov ecx, dword [rdx]
cmp r11d, ecx
jb 0x140041a23
add ecx, dword [rdx + 4]
cmp r11d, ecx
jb 0x140041bea
inc r10d
inc r8
add rdx, 0x28
cmp r8, rbx
jl 0x140041a10
mov eax, r15d
mov r10d, eax
add r10, r14
mov qword [rsp + 0x50], r10
mov esi, r15d
mov eax, dword [rdi + 0x18]
mov dword [rsp + 0x30], eax
test eax, eax
je 0x140041b0d
movzx r13d, word [r9 + 0x14]
add r13, r9
movzx ebx, word [r9 + 6]
mov r11, qword [rsp + 0x40]
mov r12, qword [r11 + 0x10]
nop dword [rax + rax]
mov eax, esi
mov rcx, qword [rsp + 0x38]
mov r9d, dword [rcx + rax*4]
mov r8, r15
test rbx, rbx
je 0x140041aa6
lea rdx, [r13 + 0x24]
mov ecx, dword [rdx]
cmp r9d, ecx
jb 0x140041a9a
add ecx, dword [rdx + 4]
cmp r9d, ecx
jb 0x140041c01
inc r8
add rdx, 0x28
cmp r8, rbx
jl 0x140041a87
mov ecx, r15d
mov edx, ecx
add rdx, r14
mov eax, esi
mov rcx, qword [rsp + 0x48]
movsx rcx, word [rcx + rax*2]
mov edi, dword [r10 + rcx*4]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rdx + rax], r15b
jne 0x140041ac5
mov rcx, r11
cmp qword [r11 + 0x18], 0xf
jbe 0x140041adb
mov rcx, qword [r11]
cmp r12, rax
jne 0x140041afa
mov r8, r12
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140041c17
mov r10, qword [rsp + 0x50]
mov r11, qword [rsp + 0x40]
inc esi
cmp esi, dword [rsp + 0x30]
jb 0x140041a70
lea r12, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov rcx, r14
call fcn.1400d8070
jmp 0x140041c36
mov ecx, 0x8664
cmp ax, cx
jne 0x140041c28
movzx eax, word [r9 + 0x14]
test ax, ax
je 0x140041c28
cmp dword [r9 + 0x84], r15d
jbe 0x140041c28
mov r10d, dword [r9 + 0x88]
test r10d, r10d
je 0x140041c28
lea rdi, [r9 + rax]
mov r11d, r15d
mov r8, r15
movzx ebx, word [r9 + 6]
test rbx, rbx
je 0x140041955
lea rdx, [rdi + 0x24]
nop
mov ecx, dword [rdx]
cmp r10d, ecx
jb 0x140041b7f
add ecx, dword [rdx + 4]
cmp r10d, ecx
jb 0x140041b93
inc r11d
inc r8
add rdx, 0x28
cmp r8, rbx
jl 0x140041b70
jmp 0x140041955
movsxd rax, r11d
lea rcx, [rax + rax*4]
mov eax, dword [rdi + rcx*8 + 0x2c]
sub eax, dword [rdi + rcx*8 + 0x24]
add eax, r10d
jmp 0x140041958
movsxd rax, r10d
lea rcx, [rax + rax*4]
mov eax, dword [rsi + rcx*8 + 0x2c]
sub eax, dword [rsi + rcx*8 + 0x24]
add eax, r11d
add rax, r14
mov qword [rsp + 0x38], rax
mov r11d, dword [rdi + 0x24]
mov r10d, r15d
mov r8, r15
jmp 0x1400419bc
movsxd rax, r10d
lea rcx, [rax + rax*4]
mov eax, dword [rsi + rcx*8 + 0x2c]
sub eax, dword [rsi + rcx*8 + 0x24]
add eax, r11d
jmp 0x1400419e5
movsxd rax, r10d
lea rcx, [rax + rax*4]
mov eax, dword [rsi + rcx*8 + 0x2c]
sub eax, dword [rsi + rcx*8 + 0x24]
add eax, r11d
jmp 0x140041a35
lea rax, [r8 + r8*4]
mov ecx, dword [r13 + rax*8 + 0x2c]
sub ecx, dword [r13 + rax*8 + 0x24]
add ecx, r9d
jmp 0x140041aa9
mov rcx, r14
call fcn.1400d8070
lea r12, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
jmp 0x140041c33
mov rcx, r14
call fcn.1400d8070
mov rdi, r15
mov r15, rdi
mov rax, qword [rbp - 0x70]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx - 0x70], r12
mov rax, qword [rbp - 0x70]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx - 0x74], edx
lea rcx, [rbp - 0x60]
call fcn.140043960
mov rax, qword [rbp - 0x70]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx - 0x70], rax
mov rcx, qword [rbp - 0x70]
movsxd rdx, dword [rcx + 4]
lea r8d, [rdx - 0x18]
mov dword [rbp + rdx - 0x74], r8d
lea rax, vtable.std::ios_base.0
mov qword [rbp + 0x40], rax
lea rcx, [rbp + 0x40]
call fcn.1400d4b2c
nop
mov rax, r15
mov rcx, qword [rbp + 0xb8]
xor rcx, rsp
call fcn.1400d7f80
lea r11, [rsp + 0x1c0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
test al, 4
je 0x140041cd8
lea rbx, str.ios_base::badbit_set
jmp 0x140041cec
test dl, al
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rsp + 0x50]
call fcn.140040d70
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x60]
call fcn.140041500
lea rdx, [0x140124e20]
lea rcx, [rsp + 0x60]
call sub.VCRUNTIME140.dll__CxxThrowException
int3