Function at 0x18008f9d0
Capabilities:
Load assembly via iassembly
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xb0
mov rax, qword [0x1800e5c38]
xor rax, rsp
mov qword [rsp + 0xa0], rax
mov eax, dword [rsp + 0x118]
mov r10, r9
mov rsi, qword [rsp + 0x110]
mov r15, rdx
mov qword [rsp + 0x50], r9
xor ebx, ebx
mov r9, qword [rsp + 0x128]
mov rbp, rcx
lea edx, [rax - 0x11]
mov qword [rsp + 0x58], r9
mov rdi, qword [rsp + 0x58]
mov r13d, eax
mov r14, qword [rsp + 0x58]
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x68], rsi
mov dword [rsp + 0x38], edx
cmp eax, edx
jbe 0x18008fff9
mov ecx, dword [rsp + 0x48]
lea r12d, [rax - 0xb4]
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x40], ecx
lea r11, [0x1800b7c80]
cmp r12d, 0x23
ja case.0x18008fa88.2
lea rcx, [0x180000000]
mov ecx, dword [rcx + r12*4 + 0x90520]
lea rax, [0x180000000]
add rcx, rax
jmp rcx
mov rax, qword [r10]
cmp dword [rax], 0x7f2bb70f
je case.0x18008fa88.2
mov ecx, 0x19
nop word [rax + rax]
mov eax, ecx
sub eax, 0x18
je 0x18009042e
cmp eax, 1
jne 0x18008fab3
mov rdi, rbx
dec ecx
cmp ecx, 0x17
ja 0x18008faa0
jmp case.0x18008fa88.2
mov r11d, ebx
mov dword [rsp + 0x30], ebx
mov dword [rsp + 0x40], ebx
jmp 0x18008faee
mov edx, 0x150
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_calloc]
mov r14, rax
test rax, rax
je 0x18008ff50
mov edx, dword [rsp + 0x38]
mov r11d, dword [rsp + 0x30]
mov r10, qword [rsp + 0x50]
dec r13d
mov rsi, qword [rsp + 0x68]
dec r12d
cmp r13d, edx
jbe 0x18009000a
mov r8, qword [rsp + 0x60]
mov r9, qword [rsp + 0x58]
jmp 0x18008fa62
test byte [rsi], 1
je 0x18008fb57
mov rax, qword [r14 + 0x130]
mov edx, 4
mov qword [rsp + 0x28], 1
mov r8d, edx
mov rcx, r14
mov dword [rsp + 0x20], ebx
lea r9d, [rdx - 3]
call qword [rax + 0x28]
test eax, eax
mov ecx, ebx
sete cl
mov dword [rsp + 0x40], ecx
test eax, eax
jne 0x18008fb57
or dword [r15], 0x100
mov ecx, dword [r14 + 0x10]
lea rdx, [r14 + 0x3c]
mov r8d, 0xa8
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__read]
cmp eax, 0xa8
jne 0x18008fbac
lea rdx, str.TDB_file_n
lea rcx, [r14 + 0x3c]
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
jne 0x18008fbac
mov eax, dword [r14 + 0x5c]
cmp eax, 0x2601196d
je 0x18008fae5
mov r11d, ebx
cmp eax, 0x6d190126
sete r11b
mov dword [rsp + 0x30], r11d
je 0x18008ff41
mov esi, 0x118
mov eax, esi
sub eax, 0x117
je 0x18008fbf7
cmp eax, 1
jne 0x18008fc07
test dword [r15], 0x100
je 0x18008fbe6
mov eax, dword [rbp]
lea r8, [rsp + 0x48]
mov rdx, r14
mov dword [rsp + 0x48], eax
mov ecx, 0xa2
call fcn.1800c40b0
cmp eax, 0xffffffff
jne 0x18008fc07
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [rax], 5
jmp 0x18008fd6b
mov r11d, dword [r14 + 0xe4]
and r11d, 0x10
mov dword [rsp + 0x30], r11d
dec esi
cmp esi, 0x116
ja 0x18008fbb1
jmp 0x18008fae5
mov dword [r14 + 0x10], 0xffffffff
mov qword [r14], rbx
jmp case.0x18008fa88.2
cmp dword [r15], ebx
jne 0x18008fc59
mov ecx, 0x44
mov eax, ecx
sub eax, 0x43
je 0x18008fc4a
cmp eax, 1
jne 0x18008fc52
or dword [r14 + 0xe4], 4
mov dword [r14 + 0x18], eax
jmp 0x18008fc52
and dword [r14 + 0xe4], 0xfffffffe
dec ecx
cmp ecx, 0x42
ja 0x18008fc30
test byte [r14 + 0xe4], 2
je case.0x18008fa88.2
mov ecx, 0xd2
nop dword [rax]
mov eax, ecx
sub eax, 0xd2
je 0x18008fcc1
cmp eax, 0x22
jne 0x18008fcd5
mov eax, dword [rbp]
lea r8, [rsp + 0x48]
mov rdx, r14
mov dword [rsp + 0x48], eax
mov ecx, 0xa2
call fcn.1800c40b0
test eax, eax
je 0x18008ff89
mov esi, 0xf2
cmp esi, 0xf2
je 0x18008ff61
cmp esi, 0x9286
je 0x18008fd6b
jmp 0x18008ff77
mov eax, dword [r14 + 0xe4]
and eax, 0xfffffffe
or eax, 0xc
mov dword [r14 + 0xe4], eax
add ecx, 0x22
cmp ecx, 0x116
jb 0x18008fc70
jmp case.0x18008fa88.2
mov eax, dword [r15]
mov dword [r14 + 0x128], eax
jmp case.0x18008fa88.2
mov r8d, dword [r9]
mov rcx, r10
mov edx, dword [r15]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__open]
mov dword [r14 + 0x10], eax
cmp eax, 0xffffffff
je 0x18008ffd0
mov rax, qword [r14 + 0x130]
xor edx, edx
mov qword [rsp + 0x28], 1
mov rcx, r14
mov dword [rsp + 0x20], ebx
lea r9d, [rdx + 2]
lea r8d, [rdx + 4]
call qword [rax + 0x28]
cmp eax, 0xffffffff
jne 0x18008fae5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov ecx, dword [rax]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_strerror]
mov r9, qword [rsp + 0x50]
lea r8, str.Check_failed:_it__second__HasObserver_delegate_.
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, r14
call qword [r14 + 0x110]
mov r12d, dword [rsp + 0x40]
mov r13d, 0x20
mov r15d, SHSetFolderPathW
jmp case.default.0x18009004c
xor r9d, r9d
mov qword [rsp + 0x20], rbx
xor edx, edx
mov rcx, r14
lea r8d, [r9 + 0x7d]
call fcn.1800a1140
jmp 0x18008fae5
mov r11d, dword [rsp + 0x30]
cmp dword [r14 + 0x140], ebx
jg 0x18008faee
mov dword [r14 + 0x140], 0x2000
jmp 0x18008faee
mov qword [r14 + 8], rbx
mov eax, dword [rsi]
mov dword [r14 + 0xe4], eax
jmp case.0x18008fa88.2
test rsi, rsi
je case.0x18008fa88.2
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rdx, rax
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fputs]
jmp 0x18008fae5
mov rax, qword [r10]
test dword [rax + 0x10], 0x40000
je 0x18009042e
mov eax, dword [rbp + 8]
mov ecx, 1
lea esi, [rax*2 + 1]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
lea r9, [0x1800e9f00]
mov rcx, rax
lea rdx, str._.s
mov r8d, esi
call fcn.1800cf5c0
jmp 0x18008fae5
mov ecx, 0x101
nop dword [rax]
mov eax, ecx
sub eax, 0x100
je 0x18009042e
cmp eax, 1
jne 0x18008fe59
mov rdi, qword [r10]
mov rdi, qword [rdi + 8]
dec ecx
cmp ecx, 0xff
ja 0x18008fe40
mov rax, qword [rsp + 0x120]
test rax, rax
je 0x18008fe7d
movups xmm0, xmmword [rax]
movups xmmword [r14 + 0x110], xmm0
jmp 0x18008fe90
mov qword [r14 + 0x110], r11
mov qword [r14 + 0x118], rbx
nop dword [rax + rax]
mov rax, qword [r8]
lea rcx, [0x1800708d0]
test rax, rax
cmovne rcx, rax
mov qword [r14 + 0x120], rcx
jmp case.0x18008fa88.2
mov eax, dword [rbp + 8]
mov ecx, 1
lea esi, [rax*2 + 1]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
lea r9, [0x1800e9f50]
jmp 0x18008fe21
cmp dword [r15], 1
jne 0x18008ff2c
mov esi, 0xec
nop dword [rax]
mov eax, esi
sub eax, 0xec
je 0x18008fef4
cmp eax, 1
je 0x18008fd6b
jmp 0x18008ff1e
mov r9, r10
lea r8, str.VmodlConverterFaultNoDefaultDatastoreFault
mov edx, 1
mov rcx, r14
call qword [r14 + 0x110]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov r10, qword [rsp + 0x50]
mov dword [rax], 0x16
inc esi
cmp esi, 0xee
jb 0x18008fee0
mov edx, dword [rsp + 0x38]
cmp dword [rbp], ebx
jne case.0x18008fa88.2
mov dword [rbp], 0x83
jmp case.0x18008fa88.2
mov edx, dword [rsp + 0x38]
jmp 0x18008faee
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [rax], 0xc
jmp 0x18008fd6b
lea r8, str.MD5_part_of_OpenSSL_1.0.0f_4_Jan_2012
mov edx, 1
mov rcx, r14
call qword [r14 + 0x110]
add esi, 0x9194
cmp esi, 0x12328
jbe 0x18008fca4
mov r12d, dword [rsp + 0x40]
mov r13d, 0x20
mov rax, qword [r14 + 0x130]
xor edx, edx
mov qword [rsp + 0x28], 1
mov rcx, r14
mov r15d, 0xe2
mov dword [rsp + 0x20], ebx
lea r9d, [rdx + 2]
lea r8d, [rdx + 3]
call qword [rax + 0x28]
cmp eax, 0xffffffff
je case.0x18009004c.230
jmp case.default.0x18009004c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov ecx, dword [rax]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_strerror]
mov r9, qword [rsp + 0x50]
lea r8, str.textureGradOffset_suR21_vf2_vf2_vf2_vi2_
mov qword [rsp + 0x20], rax
mov edx, 2
jmp 0x18008fd61
mov r11d, dword [rsp + 0x48]
mov r12d, dword [rsp + 0x48]
mov dword [rsp + 0x30], r11d
jmp 0x180090016
mov eax, dword [rsp + 0x118]
mov r12d, dword [rsp + 0x40]
mov r15d, eax
mov r13d, 0x20
add eax, 0x11
cmp r15d, eax
jae 0x18009042e
lea eax, [r15 - 0xd7]
cmp eax, 0x10
ja case.default.0x18009004c
lea rdx, [0x180000000]
mov ecx, dword [rdx + rax*4 + 0x905b0]
add rcx, rdx
jmp rcx
cmp dword [r14 + 0x64], ebx
je case.default.0x18009004c
lea r8, str.VirtualMachine.Interact.SESparseMaintenance
mov edx, 1
mov rcx, r14
call qword [r14 + 0x110]
mov r15d, SHSetFolderPathW
jmp case.default.0x18009004c
mov ecx, dword [r14 + 0x10]
lea rdx, [rsp + 0x70]
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__fstat64i32]
cmp eax, 0xffffffff
je case.0x18009004c.230
jmp case.default.0x18009004c
mov rax, qword [0x1800e9fc8]
mov qword [r14 + 0x100], rax
jmp case.default.0x18009004c
xor edx, edx
mov r9, r14
xor r8d, r8d
lea ecx, [rdx + 0x71]
call fcn.180079f20
test r12d, r12d
je case.default.0x18009004c
mov rax, qword [r14 + 0x130]
mov edx, 4
mov qword [rsp + 0x28], 1
mov rcx, r14
mov dword [rsp + 0x20], ebx
lea r9d, [rdx - 3]
lea r8d, [rdx - 1]
call qword [rax + 0x28]
cmp eax, 0xffffffff
jne case.default.0x18009004c
mov rbp, qword [rsp + 0x50]
mov esi, 0xfe
nop dword [rax]
cmp esi, 0xfe
je 0x180090116
cmp esi, 0x496c
je case.0x18009004c.230
jmp 0x180090142
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov ecx, dword [rax]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_strerror]
mov r9, rbp
lea r8, str.profile.passchecker_amount_suggestion_to_switch_on
mov edx, 1
mov qword [rsp + 0x20], rax
mov rcx, r14
call qword [r14 + 0x110]
add esi, 0x486e
cmp esi, 0x90dc
jbe 0x180090100
jmp case.default.0x18009004c
mov qword [0x1800e9fc8], r14
jmp case.default.0x18009004c
mov rcx, r10
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__strdup]
mov qword [r14], rax
test rax, rax
jne case.default.0x18009004c
mov esi, 0x90
nop dword [rax + rax]
cmp esi, 0x90
je 0x180090196
cmp esi, 0x630
je case.0x18009004c.230
jmp 0x1800901a2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [rax], 0xc
add esi, 0x5a0
cmp esi, 0xb40
jbe 0x180090180
jmp case.default.0x18009004c
test byte [rsi], 1
je 0x1800901ea
mov rax, qword [r14 + 0x130]
mov r9d, 2
mov qword [rsp + 0x28], 1
xor r8d, r8d
mov rcx, r14
mov dword [rsp + 0x20], ebx
lea edx, [r9 + 2]
call qword [rax + 0x28]
cmp eax, 0xffffffff
je case.0x18009004c.230
mov r9, r14
xor r8d, r8d
xor edx, edx
mov ecx, 0x8d
call fcn.18009b970
cmp eax, 0xffffffff
jne case.default.0x18009004c
mov r15d, SHSetFolderPathW
jmp case.default.0x18009004c
mov eax, dword [rsp + 0x84]
mov dword [r14 + 0x14], eax
mov eax, dword [rsp + 0x70]
mov dword [r14 + 0x108], eax
jmp case.default.0x18009004c
movzx eax, word [rsp + 0x74]
mov dword [r14 + 0x10c], eax
jmp case.default.0x18009004c
movzx eax, byte [r14 + 0x5d]
movzx ecx, byte [r14 + 0x5c]
shl ecx, 8
or ecx, eax
movzx eax, byte [r14 + 0x5e]
shl ecx, 8
or ecx, eax
movzx eax, byte [r14 + 0x5f]
shl ecx, 8
or ecx, eax
mov dword [rsp + 0x48], ecx
jmp case.default.0x18009004c
cmp dword [rsp + 0x48], 0x2601196d
mov eax, ebx
cmove eax, r13d
or eax, dword [r14 + 0xe4]
mov dword [r14 + 0xe4], eax
test r11d, r11d
jne 0x180090298
and eax, 0xffffffef
mov dword [r14 + 0xe4], eax
jmp case.default.0x18009004c
mov esi, 0x4b
nop dword [rax]
mov eax, esi
sub eax, 0x4a
je 0x1800902b6
cmp eax, 1
jne 0x1800902d9
or dword [r14 + 0xe4], 0x10
jmp 0x1800902d9
lea r9, [r14 + 0x3c]
mov dword [rsp + 0x38], 0xa8
mov r8d, 0x8d
mov qword [rsp + 0x20], rbx
lea rdx, [rsp + 0x38]
xor ecx, ecx
call fcn.1800c1f40
dec esi
cmp esi, 0x49
ja 0x1800902a0
jmp case.default.0x18009004c
movzx eax, word [rsp + 0x74]
lea r9, [rsp + 0x38]
xor edx, edx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x70]
lea rcx, [rsp + 0x40]
mov dword [rsp + 0x38], eax
lea r8d, [rdx + 0x6c]
call fcn.180058c00
test eax, eax
je case.default.0x18009004c
mov rbp, qword [rsp + 0x50]
mov esi, 0x10b
nop dword [rax]
mov eax, esi
sub eax, 0x10b
je 0x180090334
cmp eax, 3
je case.0x18009004c.230
jmp 0x18009036a
movzx eax, word [rsp + 0x74]
lea r8, str.Cannot_perform_operation_on_vectors_with_different_types
mov dword [rsp + 0x28], eax
mov r9, rbp
mov eax, dword [rsp + 0x70]
mov edx, 1
mov rcx, r14
mov dword [rsp + 0x20], eax
call qword [r14 + 0x110]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [rax], 0x10
add esi, 3
cmp esi, 0x111
jb 0x180090320
jmp case.default.0x18009004c
mov dword [r14 + 0x144], ebx
jmp case.default.0x18009004c
mov ebp, 0x24
mov esi, ebx
nop dword [rax]
cmp esi, 0xa0
ja case.0x1800903b0.6
mov eax, esi
movzx eax, byte [rdx + rax + 0x90610]
mov ecx, dword [rdx + rax*4 + 0x905f4]
add rcx, rdx
jmp rcx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov ecx, dword [rax]
mov dword [rsp + 0x60], ecx
jmp 0x1800904bc
mov ecx, dword [r14 + 0x10]
cmp ecx, 0xffffffff
je case.0x1800903b0.6
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__close]
test eax, eax
je 0x1800904bc
lea r8, str.Handler_for_NotifyCallError_returned_error_code
mov edx, 1
mov rcx, r14
call qword [r14 + 0x110]
jmp 0x1800904bc
mov rcx, qword [r14]
test rcx, rcx
je case.0x1800903b0.6
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [r14], rbx
jmp 0x1800904bc
test r14, r14
jne 0x18009046a
mov ecx, 0x123
nop dword [rax]
mov eax, ecx
sub eax, 0x123
je 0x18009045c
cmp eax, 0x3d
jne 0x18009045f
mov rax, rdi
mov rcx, qword [rsp + 0xa0]
xor rcx, rsp
call fcn.1800d0500
mov rbx, qword [rsp + 0x100]
add rsp, 0xb0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rdi, rbx
add ecx, 0x3d
cmp ecx, 0x19d
jb 0x180090420
cmp qword [r14 + 8], rbx
je case.0x1800903b0.6
test byte [r14 + 0xe4], 2
je 0x18009048a
mov rcx, qword [r14 + 8]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [r14 + 8], rbx
jmp 0x1800904bc
xor r9d, r9d
mov r8d, 0x109
mov rdx, r14
xor ecx, ecx
call fcn.180095150
jmp 0x1800904bc
test r14, r14
je 0x1800904b0
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov r14, rbx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov ecx, dword [rsp + 0x60]
mov dword [rax], ecx
lea rdx, [0x180000000]
add ebp, 0x20
add esi, 0x20
cmp ebp, 0xe4
jb 0x180090390
jmp case.default.0x18009004c
mov ecx, 0x43
nop dword [rax]
mov eax, ecx
sub eax, 0x42
je 0x18009042e
cmp eax, 1
jne 0x1800904f3
mov rdi, r14
dec ecx
cmp ecx, 0x41
ja 0x1800904e0
mov r10, qword [rsp + 0x50]
inc r15d
mov r11d, dword [rsp + 0x30]
mov eax, dword [rsp + 0x118]
mov rsi, qword [rsp + 0x68]
jmp 0x18009001f
mov rax, rbx
jmp 0x180090431