Function at 0x1400412f0
Capabilities:
Check if file exists
Hash data with md5
Read .ini file

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
lea rbp, [rsp - 0x318]
sub rsp, 0x418
movaps xmmword [rsp + 0x3f0], xmm6
mov rax, qword [0x1400e0038]
xor rax, rsp
mov qword [rbp + 0x2e0], rax
mov rdi, rdx
mov qword [rsp + 0x40], rcx
lea rdx, [rcx + 8]
mov r12, r9
lea rcx, [rbp + 0x28]
mov rbx, r8
call fcn.14000d620
cmp qword [rbp + 0x40], 8
lea r8, [rbp + 0x28]
mov rax, qword [rbp + 0x38]
cmovae r8, qword [rbp + 0x28]
xor esi, esi
lea r14, [rsi - 1]
test rax, rax
je 0x140041395
mov edx, esi
mov rcx, r8
cmp word [r8], dx
je 0x140041376
cmp rax, 1
je 0x140041379
add rcx, 2
dec rax
cmp word [rcx], dx
jne 0x140041364
mov rdx, rcx
test rdx, rdx
je 0x140041395
sub rdx, r8
sar rdx, 1
cmp rdx, r14
je 0x140041395
mov r8, r14
lea rcx, [rbp + 0x28]
call fcn.140012710
lea rdx, [rbp - 0x58]
lea rcx, [rbp + 0x28]
call fcn.140011eb0
mov rdx, rax
lea rcx, [rsp + 0x48]
call fcn.14000d620
lea rcx, [rbp - 0x58]
call fcn.140001910
mov r8d, 4
lea rdx, str..ini
lea rcx, [rsp + 0x48]
call fcn.14000d740
xorps xmm0, xmm0
movdqa xmm6, xmmword [0x1400cd300]
movups xmmword [rbp - 0x38], xmm0
mov word [rbp - 0x38], si
movdqu xmmword [rbp - 0x28], xmm6
cmp qword [rsp + 0x58], rsi
je 0x140041492
cmp qword [rsp + 0x60], 8
lea rcx, [rsp + 0x48]
cmovae rcx, qword [rsp + 0x48]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x140041492
xor edx, edx
lea rcx, [rbp + 0xd0]
mov r8d, 0x208
call fcn.140083680
cmp qword [rsp + 0x60], 8
lea rax, [rsp + 0x48]
lea r9, [rbp + 0xd0]
cmovae rax, qword [rsp + 0x48]
lea r8, [0x1400c9524]
mov qword [rsp + 0x28], rax
lea rdx, str.first_module_name
lea rcx, str.crashpad_info
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
test eax, eax
je 0x140041492
lea rax, [rbp + 0xd0]
mov r8, r14
inc r8
cmp word [rax + r8*2], si
jne 0x140041473
lea rdx, [rbp + 0xd0]
lea rcx, [rbp - 0x38]
call fcn.140012890
movdqu xmm6, xmmword [rbp - 0x28]
lea rax, [rbp - 0x38]
cmp rdi, rax
je 0x1400414f0
mov rdx, qword [rdi + 0x18]
cmp rdx, 8
jb 0x1400414da
mov rcx, qword [rdi]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x1400414d5
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140041d0e
mov rcx, r8
call fcn.1400809f0
movups xmm0, xmmword [rbp - 0x38]
mov edx, 7
mov word [rbp - 0x38], si
movups xmmword [rdi], xmm0
movups xmmword [rdi + 0x10], xmm6
jmp 0x1400414f4
mov rdx, qword [rbp - 0x20]
mov qword [rsp + 0x410], r13
mov qword [rsp + 0x408], r15
cmp rdx, 8
jb 0x140041540
mov rcx, qword [rbp - 0x38]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004153b
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140041d08
call fcn.1400809f0
xorps xmm0, xmm0
movdqa xmm6, xmmword [0x1400cd300]
movups xmmword [rbp - 0x18], xmm0
mov word [rbp - 0x18], si
movdqu xmmword [rbp - 8], xmm6
cmp qword [rsp + 0x58], rsi
je 0x140041603
cmp qword [rsp + 0x60], 8
lea rcx, [rsp + 0x48]
cmovae rcx, qword [rsp + 0x48]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x140041603
xor edx, edx
lea rcx, [rbp + 0xd0]
mov r8d, 0x208
call fcn.140083680
cmp qword [rsp + 0x60], 8
lea rax, [rsp + 0x48]
lea r9, [rbp + 0xd0]
cmovae rax, qword [rsp + 0x48]
lea r8, [0x1400c9524]
mov qword [rsp + 0x28], rax
lea rdx, str.first_module_path
lea rcx, str.crashpad_info
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
test eax, eax
je 0x140041603
lea rax, [rbp + 0xd0]
mov r8, r14
inc r8
cmp word [rax + r8*2], si
jne 0x1400415e4
lea rdx, [rbp + 0xd0]
lea rcx, [rbp - 0x18]
call fcn.140012890
movdqu xmm6, xmmword [rbp - 8]
lea rax, [rbp - 0x18]
cmp rbx, rax
je 0x140041661
mov rdx, qword [rbx + 0x18]
cmp rdx, 8
jb 0x14004164b
mov rcx, qword [rbx]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x140041646
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140041d14
mov rcx, r8
call fcn.1400809f0
movups xmm0, xmmword [rbp - 0x18]
mov edx, 7
mov word [rbp - 0x18], si
movups xmmword [rbx], xmm0
movups xmmword [rbx + 0x10], xmm6
jmp 0x140041665
mov rdx, qword [rbp]
cmp rdx, 8
jb 0x1400416a1
mov rcx, qword [rbp - 0x18]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004169c
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140041d08
call fcn.1400809f0
xorps xmm0, xmm0
movdqa xmm6, xmmword [0x1400cd300]
movups xmmword [rbp + 8], xmm0
mov word [rbp + 8], si
movdqu xmmword [rbp + 0x18], xmm6
cmp qword [rsp + 0x58], rsi
je 0x140041764
cmp qword [rsp + 0x60], 8
lea rcx, [rsp + 0x48]
cmovae rcx, qword [rsp + 0x48]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x140041764
xor edx, edx
lea rcx, [rbp + 0xd0]
mov r8d, 0x208
call fcn.140083680
cmp qword [rsp + 0x60], 8
lea rax, [rsp + 0x48]
lea r9, [rbp + 0xd0]
cmovae rax, qword [rsp + 0x48]
lea r8, [0x1400c9524]
mov qword [rsp + 0x28], rax
lea rdx, str.call_stack_hash
lea rcx, str.crashpad_info
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
test eax, eax
je 0x140041764
lea rax, [rbp + 0xd0]
mov r8, r14
inc r8
cmp word [rax + r8*2], si
jne 0x140041745
lea rdx, [rbp + 0xd0]
lea rcx, [rbp + 8]
call fcn.140012890
movdqu xmm6, xmmword [rbp + 0x18]
lea rax, [rbp + 8]
cmp r12, rax
je 0x1400417c8
mov rdx, qword [r12 + 0x18]
cmp rdx, 8
jb 0x1400417ae
mov rcx, qword [r12]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x1400417a9
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140041d1a
mov rcx, r8
call fcn.1400809f0
movups xmm0, xmmword [rbp + 8]
mov edx, 7
mov word [rbp + 8], si
movups xmmword [r12], xmm0
movups xmmword [r12 + 0x10], xmm6
jmp 0x1400417cc
mov rdx, qword [rbp + 0x20]
cmp rdx, 8
jb 0x140041808
mov rcx, qword [rbp + 8]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140041803
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140041d08
call fcn.1400809f0
cmp qword [rdi + 0x10], rsi
jne 0x140041823
mov r8d, 9
lea rdx, str.undefined
mov rcx, rdi
call fcn.140012890
cmp qword [r12 + 0x10], rsi
jne 0x140041c77
lea rcx, [rbp + 0xb0]
call qword [sym.imp.ole32.dll_CoCreateGuid]
test eax, eax
jne 0x140041c77
lea rdx, [rsp + 0x38]
lea rcx, [rbp + 0xb0]
call qword [sym.imp.ole32.dll_StringFromCLSID]
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov rcx, qword [rsp + 0x38]
test rcx, rcx
jne 0x14004186f
mov rdx, rsi
jmp 0x14004187b
mov rdx, r14
inc rdx
cmp word [rcx + rdx*2], si
jne 0x140041872
xorps xmm0, xmm0
mov qword [rbp - 0x48], rsi
movups xmmword [rbp - 0x58], xmm0
lea r8, [rbp - 0x58]
mov byte [rbp - 0x58], sil
mov qword [rbp - 0x40], 0xf
call fcn.1400111b0
mov rdi, qword [rbp - 0x48]
xorps xmm0, xmm0
mov r13, qword [rbp - 0x40]
mov eax, 7
mov r15, qword [rbp - 0x58]
mov qword [rsp + 0x78], rsi
mov qword [rbp - 0x80], rax
movups xmmword [rsp + 0x68], xmm0
mov word [rsp + 0x68], si
test rdi, rdi
je 0x140041bf1
mov eax, esi
mov qword [rbp + 0x98], rsi
cmp r13, 0x10
mov dword [rbp + 0x90], eax
lea rsi, [rbp - 0x58]
mov dword [rbp + 0xa0], 0x67452301
cmovae rsi, r15
mov dword [rbp + 0xa4], 0xefcdab89
xor ebx, ebx
mov dword [rbp + 0xa8], 0x98badcfe
mov dword [rbp + 0xac], 0x10325476
movups xmmword [rbp + 0xc0], xmm0
test rdi, rdi
je 0x140041965
nop dword [rax]
mov ecx, eax
movzx eax, byte [rbx + rsi]
mov byte [rbp + rcx + 0x50], al
mov eax, dword [rbp + 0x90]
inc eax
mov dword [rbp + 0x90], eax
cmp eax, 0x40
jne 0x14004195d
lea rdx, [rbp + 0x50]
lea rcx, [rbp + 0x50]
call fcn.140042090
add qword [rbp + 0x98], 0x200
xor eax, eax
mov dword [rbp + 0x90], eax
inc rbx
cmp rbx, rdi
jb 0x140041920
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0x50]
call fcn.140042b10
xorps xmm0, xmm0
mov qword [rbp - 0x68], 0
movups xmmword [rbp - 0x78], xmm0
mov byte [rbp - 0x78], 0
xor esi, esi
mov qword [rbp - 0x60], 0xf
nop dword [rax]
nop word [rax + rax]
movzx r9d, byte [rbp + rsi + 0xc0]
lea r8, str._02x
xor eax, eax
lea rcx, [rsp + 0x30]
mov word [rsp + 0x30], ax
mov byte [rsp + 0x32], al
lea edx, [rax + 3]
call fcn.140001c00
lea rax, [rsp + 0x30]
mov rdi, r14
inc rdi
cmp byte [rax + rdi], 0
jne 0x1400419d0
mov rdx, qword [rbp - 0x60]
mov rcx, qword [rbp - 0x68]
mov rax, rdx
sub rax, rcx
cmp rdi, rax
ja 0x140041a1a
cmp rdx, 0x10
lea rax, [rcx + rdi]
lea rbx, [rbp - 0x78]
mov qword [rbp - 0x68], rax
cmovae rbx, qword [rbp - 0x78]
lea rdx, [rsp + 0x30]
add rbx, rcx
mov r8, rdi
mov rcx, rbx
call fcn.140082e70
mov byte [rdi + rbx], 0
jmp 0x140041a30
lea r9, [rsp + 0x30]
mov qword [rsp + 0x20], rdi
mov rdx, rdi
lea rcx, [rbp - 0x78]
call fcn.140006aa0
inc rsi
cmp rsi, 0x10
jl 0x1400419a0
cmp qword [rbp - 0x60], 0x10
lea rax, [rbp - 0x78]
lea rdx, [rbp + 0xc0]
cmovae rax, qword [rbp - 0x78]
lea rcx, [rbp - 0x58]
mov qword [rbp + 0xc0], rax
mov rax, qword [rbp - 0x68]
mov qword [rbp + 0xc8], rax
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0xc0], xmm0
call fcn.140011320
mov rbx, rax
lea rax, [rsp + 0x68]
cmp rax, rbx
je 0x140041b00
mov rdx, qword [rbp - 0x80]
cmp rdx, 8
jb 0x140041aca
mov rcx, qword [rsp + 0x68]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140041ac5
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140041d20
call fcn.1400809f0
mov qword [rbp - 0x80], 7
xor esi, esi
mov qword [rsp + 0x78], rsi
mov word [rsp + 0x68], si
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x68], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rsp + 0x78], xmm1
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], 7
mov word [rbx], si
jmp 0x140041b02
xor esi, esi
mov rdx, qword [rbp - 0x40]
cmp rdx, 8
jb 0x140041b42
mov rcx, qword [rbp - 0x58]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140041b3d
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140041d20
call fcn.1400809f0
mov rdx, qword [rbp - 0x60]
cmp rdx, 0x10
jb 0x140041b7d
mov rcx, qword [rbp - 0x78]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140041b78
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140041d26
call fcn.1400809f0
cmp qword [rsp + 0x78], 0
je 0x140041bed
xor edx, edx
lea rcx, [rbp + 0xd0]
mov r8d, 0x208
call fcn.140083680
mov rax, qword [rsp + 0x40]
lea r9, [rsp + 0x68]
cmp qword [rbp - 0x80], 8
lea rdx, str._08X__s
lea rcx, [rbp + 0xd0]
cmovae r9, qword [rsp + 0x68]
mov r8d, dword [rax + 0x28]
call fcn.140042030
lea rax, [rbp + 0xd0]
nop dword [rax]
inc r14
cmp word [rax + r14*2], 0
jne 0x140041bd0
mov r8, r14
lea rdx, [rbp + 0xd0]
mov rcx, r12
call fcn.140012890
mov rax, qword [rbp - 0x80]
cmp rax, 8
jb 0x140041c2e
mov rcx, qword [rsp + 0x68]
lea rdx, [rax*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140041c29
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140041d2c
call fcn.1400809f0
mov qword [rsp + 0x78], rsi
mov qword [rbp - 0x80], 7
mov word [rsp + 0x68], si
cmp r13, 0x10
jb 0x140041c77
lea rdx, [r13 + 1]
mov rax, r15
cmp rdx, 0x1000
jb 0x140041c6f
mov r15, qword [r15 - 8]
add rdx, 0x27
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140041d2c
mov rcx, r15
call fcn.1400809f0
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x140041cb5
mov rcx, qword [rsp + 0x48]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140041cb0
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140041d08
call fcn.1400809f0
lea rcx, [rbp + 0x28]
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x60], 7
mov word [rsp + 0x48], si
call fcn.140001910
mov r13, qword [rsp + 0x410]
mov r15, qword [rsp + 0x408]
mov rcx, qword [rbp + 0x2e0]
xor rcx, rsp
call fcn.1400809d0
movaps xmm6, xmmword [rsp + 0x3f0]
add rsp, 0x418
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.140087b78
int3
call fcn.140087b78
int3
call fcn.140087b78
int3
call fcn.140087b78
int3
call fcn.140087b78
int3
call fcn.140087b78
int3
call fcn.140087b78
int3