Function at 0x41069a
Capabilities:
Check if file exists
Get file size

Disassembly:
push ebp
lea ebp, [esp - 0x224c]
mov eax, 0x224c
call fcn.00422b90
push 0xffffffffffffffff
push 0x43ccc9
mov eax, dword fs:[0]
push eax
sub esp, 0x64
mov eax, dword [0x4528a0]
xor eax, ebp
mov dword [ebp + 0x2248], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 0x2254]
xor esi, esi
mov edi, ecx
cmp eax, esi
jne 0x4106ea
mov eax, 0x443780
push 0xfde9
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.0041b5a3
add esp, 0xc
push 0xffffffffffffffff
push esi
lea ebx, [edi + 0xa8]
push eax
mov ecx, ebx
mov dword [ebp - 4], esi
call fcn.00402215
or dword [ebp - 4], 0xffffffff
push esi
push 1
lea ecx, [ebp - 0x38]
call fcn.00401f6a
push 0x20
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x10], esp
push ebx
call fcn.004023df
lea eax, [ebp - 0x38]
push eax
call fcn.0040b9d9
add esp, 0x24
push 0xffffffffffffffff
push esi
push eax
mov ecx, ebx
mov dword [ebp - 4], 1
call fcn.00402215
or dword [ebp - 4], 0xffffffff
push esi
push 1
lea ecx, [ebp - 0x38]
call fcn.00401f6a
push 9
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x10], esp
push ebx
call fcn.004023df
lea eax, [ebp - 0x38]
push eax
call fcn.0040b9d9
add esp, 0x24
push 0xffffffffffffffff
push esi
push eax
mov ecx, ebx
mov dword [ebp - 4], 2
call fcn.00402215
or dword [ebp - 4], 0xffffffff
push esi
push 1
lea ecx, [ebp - 0x38]
call fcn.00401f6a
push 0xa
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x10], esp
push ebx
call fcn.004023df
lea eax, [ebp - 0x38]
push eax
call fcn.0040b9d9
add esp, 0x24
push 0xffffffffffffffff
push esi
push eax
mov ecx, ebx
mov dword [ebp - 4], 3
call fcn.00402215
or dword [ebp - 4], 0xffffffff
push esi
push 1
lea ecx, [ebp - 0x38]
call fcn.00401f6a
push esi
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x10], esp
push ebx
call fcn.004023df
lea eax, [ebp - 0x38]
push eax
call fcn.0040b9d9
add esp, 0x24
push 0xffffffffffffffff
push esi
push eax
mov ecx, ebx
mov dword [ebp - 4], 4
call fcn.00402215
or dword [ebp - 4], 0xffffffff
push esi
push 1
lea ecx, [ebp - 0x38]
call fcn.00401f6a
push 0xb
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x10], esp
push ebx
call fcn.004023df
lea eax, [ebp - 0x38]
push eax
call fcn.0040b9d9
add esp, 0x24
push 0xffffffffffffffff
push esi
push eax
mov ecx, ebx
mov dword [ebp - 4], 5
call fcn.00402215
or dword [ebp - 4], 0xffffffff
push esi
push 1
lea ecx, [ebp - 0x38]
call fcn.00401f6a
push 0x20
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x10], esp
push ebx
call fcn.004023df
lea eax, [ebp - 0x38]
push eax
call fcn.0040ba31
add esp, 0x24
push 0xffffffffffffffff
push esi
push eax
mov ecx, ebx
mov dword [ebp - 4], 6
call fcn.00402215
or dword [ebp - 4], 0xffffffff
push esi
push 1
lea ecx, [ebp - 0x38]
call fcn.00401f6a
push 9
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x10], esp
push ebx
call fcn.004023df
lea eax, [ebp - 0x38]
push eax
call fcn.0040ba31
add esp, 0x24
push 0xffffffffffffffff
push esi
push eax
mov ecx, ebx
mov dword [ebp - 4], 7
call fcn.00402215
or dword [ebp - 4], 0xffffffff
push esi
push 1
lea ecx, [ebp - 0x38]
call fcn.00401f6a
push 0xa
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x10], esp
push ebx
call fcn.004023df
lea eax, [ebp - 0x38]
push eax
call fcn.0040ba31
add esp, 0x24
push 0xffffffffffffffff
push esi
push eax
mov ecx, ebx
mov dword [ebp - 4], 8
call fcn.00402215
or dword [ebp - 4], 0xffffffff
push esi
push 1
lea ecx, [ebp - 0x38]
call fcn.00401f6a
push esi
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x10], esp
push ebx
call fcn.004023df
lea eax, [ebp - 0x38]
push eax
call fcn.0040ba31
add esp, 0x24
push 0xffffffffffffffff
push esi
push eax
mov ecx, ebx
mov dword [ebp - 4], 9
call fcn.00402215
or dword [ebp - 4], 0xffffffff
push esi
push 1
lea ecx, [ebp - 0x38]
call fcn.00401f6a
push 0xb
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x10], esp
push ebx
call fcn.004023df
lea eax, [ebp - 0x38]
push eax
call fcn.0040ba31
add esp, 0x24
push 0xffffffffffffffff
push esi
push eax
mov ecx, ebx
mov dword [ebp - 4], 0xa
call fcn.00402215
or dword [ebp - 4], 0xffffffff
push esi
push 1
lea ecx, [ebp - 0x38]
call fcn.00401f6a
mov eax, dword [edi + 0xcc]
mov ecx, dword [eax - 0xc]
lea edx, [edi + 0x4f4]
push esi
push esi
mov ebx, 0x104
push ebx
push edx
push ecx
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetACP]
push eax
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
lea eax, [edi + 0x4f4]
lea ecx, [edi + 0x5f8]
push eax
push ecx
call fcn.00423d60
lea eax, [edi + 0x5f8]
push str..zip
push eax
call fcn.00423d70
mov eax, dword [edi + 0xd0]
mov ecx, dword [eax - 0xc]
add esp, 0x10
push esi
push esi
push ebx
lea edx, [edi + 0x6fc]
push edx
push ecx
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetACP]
push eax
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
lea eax, [edi + 0x6fc]
push str..log
push eax
call fcn.00423d70
pop ecx
pop ecx
mov ecx, edi
call fcn.0040bd8b
mov ecx, edi
call fcn.0040a891
lea eax, [ebp - 0x18]
push eax
mov dword [edi + 0xc4], esi
call fcn.0040d435
pop ecx
push dword [ebp - 0x18]
mov dword [ebp - 4], 0xb
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x410ce5
lea eax, [ebp - 0x18]
push eax
call fcn.004151ef
mov dword [esp], 0x208
lea eax, [ebp + 0x2000]
push esi
push eax
call fcn.00420210
push 0x40
lea eax, [ebp + 0x2208]
push esi
push eax
call fcn.00420210
push 0x2000
lea eax, [ebp]
push esi
push eax
call fcn.00420210
add esp, 0x24
lea eax, [edi + 0xe0]
push eax
push ebx
lea eax, [ebp + 0x2000]
push eax
push 0x20
lea eax, [ebp + 0x2208]
push eax
push 0x1000
lea eax, [ebp]
push eax
push esi
lea ecx, [edi + 0xcc]
call fcn.00404b09
push eax
call fcn.0041783f
add esp, 0x20
lea eax, [ebp]
lea ecx, [edi + 0xd4]
push eax
call fcn.004055ff
lea eax, [ebp + 0x2000]
lea ebx, [edi + 0xd8]
push eax
mov ecx, ebx
call fcn.004055ff
lea eax, [ebp + 0x2208]
lea ecx, [edi + 0xdc]
push eax
call fcn.004055ff
mov eax, dword [ebx]
cmp dword [eax - 0xc], esi
je 0x410af9
mov eax, dword [edi + 0xe0]
cmp dword [eax - 0xc], esi
jne 0x410b79
lea eax, [edi + 0xd0]
push eax
mov ecx, ebx
call fcn.0040558e
push dword [ebx]
lea ecx, [ebp - 0x38]
call fcn.0040c4ab
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x54]
push eax
mov ecx, edi
mov byte [ebp - 4], 0xc
call fcn.0040bf87
push esi
push eax
lea eax, [ebp - 0x70]
push eax
mov byte [ebp - 4], 0xd
call fcn.0041b643
add esp, 0xc
cmp dword [eax + 0x18], 8
mov byte [ebp - 4], 0xe
jb 0x410b45
mov eax, dword [eax + 4]
jmp 0x410b48
add eax, 4
push eax
lea ecx, [edi + 0xe0]
call fcn.004055ff
push esi
push 1
lea ecx, [ebp - 0x70]
call fcn.0040b003
push esi
push 1
lea ecx, [ebp - 0x54]
call fcn.00401f6a
push esi
push 1
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0xb
call fcn.0040b003
mov eax, dword [edi + 0xd4]
mov eax, dword [eax - 0xc]
cmp eax, esi
jne 0x410c2f
mov eax, dword [ebx]
push 0x44548c
cmp dword [eax - 0xc], esi
je 0x410bdd
lea ecx, [ebp - 0x14]
call fcn.00405a89
mov dword [ebp - 0x10], eax
push dword [ebx]
mov byte [ebp - 4], 0xf
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
push eax
push dword [ebp - 0x10]
lea eax, [ebp - 0x1c]
push eax
call fcn.004054c6
add esp, 0xc
push eax
lea ecx, [edi + 0xd4]
mov byte [ebp - 4], 0x10
call fcn.0040558e
mov ecx, dword [ebp - 0x1c]
add ecx, 0xfffffff0
call fcn.00402a0d
mov ecx, dword [ebp - 0x14]
jmp 0x410c23
lea ecx, [ebp - 0x1c]
call fcn.00405a89
mov ebx, eax
push dword [edi + 0xd0]
mov byte [ebp - 4], 0x11
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
push eax
lea eax, [ebp - 0x14]
push ebx
push eax
call fcn.004054c6
add esp, 0xc
push eax
lea ecx, [edi + 0xd4]
mov byte [ebp - 4], 0x12
call fcn.0040558e
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.00402a0d
mov ecx, dword [ebp - 0x1c]
add ecx, 0xfffffff0
mov byte [ebp - 4], 0xb
call fcn.00402a0d
lea eax, [edi + 0xd4]
push eax
mov ecx, edi
call fcn.0041045c
test eax, eax
jne 0x410c65
push dword [edi + 0xd4]
push str.dumpuper._reach_local_limit.__s
call fcn.00402abd
pop ecx
pop ecx
mov ecx, edi
call fcn.0040b410
mov dword [edi + 0x4f0], esi
jmp 0x410d0d
mov ecx, edi
call fcn.004100c7
lea eax, [edi + 0x8c]
cmp dword [eax + 0x18], 0x10
jb 0x410c7d
mov eax, dword [eax + 4]
jmp 0x410c80
add eax, 4
push eax
call fcn.00424685
pop ecx
test eax, eax
je 0x410cfe
lea eax, [edi + 0xcc]
call fcn.0040a76e
or eax, edx
je 0x410cfe
mov ecx, edi
call fcn.0040a361
push esi
push esi
push 3
push esi
push 1
push 0x80000000
lea eax, [edi + 0x5f8]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov ebx, eax
cmp ebx, 0xffffffff
je 0x410cfe
push esi
push ebx
call dword [sym.imp.KERNEL32.dll_GetFileSize]
push ebx
mov dword [ebp - 0x14], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x14], 0x500000
jae 0x410cfe
mov ecx, edi
call fcn.0040d971
jmp 0x410cfe
push dword [ebp - 0x18]
push str.dumpuper._no_well_dbghelp.dll.__s
call fcn.00402abd
pop ecx
pop ecx
mov dword [edi + 0x4f0], 1
cmp dword [edi + 0x4f0], esi
je 0x410d0d
mov ecx, edi
call fcn.0040b410
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
mov dword [edi + 0xc4], 1
call fcn.00402a0d
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x2248]
xor ecx, ebp
call fcn.004201f5
add ebp, 0x224c
leave
ret 4