Function at 0x100758a0
Capabilities:
Get common file path
Get startup folder

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100b7dbd
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x318
mov eax, dword [0x10110040]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [sym.Redline.dll_class_VeriteLib__pLib]
test eax, eax
je 0x10076315
mov ecx, dword [eax + 0xcc]
test ecx, ecx
je 0x1007630e
cmp dword [ecx + 0x218], 0xcafebabe
jne 0x1007630e
mov ecx, dword [ecx + 0x48]
test ecx, ecx
je 0x1007630e
cmp dword [ecx + 0x3c], 0
je 0x1007630e
mov edi, dword [0x1015fa04]
lea esi, [edi + 0x30]
push esi
call fcn.1008b334
add esp, 4
test eax, eax
jne 0x10076333
mov eax, dword [esi + 0x2c]
cmp eax, 0x7fffffff
je 0x1007633a
mov edi, dword [edi + 0x18]
push esi
call fcn.1008b345
mov eax, dword [sym.Redline.dll_class_VeriteLib__pLib]
add esp, 4
cmp dword [eax + 0xcc], edi
jne 0x1007630e
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
movq qword [ebp - 0x2dc], xmm0
movups xmmword [ebp - 0x2fc], xmm0
movups xmmword [ebp - 0x2ec], xmm0
mov esi, dword [eax + 0x878]
mov edi, dword [eax + 0x868]
push 0x11
movups xmmword [ecx], xmm0
push str.RScreenshot_Entry
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10003ed0
push ecx
push esi
push edi
lea ecx, [ebp - 0x2fc]
call fcn.1002d1a0
sub esp, 0x18
mov dword [ebp - 4], 0
mov ecx, esp
xorps xmm0, xmm0
push 0x1d
movups xmmword [ecx], xmm0
push str.RScreenshot_Acquired_contenxt
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10003ed0
mov ecx, dword [sym.Redline.dll_class_LogFile__pLog]
call fcn.100335a0
mov ecx, dword [sym.Redline.dll_class_VeriteLib__pLib]
lea eax, [ecx + 0xdf4]
push eax
push dword [ecx + 0x868]
call dword [sym.imp.USER32.dll_GetClientRect]
mov ecx, dword [sym.Redline.dll_class_VeriteLib__pLib]
movzx eax, byte [ecx + 0xc4]
movss xmm0, dword [ecx + 0xc0]
movss xmm3, dword [ecx + 0xb8]
movss xmm2, dword [ecx + 0xb4]
push eax
movzx eax, byte [ecx + 0x828]
push eax
push dword [ecx + 0xe00]
push dword [ecx + 0xdfc]
sub esp, 8
movss dword [esp + 4], xmm0
movss xmm0, dword [ecx + 0xbc]
movss dword [esp], xmm0
push dword [ecx + 0x868]
lea ecx, [ebp - 0x328]
call fcn.10011850
mov edi, dword [ebp - 0x314]
xorps xmm0, xmm0
mov eax, edi
movq qword [ebp - 0x22c], xmm0
imul eax, dword [ebp - 0x318]
xor ecx, ecx
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x22c], ecx
lea esi, [eax*4]
xor eax, eax
mov dword [ebp - 0x300], esi
mov dword [ebp - 0x228], eax
mov dword [ebp - 0x224], eax
test esi, esi
je 0x10075b15
cmp esi, 0x7fffffff
ja 0x10076345
push esi
lea ecx, [ebp - 0x22c]
call fcn.1001a760
push dword [ebp - 0x300]
mov eax, dword [ebp - 0x22c]
add esi, eax
push 0
push eax
call fcn.1008e600
add esp, 0xc
mov dword [ebp - 0x228], esi
lea ecx, [ebp - 0x304]
mov dword [ebp - 0x304], 0
call fcn.1001a670
mov eax, dword [ebp - 0x228]
mov ecx, dword [ebp - 0x22c]
mov esi, dword [ebp - 0x300]
sub eax, ecx
mov byte [ebp - 4], 1
sub esp, 0x18
mov dword [ebp - 0x304], eax
mov ecx, esp
mov dword [ebp - 0x300], esi
lea eax, [ebp - 0x304]
lea edx, [ebp - 0x310]
push eax
lea eax, [ebp - 0x300]
push eax
lea eax, [ebp - 0x314]
push eax
lea eax, [ebp - 0x318]
push eax
lea eax, [ebp - 0x30c]
push eax
push 0x46
push str.RScreenshot_framebuffer______x__target_dims___actual_dims_
call fcn.100776c0
mov ecx, dword [sym.Redline.dll_class_LogFile__pLog]
add esp, 0x1c
call fcn.100335a0
lea eax, [ebp - 0x24c]
push eax
push 0xc01
call dword [sym.imp.OPENGL32.dll_glGetIntegerv]
call dword [sym.imp.OPENGL32.dll_glGetError]
mov ecx, eax
mov esi, str.GL_STACK_UNDERFLOW
mov dword [ebp - 0x304], ecx
mov edx, str.GL_OUT_OF_MEMORY
test ecx, ecx
je 0x10075c1b
cmp ecx, 0x502
jne 0x10075bac
mov eax, str.GL_INVALID_OPERATION
jmp 0x10075be4
cmp ecx, 0x500
jne 0x10075bbb
mov eax, str.GL_INVALID_ENUM
jmp 0x10075be4
cmp ecx, 0x501
jne 0x10075bca
mov eax, str.GL_INVALID_VALUE
jmp 0x10075be4
cmp ecx, 0x503
jne 0x10075bd9
mov eax, str.GL_STACK_OVERFLOW
jmp 0x10075be4
cmp ecx, 0x504
mov eax, esi
cmovne eax, edx
sub esp, 0x18
mov dword [ebp - 0x300], eax
mov ecx, esp
lea eax, [ebp - 0x304]
lea edx, [ebp - 0x300]
push str.RScreenshot_Warning_0
push eax
push 0x15
push str.GL_Error_____:_
call fcn.10003df0
mov ecx, dword [sym.Redline.dll_class_LogFile__pLog]
add esp, 0x10
call fcn.100335a0
push 0x404
call dword [sym.imp.OPENGL32.dll_glReadBuffer]
call dword [sym.imp.OPENGL32.dll_glGetError]
mov dword [ebp - 0x304], eax
test eax, eax
je 0x10075cb4
cmp eax, 0x502
jne 0x10075c44
mov ecx, str.GL_INVALID_OPERATION
jmp 0x10075c7d
cmp eax, 0x500
jne 0x10075c52
mov ecx, str.GL_INVALID_ENUM
jmp 0x10075c7d
cmp eax, 0x501
jne 0x10075c60
mov ecx, str.GL_INVALID_VALUE
jmp 0x10075c7d
cmp eax, 0x503
jne 0x10075c6e
mov ecx, str.GL_STACK_OVERFLOW
jmp 0x10075c7d
cmp eax, 0x504
mov ecx, esi
mov eax, str.GL_OUT_OF_MEMORY
cmovne ecx, eax
sub esp, 0x18
mov dword [ebp - 0x300], ecx
mov ecx, esp
lea eax, [ebp - 0x304]
lea edx, [ebp - 0x300]
push str.RScreenshot_Warning_A
push eax
push 0x15
push str.GL_Error_____:_
call fcn.10003df0
mov ecx, dword [sym.Redline.dll_class_LogFile__pLog]
add esp, 0x10
call fcn.100335a0
push dword [ebp - 0x22c]
cvttss2si eax, dword [ebp - 0x30c]
push 0x1401
push 0x1908
push edi
push dword [ebp - 0x318]
push eax
cvttss2si eax, dword [ebp - 0x310]
push eax
call dword [sym.imp.OPENGL32.dll_glReadPixels]
call dword [sym.imp.OPENGL32.dll_glGetError]
mov ecx, eax
mov dword [ebp - 0x304], ecx
test ecx, ecx
je 0x10075d7c
cmp ecx, 0x502
jne 0x10075d08
mov eax, str.GL_INVALID_OPERATION
jmp 0x10075d45
cmp ecx, 0x500
jne 0x10075d17
mov eax, str.GL_INVALID_ENUM
jmp 0x10075d45
cmp ecx, 0x501
jne 0x10075d26
mov eax, str.GL_INVALID_VALUE
jmp 0x10075d45
cmp ecx, 0x503
jne 0x10075d35
mov eax, str.GL_STACK_OVERFLOW
jmp 0x10075d45
cmp ecx, 0x504
mov eax, esi
mov ecx, str.GL_OUT_OF_MEMORY
cmovne eax, ecx
sub esp, 0x18
mov dword [ebp - 0x300], eax
mov ecx, esp
lea eax, [ebp - 0x304]
lea edx, [ebp - 0x300]
push str.RScreenshot_Warning_B
push eax
push 0x15
push str.GL_Error_____:_
call fcn.10003df0
mov ecx, dword [sym.Redline.dll_class_LogFile__pLog]
add esp, 0x10
call fcn.100335a0
push dword [ebp - 0x24c]
call dword [sym.imp.OPENGL32.dll_glReadBuffer]
call dword [sym.imp.OPENGL32.dll_glGetError]
mov dword [ebp - 0x304], eax
test eax, eax
je 0x10075e14
cmp eax, 0x502
jne 0x10075da6
mov esi, str.GL_INVALID_OPERATION
jmp 0x10075ddd
cmp eax, 0x500
jne 0x10075db4
mov esi, str.GL_INVALID_ENUM
jmp 0x10075ddd
cmp eax, 0x501
jne 0x10075dc2
mov esi, str.GL_INVALID_VALUE
jmp 0x10075ddd
cmp eax, 0x503
jne 0x10075dd0
mov esi, str.GL_STACK_OVERFLOW
jmp 0x10075ddd
cmp eax, 0x504
mov eax, str.GL_OUT_OF_MEMORY
cmovne esi, eax
sub esp, 0x18
mov dword [ebp - 0x300], esi
mov ecx, esp
lea eax, [ebp - 0x304]
lea edx, [ebp - 0x300]
push str.RScreenshot_Warning_C
push eax
push 0x15
push str.GL_Error_____:_
call fcn.10003df0
mov ecx, dword [sym.Redline.dll_class_LogFile__pLog]
add esp, 0x10
call fcn.100335a0
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 0x16
movups xmmword [ecx], xmm0
push str.RScreenshot_ReadPixels
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10003ed0
mov ecx, dword [sym.Redline.dll_class_LogFile__pLog]
call fcn.100335a0
lea eax, [ebp - 0x220]
push eax
push 0
push 0
push 0x28
push 0
call dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
mov dword [ebp - 0x26c], 0
xorps xmm0, xmm0
mov dword [ebp - 0x268], 0
movups xmmword [ebp - 0x27c], xmm0
test eax, eax
jne 0x10075e9d
lea ecx, [ebp - 0x220]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10075e84
sub ecx, edx
lea eax, [ebp - 0x220]
sar ecx, 1
push ecx
push eax
jmp 0x10075ea4
push 0
push 0x100e548c
lea ecx, [ebp - 0x27c]
call fcn.10020c50
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 2
xorps xmm0, xmm0
push eax
movups xmmword [ebp - 0x248], xmm0
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
lea eax, [ebp - 0x23a]
push eax
lea eax, [ebp - 0x23c]
push eax
lea eax, [ebp - 0x23e]
push eax
lea eax, [ebp - 0x240]
push eax
lea eax, [ebp - 0x242]
push eax
lea eax, [ebp - 0x246]
push eax
lea eax, [ebp - 0x248]
push eax
push 0x3a
push str.DosClient.:04.:02.:02.:02.:02.:02.:03.png
lea edx, [ebp - 0x27c]
lea ecx, [ebp - 0x2ac]
call fcn.10077770
xorps xmm0, xmm0
mov dword [ebp - 0x254], 0
movups xmmword [ebp - 0x264], xmm0
mov dword [ebp - 0x250], 0xf
mov byte [ebp - 0x264], 0
add esp, 0xc
mov byte [ebp - 4], 4
lea eax, [ebp - 0x27c]
mov ecx, esp
push eax
call fcn.10028a20
mov edx, 0xfde9
lea ecx, [ebp - 0x264]
call fcn.1007b3e0
lea eax, [ebp - 0x23a]
push eax
lea eax, [ebp - 0x23c]
push eax
lea eax, [ebp - 0x23e]
push eax
lea eax, [ebp - 0x240]
push eax
lea eax, [ebp - 0x242]
push eax
lea eax, [ebp - 0x246]
push eax
lea eax, [ebp - 0x248]
push eax
push 0x3a
push 0x100f5b30
lea edx, [ebp - 0x264]
lea ecx, [ebp - 0x294]
call fcn.10077850
add esp, 0x3c
mov byte [ebp - 4], 5
lea eax, [edi - 1]
mov ecx, dword [ebp - 0x318]
xorps xmm0, xmm0
mov esi, dword [ebp - 0x22c]
imul eax, ecx
movq qword [ebp - 0x238], xmm0
lea edi, [ecx*4]
mov dword [ebp - 0x230], 0
mov dword [ebp - 0x308], esi
test edi, edi
mov dword [ebp - 0x238], 0
mov dword [ebp - 0x234], 0
mov dword [ebp - 0x230], 0
lea eax, [esi + eax*4]
mov dword [ebp - 0x300], eax
je 0x10076060
cmp edi, 0x7fffffff
ja 0x10076345
push edi
lea ecx, [ebp - 0x238]
call fcn.1001a760
mov eax, dword [ebp - 0x238]
push edi
push 0
push eax
lea esi, [eax + edi]
call fcn.1008e600
add esp, 0xc
mov dword [ebp - 0x234], esi
lea ecx, [ebp - 0x304]
mov dword [ebp - 0x304], 0
call fcn.1001a670
mov esi, dword [ebp - 0x308]
mov eax, dword [ebp - 0x300]
mov ecx, dword [ebp - 0x314]
shr ecx, 1
mov dword [ebp - 0x304], ecx
je 0x100760b9
push edi
push eax
push dword [ebp - 0x238]
call fcn.1008e7c0
add esp, 0xc
push edi
push esi
push dword [ebp - 0x300]
call fcn.1008e7c0
add esp, 0xc
push edi
push dword [ebp - 0x238]
push esi
call fcn.1008e7c0
mov eax, dword [ebp - 0x300]
add esp, 0xc
sub eax, edi
add esi, edi
sub dword [ebp - 0x304], 1
mov dword [ebp - 0x300], eax
jne 0x10076070
xorps xmm0, xmm0
movups xmmword [ebp - 0x2c4], xmm0
mov dword [ebp - 0x2c4], 0
movups xmmword [ebp - 0x2d4], xmm0
mov dword [ebp - 0x2d4], 0
movq qword [ebp - 0x2b4], xmm0
mov dword [ebp - 0x2c8], 0
mov dword [ebp - 0x2c0], 0
mov dword [ebp - 0x2bc], 0
sub esp, 0x18
mov byte [ebp - 4], 7
mov ecx, esp
lea edx, [ebp - 0x294]
push 0x16
push str.RScreenshot_path_is_
call fcn.10034d60
mov ecx, dword [sym.Redline.dll_class_LogFile__pLog]
add esp, 8
call fcn.100335a0
push dword [ebp - 0x29c]
cmp dword [ebp - 0x298], 7
lea eax, [ebp - 0x2ac]
cmova eax, dword [ebp - 0x2ac]
push eax
push ecx
push dword [ebp - 0x22c]
lea eax, [ebp - 0x314]
push eax
lea eax, [ebp - 0x318]
push eax
call fcn.1002d560
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 0x1c
movups xmmword [ecx], xmm0
push str.RScreenshot_Saved_screenshot
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10003ed0
mov ecx, dword [sym.Redline.dll_class_LogFile__pLog]
call fcn.100335a0
mov edx, dword [ebp - 0x238]
test edx, edx
je 0x100761ea
mov ecx, dword [ebp - 0x230]
mov eax, edx
sub ecx, edx
cmp ecx, 0x1000
jb 0x100761c2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007634a
push ecx
push edx
call fcn.100899b0
add esp, 8
mov dword [ebp - 0x238], 0
mov dword [ebp - 0x234], 0
mov dword [ebp - 0x230], 0
mov ecx, dword [ebp - 0x280]
cmp ecx, 0xf
jbe 0x10076224
mov edx, dword [ebp - 0x294]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007621a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007634a
push ecx
push edx
call fcn.100899b0
add esp, 8
mov ecx, dword [ebp - 0x250]
mov dword [ebp - 0x284], 0
mov dword [ebp - 0x280], 0xf
mov byte [ebp - 0x294], 0
cmp ecx, 0xf
jbe 0x10076279
mov edx, dword [ebp - 0x264]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007626f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007634a
push ecx
push edx
call fcn.100899b0
add esp, 8
lea ecx, [ebp - 0x2ac]
mov dword [ebp - 0x254], 0
mov dword [ebp - 0x250], 0xf
mov byte [ebp - 0x264], 0
call fcn.10020200
lea ecx, [ebp - 0x27c]
call fcn.10020200
mov ecx, dword [ebp - 0x22c]
test ecx, ecx
je 0x100762fe
mov edx, dword [ebp - 0x224]
mov eax, ecx
sub edx, ecx
cmp edx, 0x1000
jb 0x100762d6
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007634a
push edx
push ecx
call fcn.100899b0
add esp, 8
mov dword [ebp - 0x22c], 0
mov dword [ebp - 0x228], 0
mov dword [ebp - 0x224], 0
lea ecx, [ebp - 0x2fc]
call fcn.1002d310
mov eax, dword [sym.Redline.dll_class_VeriteLib__pLib]
mov byte [eax + 0x220], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.10089573
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push 5
call fcn.1008b2ff
dec eax
push 6
mov dword [esi + 0x2c], eax
call fcn.1008b2ff
call fcn.10018e70
call fcn.1009211e
int3