Function at 0x40f6d0
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x59b4b1
mov eax, dword fs:[0]
push eax
sub esp, 0x4d4
mov eax, dword [0x618190]
xor eax, esp
mov dword [esp + 0x4cc], eax
push esi
push edi
mov eax, dword [0x618190]
xor eax, esp
push eax
lea eax, [esp + 0x4e0]
mov dword fs:[0], eax
mov edi, dword [ebp + 0xc]
xor eax, eax
mov dword [esp + 0xa0], 7
mov dword [esp + 0x9c], 0
mov word [esp + 0x8c], ax
mov dword [esp + 0x4e8], eax
mov dword [esp + 0xb8], 0xf
mov dword [esp + 0xb4], eax
mov byte [esp + 0xa4], al
mov dword [esp + 0xd0], 7
mov dword [esp + 0xcc], eax
mov word [esp + 0xbc], ax
mov dword [esp + 0xe8], 0xf
mov dword [esp + 0xe4], eax
mov byte [esp + 0xd4], al
push eax
push 0x5ed1d8
lea ecx, [esp + 0x94]
mov byte [esp + 0x4f0], 3
call fcn.0041f200
mov dword [esp + 0x4e8], 4
xor eax, eax
mov dword [esp + 0x100], 7
mov dword [esp + 0xfc], 0
mov word [esp + 0xec], ax
mov dword [esp + 0x118], 0xf
mov dword [esp + 0x114], eax
mov byte [esp + 0x104], al
mov dword [esp + 0x130], 7
mov dword [esp + 0x12c], eax
mov word [esp + 0x11c], ax
mov dword [esp + 0x148], 0xf
mov dword [esp + 0x144], eax
mov byte [esp + 0x134], al
push eax
push 0x5ed1d8
lea ecx, [esp + 0xf4]
mov byte [esp + 0x4f0], 8
call fcn.0041f200
lea eax, [esp + 0xec]
mov byte [esp + 0x4e8], 9
push eax
call fcn.004138d0
push ecx
push 0x5e9914
push 0x5e97a4
lea ecx, [esp + 0xf8]
call fcn.00402af0
push 0x104
lea eax, [esp + 0x2d0]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov esi, eax
lea ecx, [esi + esi]
dec esi
cmp word [esp + ecx + 0x2cc], 0x5c
jne 0x40f873
lea eax, [esp + 0x2d0]
lea eax, [eax + esi*2]
push eax
lea ecx, [esp + 0x210]
call fcn.004021f0
inc esi
mov byte [esp + 0x4e8], 0xa
add esi, esi
cmp esi, 0x208
jae 0x40fdee
xor eax, eax
lea ecx, [esp + 0x14c]
mov word [esp + esi + 0x2cc], ax
lea eax, [esp + 0x2cc]
push eax
call fcn.004021f0
push 1
push 0x5ed1d4
lea ecx, [esp + 0x154]
mov byte [esp + 0x4f0], 0xb
call fcn.004145d0
push 1
push ecx
push 0x5ed070
lea ecx, [esp + 0x218]
call fcn.00416500
cmp eax, 0xffffffff
je 0x40f94e
push eax
push 0
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x218]
call fcn.00414700
lea ecx, [esp + 0x20c]
mov byte [esp + 0x4e8], 0xc
cmp ecx, eax
je 0x40f933
push 0xffffffffffffffff
push 0
push eax
call fcn.0041ee90
mov byte [esp + 0x4e8], 0xb
cmp dword [esp + 0x20], 8
jb 0x40f94e
push dword [esp + 0xc]
call fcn.0043b833
add esp, 4
cmp dword [esp + 0x160], 8
lea edx, [esp + 0x14c]
cmovae edx, dword [esp + 0x14c]
cmp word [edx], 0
jne 0x40f96f
xor ecx, ecx
jmp 0x40f983
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40f974
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [esp + 0x94]
call fcn.0041f200
push 5
push str.Dump_
lea ecx, [esp + 0x94]
call fcn.004145d0
push 5
push str.Mini_
lea ecx, [esp + 0x94]
call fcn.004145d0
cmp dword [esp + 0x220], 8
lea edx, [esp + 0x20c]
cmovae edx, dword [esp + 0x20c]
cmp word [edx], 0
jne 0x40f9d8
xor ecx, ecx
jmp 0x40f9ef
mov ecx, edx
lea esi, [ecx + 2]
lea ecx, [ecx]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40f9e0
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [esp + 0x94]
call fcn.004145d0
push 1
push 0x5eb548
lea ecx, [esp + 0x94]
call fcn.004145d0
lea ecx, [esp + 0x26c]
call fcn.004020c0
mov byte [esp + 0x4e8], 0xd
test edi, edi
je 0x40fb49
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40fa31
sub ecx, edx
sar ecx, 1
je 0x40fb49
push edi
lea ecx, [esp + 0x1b0]
call fcn.004021f0
push ecx
push 0x5eb548
push 0x5e97a4
lea ecx, [esp + 0x1b8]
mov byte [esp + 0x4f4], 0xe
call fcn.00402af0
push ecx
push 0x5ed1d4
push 0x5e8800
lea ecx, [esp + 0x1b8]
call fcn.00402af0
push 0x5ed1d4
lea ecx, [esp + 0x1b0]
call fcn.00402fb0
test eax, eax
je 0x40fadb
push ecx
push 0x5ed1d4
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x1b8]
call fcn.00402960
push eax
lea ecx, [esp + 0x1b0]
mov byte [esp + 0x4ec], 0xf
call fcn.00402400
lea ecx, [esp + 0x2c]
mov byte [esp + 0x4e8], 0xe
call fcn.00402150
cmp dword [esp + 0x1c0], 8
lea ecx, [esp + 0x1ac]
lea eax, [esp + 0xec]
cmovae ecx, dword [esp + 0x1ac]
cmp dword [esp + 0x100], 8
push ecx
cmovae eax, dword [esp + 0xf0]
push eax
push 0x5eb54c
lea eax, [esp + 0x38]
push eax
push 0x6279dc
call fcn.004134e0
add esp, 0x14
push eax
lea ecx, [esp + 0x270]
mov byte [esp + 0x4ec], 0x10
call fcn.00402400
lea ecx, [esp + 0x2c]
call fcn.00402150
lea ecx, [esp + 0x1ac]
jmp 0x40fbc1
cmp dword [esp + 0x100], 8
lea eax, [esp + 0xec]
cmovae eax, dword [esp + 0xec]
push eax
push str.__s_.dmp
lea eax, [esp + 0x34]
push eax
push 0x6279dc
call fcn.004134e0
add esp, 0x10
mov edx, eax
mov byte [esp + 0x4e8], 0x11
cmp dword [edx + 0x14], 8
jb 0x40fb8a
mov edx, dword [edx]
cmp word [edx], 0
jne 0x40fb94
xor ecx, ecx
jmp 0x40fbaf
mov ecx, edx
lea esi, [ecx + 2]
lea esp, [esp]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40fba0
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [esp + 0x274]
call fcn.0041f200
lea ecx, [esp + 0x2c]
mov byte [esp + 0x4e8], 0xd
call fcn.00402150
cmp dword [esp + 0x280], 8
lea edx, [esp + 0x26c]
cmovae edx, dword [esp + 0x26c]
cmp word [edx], 0
jne 0x40fbef
xor ecx, ecx
jmp 0x40fc03
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40fbf4
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [esp + 0x94]
call fcn.004145d0
lea ecx, [esp + 0x26c]
call fcn.00402150
lea ecx, [esp + 0x14c]
call fcn.00402150
lea ecx, [esp + 0x20c]
call fcn.00402150
lea ecx, [esp + 0xec]
mov byte [esp + 0x4e8], 4
call fcn.00402150
lea eax, [esp + 0x8c]
push eax
call fcn.00413d50
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esp + 0xc], 0x5eb5a8
mov dword [esp + 0x10], 0
call edi
push eax
push ecx
lea ecx, [esp + 0x94]
call fcn.004024f0
movq xmm0, qword [esp + 0x10]
push eax
push str._tasp::library_CreatePath__s_err_lu._n
sub esp, 0xc
mov eax, esp
movq qword [eax], xmm0
mov dword [eax + 8], 3
call fcn.00404820
add esp, 0x18
lea eax, [esp + 0x8c]
cmp dword [esp + 0xa0], 8
cmovae eax, dword [esp + 0x8c]
push 0
push 0x80
push 2
push 0
push 0
push 0xc0000000
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov esi, eax
cmp esi, 0xffffffff
jne 0x40fdde
push str.DumpMiniOpenFile
lea ecx, [esp + 0x150]
call fcn.004021f0
mov byte [esp + 0x4e8], 0x12
lea edx, [esp + 0x8c]
cmp dword [esp + 0xa0], 8
cmovae edx, dword [esp + 0x8c]
cmp word [edx], 0
jne 0x40fd15
xor ecx, ecx
jmp 0x40fd2f
mov ecx, edx
lea esi, [ecx + 2]
lea ebx, [ebx]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40fd20
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [esp + 0x154]
call fcn.004145d0
cmp dword [esp + 0x160], 8
lea eax, [esp + 0x14c]
cmovae eax, dword [esp + 0x14c]
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov dword [esp + 0xc], 0x5eb658
mov dword [esp + 0x10], 0
call edi
push eax
push ecx
lea ecx, [esp + 0x94]
call fcn.004024f0
movq xmm0, qword [esp + 0x10]
push eax
push str._tasp::library_CreateFile__s_err_lu._n
sub esp, 0xc
mov eax, esp
movq qword [eax], xmm0
mov dword [eax + 8], 3
call fcn.00404820
add esp, 0x18
lea ecx, [esp + 0x14c]
call fcn.00402150
lea ecx, [esp + 0x8c]
call fcn.00402150
xor eax, eax
mov ecx, dword [esp + 0x4e0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [esp + 0x4cc]
xor ecx, esp
call fcn.00550cb3
mov esp, ebp
pop ebp
ret 8
lea ecx, [esp + 0x8c]
call fcn.00402150
mov eax, esi
jmp 0x40fdb9
call fcn.00551dc3
int3