Function at 0x433170
Capabilities:
Get disk size
Read file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x484c60
mov eax, dword fs:[0]
push eax
sub esp, 0xd14
mov eax, dword [0x4a86f0]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov eax, dword [ebp + 0xc]
mov ebx, dword [ebp + 0x10]
mov esi, dword [ebp + 8]
mov dword [ebp - 0xc74], eax
xor eax, eax
push 0x206
push eax
mov dword [ebp - 0xc9c], eax
mov dword [ebp - 0xc5c], eax
mov dword [ebp - 0xc60], eax
mov word [ebp - 0x21c], ax
lea eax, [ebp - 0x21a]
push eax
mov dword [ebp - 0xc64], ebx
mov dword [ebp - 0xcec], ebx
call fcn.0046a330
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x62c], ax
lea eax, [ebp - 0x62a]
push eax
call fcn.0046a330
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x834], ax
lea eax, [ebp - 0x832]
push eax
call fcn.0046a330
xor eax, eax
push 0x206
push eax
mov word [ebp - 0xc44], ax
lea eax, [ebp - 0xc42]
push eax
call fcn.0046a330
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x424], ax
lea eax, [ebp - 0x422]
push eax
call fcn.0046a330
xor eax, eax
push 0x206
push eax
mov word [ebp - 0xa3c], ax
lea eax, [ebp - 0xa3a]
push eax
call fcn.0046a330
xor eax, eax
mov dword [ebp - 0xc70], 0
mov dword [ebp - 0xcb8], eax
mov ecx, 0x4ab230
mov dword [ebp - 0xca8], eax
xorps xmm0, xmm0
mov eax, dword [ebp + 0x14]
add esp, 0x48
movzx eax, al
and eax, 8
mov dword [ebp - 0xc78], 0
mov dword [ebp - 0xc68], 0
lea edx, [ecx + 2]
movlpd qword [ebp - 0xc90], xmm0
movlpd qword [ebp - 0xc88], xmm0
movlpd qword [ebp - 0xc80], xmm0
mov dword [ebp - 0xca4], 0
mov dword [ebp - 0xca0], 0
mov byte [ebp - 0xc55], 0
mov dword [ebp - 0xcd8], eax
lea esp, [esp]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4332f0
sub ecx, edx
sar ecx, 1
jne 0x433320
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x4ab438], eax
mov eax, dword [ebx]
mov dword [ebp - 0xca8], 1
cmp eax, dword [ebx + 4]
je 0x433320
mov dword [ebx + 4], eax
push 0
push 0x80
push 3
push 0
push 1
push closesocket
push esi
mov dword [ebp - 4], 0
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov ebx, eax
mov dword [ebp - 0xcbc], ebx
cmp ebx, 0xffffffff
jne 0x433372
push 0x4a2acc
lea eax, [ebp - 0xd00]
mov dword [ebp - 0xc5c], 2
push eax
mov dword [ebp - 0xd00], 2
call fcn.00469859
lea eax, [ebp - 0xc80]
push eax
push str._FCW____1.0_
push ebx
call fcn.00432ed0
add esp, 0xc
test eax, eax
jne 0x4333b0
push 0x4a2acc
lea eax, [ebp - 0xd04]
mov dword [ebp - 0xc5c], 0xde
push eax
mov dword [ebp - 0xd04], 0xde
call fcn.00469859
push esi
lea eax, [ebp - 0x834]
push 0x104
push eax
call fcn.0046befa
push esi
lea eax, [ebp - 0xc44]
push 0x104
push eax
call fcn.0046befa
add esp, 0x18
lea eax, [ebp - 0x834]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
lea eax, [ebp - 0xc44]
push eax
call dword [sym.imp.SHLWAPI.dll_PathStripPathW]
mov esi, dword [ebp - 0xc80]
lea eax, [ebp - 0xc88]
mov edi, dword [ebp - 0xc7c]
add esi, 4
push 2
push eax
adc edi, 0
mov dword [ebp - 0xcc8], 0
mov ecx, esi
mov eax, edi
neg ecx
adc eax, 0
neg eax
push eax
push ecx
push ebx
call fcn.0042ef10
add esp, 0x14
test eax, eax
je 0x433f64
push 0
lea eax, [ebp - 0xc60]
push eax
push 4
lea eax, [ebp - 0xcc8]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
push dword [ebp - 0xcc8]
push str.ExtractFCWFile____NbFilesDisk_d
call fcn.0045f820
add esp, 8
lea eax, [ebp - 0xc88]
add esi, 8
xorps xmm0, xmm0
mov ecx, esi
movlpd qword [ebp - 0xcc4], xmm0
adc edi, 0
neg ecx
push 2
push eax
mov eax, edi
adc eax, 0
neg eax
push eax
push ecx
push ebx
call fcn.0042ef10
add esp, 0x14
test eax, eax
je 0x433f3f
push 0
lea eax, [ebp - 0xc60]
push eax
push 8
lea eax, [ebp - 0xcc4]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
push dword [ebp - 0xcc0]
push dword [ebp - 0xcc4]
push str.ExtractFCWFile____TotFilesDiskSize_I64u
call fcn.0045f820
add esp, 0xc
mov dword [ebp - 0xcac], 0
add esi, 4
lea eax, [ebp - 0xc88]
mov ecx, esi
adc edi, 0
neg ecx
push 2
push eax
mov eax, edi
adc eax, 0
neg eax
push eax
push ecx
push ebx
call fcn.0042ef10
add esp, 0x14
test eax, eax
je 0x433f1a
push 0
lea eax, [ebp - 0xc60]
push eax
push 4
lea eax, [ebp - 0xcac]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
push dword [ebp - 0xcac]
push str.ExtractFCWFile____NbFiles_d
call fcn.0045f820
add esp, 8
lea eax, [ebp - 0xc88]
add esi, 8
xorps xmm0, xmm0
mov ecx, esi
movlpd qword [ebp - 0xc98], xmm0
adc edi, 0
neg ecx
push 2
push eax
mov eax, edi
adc eax, 0
neg eax
push eax
push ecx
push ebx
call fcn.0042ef10
add esp, 0x14
test eax, eax
je 0x433ef5
push 0
lea eax, [ebp - 0xc60]
push eax
push 8
lea eax, [ebp - 0xc98]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
push dword [ebp - 0xc94]
mov dword [ebp - 0xc6c], eax
push dword [ebp - 0xc98]
push str.ExtractFCWFile____TotFilesSize_I64u
call fcn.0045f820
add esp, 0xc
test byte [ebp + 0x14], 2
je 0x4335b1
push dword [ebp - 0xc74]
call fcn.0042c370
add esp, 4
push 0
push 0
lea eax, [ebp - 0xcb4]
mov dword [ebp - 0xcb4], 0
push eax
push dword [ebp - 0xc74]
mov dword [ebp - 0xcb0], 0
call dword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExW]
test eax, eax
je 0x433655
push dword [ebp - 0xcb0]
push dword [ebp - 0xcb4]
push str.ExtractFCWFile____FreeBytesAvailable_I64u
call fcn.0045f820
add esp, 0xc
push dword [ebp - 0xc94]
push dword [ebp - 0xc98]
push str.ExtractFCWFile____TotFilesSize_I64u
call fcn.0045f820
mov eax, dword [ebp - 0xc94]
add esp, 0xc
cmp eax, dword [ebp - 0xcb0]
jb 0x433655
ja 0x433630
mov eax, dword [ebp - 0xc98]
cmp eax, dword [ebp - 0xcb4]
jbe 0x433655
push 0x4a2acc
lea eax, [ebp - 0xd14]
mov dword [ebp - 0xc5c], 0x70
push eax
mov dword [ebp - 0xd14], 0x70
call fcn.00469859
cmp dword [ebp - 0xca8], 0
je 0x433678
push dword [ebp - 0xcc0]
mov ecx, 0x4a8038
push dword [ebp - 0xcc4]
call fcn.00430290
xor ecx, ecx
jmp 0x43369b
mov eax, dword [ebp - 0xc64]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
mov eax, 0x52835813
imul ecx
sar edx, 0xa
mov ecx, edx
shr ecx, 0x1f
inc ecx
add ecx, edx
mov dword [ebp - 0xc68], ecx
mov edx, dword [ebp - 0xcac]
add edx, ecx
mov dword [ebp - 0xce8], edx
lea esp, [esp]
cmp ecx, edx
jae 0x433eb2
cmp dword [ebp - 0xc6c], 0
je 0x433eb2
cmp dword [ebp - 0xc9c], 0
jne 0x433eb2
cmp dword [0x4c2e50], 0
jne 0x433eb2
push 0x208
lea eax, [ebp - 0x21c]
mov dword [ebp - 0xc70], 0
xorps xmm0, xmm0
mov dword [ebp - 0xc78], 0
push 0
push eax
movlpd qword [ebp - 0xc90], xmm0
call fcn.0046a330
push 0x208
lea eax, [ebp - 0x62c]
push 0
push eax
call fcn.0046a330
add esi, 4
lea eax, [ebp - 0xc88]
push 2
push eax
adc edi, 0
mov ecx, esi
neg ecx
mov eax, edi
adc eax, 0
neg eax
push eax
push ecx
push ebx
call fcn.0042ef10
add esp, 0x2c
test eax, eax
je 0x433e8d
push 0
lea eax, [ebp - 0xc60]
push eax
push 4
lea eax, [ebp - 0xc70]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
push edi
push esi
push dword [ebp - 0xc70]
mov dword [ebp - 0xc6c], eax
push str.ExtractFCWFile____lgFile_u_LastOffSet_I64d
call fcn.0045f820
add esp, 0x10
cmp dword [ebp - 0xc6c], 0
je 0x433e68
mov eax, dword [ebp - 0xc70]
cmp eax, 0x104
ja 0x433e68
test eax, eax
je 0x433821
add esi, eax
lea eax, [ebp - 0xc88]
push 2
push eax
adc edi, 0
mov ecx, esi
neg ecx
mov eax, edi
adc eax, 0
neg eax
push eax
push ecx
push ebx
call fcn.0042ef10
add esp, 0x14
test eax, eax
je 0x433b09
push 0
lea eax, [ebp - 0xc60]
push eax
push dword [ebp - 0xc70]
lea eax, [ebp - 0x21c]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
mov eax, dword [ebp - 0xc70]
add eax, eax
cmp eax, 0x208
jae 0x433b04
xor ecx, ecx
mov word [ebp + eax - 0x21c], cx
lea eax, [ebp - 0x21c]
push eax
push str.ExtractFCWFile____File_s
call fcn.0045f820
add esp, 8
add esi, 8
lea eax, [ebp - 0xc88]
push 2
push eax
adc edi, 0
mov ecx, esi
neg ecx
mov eax, edi
adc eax, 0
neg eax
push eax
push ecx
push ebx
call fcn.0042ef10
add esp, 0x14
test eax, eax
je 0x433e43
push 0
lea eax, [ebp - 0xc60]
push eax
push 8
lea eax, [ebp - 0xca4]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
lea eax, [ebp - 0xc54]
push eax
lea eax, [ebp - 0xca4]
push eax
call dword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
movzx eax, word [ebp - 0xc46]
push eax
movzx eax, word [ebp - 0xc48]
push eax
movzx eax, word [ebp - 0xc4a]
push eax
movzx eax, word [ebp - 0xc4c]
push eax
movzx eax, word [ebp - 0xc54]
push eax
movzx eax, word [ebp - 0xc52]
push eax
movzx eax, word [ebp - 0xc4e]
push eax
push str.ExtractFCWFile____stLastWriteTime_d__d__d____d:_d:_d__dms
call fcn.0045f4c0
add esp, 0x20
lea eax, [ebp - 0xc88]
add esi, 8
mov ecx, esi
adc edi, 0
neg ecx
push 2
push eax
mov eax, edi
adc eax, 0
neg eax
push eax
push ecx
push ebx
call fcn.0042ef10
add esp, 0x14
test eax, eax
je 0x433e1e
push 0
lea eax, [ebp - 0xc60]
push eax
push 8
lea eax, [ebp - 0xc90]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
push dword [ebp - 0xc8c]
push dword [ebp - 0xc90]
push str.ExtractFCWFile____FileSize_I64u
call fcn.0045f820
add esp, 0xc
lea eax, [ebp - 0xc88]
add esi, 8
mov ecx, esi
adc edi, 0
neg ecx
push 2
push eax
mov eax, edi
adc eax, 0
neg eax
push eax
push ecx
push ebx
call fcn.0042ef10
add esp, 0x14
test eax, eax
je 0x433df9
push 0
lea eax, [ebp - 0xc60]
push eax
push 8
lea eax, [ebp - 0xc80]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
push dword [ebp - 0xc7c]
push dword [ebp - 0xc80]
push str.ExtractFCWFile____DataOffSet_I64d
call fcn.0045f820
add esp, 0xc
lea eax, [ebp - 0xc88]
add esi, 1
mov ecx, esi
adc edi, 0
neg ecx
push 2
push eax
mov eax, edi
adc eax, 0
neg eax
push eax
push ecx
push ebx
call fcn.0042ef10
add esp, 0x14
test eax, eax
je 0x433dd4
push 0
lea eax, [ebp - 0xc60]
push eax
push 1
lea eax, [ebp - 0xc55]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
movzx eax, byte [ebp - 0xc55]
push eax
push str.ExtractFCWFile____TypeOfFile_d
call fcn.0045f820
add esp, 8
lea eax, [ebp - 0xc88]
add esi, 4
mov ecx, esi
adc edi, 0
neg ecx
push 2
push eax
mov eax, edi
adc eax, 0
neg eax
push eax
push ecx
push ebx
call fcn.0042ef10
add esp, 0x14
test eax, eax
je 0x433daf
push 0
lea eax, [ebp - 0xc60]
push eax
push 4
lea eax, [ebp - 0xc78]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
push dword [ebp - 0xc78]
mov dword [ebp - 0xc6c], eax
push str.ExtractFCWFile____lgFileOut_u
call fcn.0045f820
add esp, 8
cmp dword [ebp - 0xc6c], 0
je 0x433d8a
mov eax, dword [ebp - 0xc78]
cmp eax, 0x104
ja 0x433d8a
test eax, eax
je 0x433ad6
add esi, eax
lea eax, [ebp - 0xc88]
push 2
push eax
adc edi, 0
mov ecx, esi
neg ecx
mov eax, edi
adc eax, 0
neg eax
push eax
push ecx
push ebx
call fcn.0042ef10
add esp, 0x14
test eax, eax
je 0x433b2e
push 0
lea eax, [ebp - 0xc60]
push eax
push dword [ebp - 0xc78]
lea eax, [ebp - 0x62c]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
mov dword [ebp - 0xc6c], eax
mov eax, dword [ebp - 0xc78]
add eax, eax
cmp eax, 0x208
jae 0x433b04
xor ecx, ecx
mov word [ebp + eax - 0x62c], cx
lea eax, [ebp - 0x62c]
push eax
push str.ExtractFCWFile____FileOut_s
call fcn.0045f820
add esp, 8
cmp dword [ebp - 0xc6c], 0
jne 0x433b53
push 0x4a2acc
lea eax, [ebp - 0xcd0]
mov dword [ebp - 0xc5c], 0xd
push eax
mov dword [ebp - 0xcd0], 0xd
call fcn.00469859
call fcn.0046be1e
push 0x4a2acc
lea eax, [ebp - 0xcf4]
mov dword [ebp - 0xc5c], 0xd
push eax
mov dword [ebp - 0xcf4], 0xd
call fcn.00469859
push 0x4a2acc
lea eax, [ebp - 0xd0c]
mov dword [ebp - 0xc5c], 0xd
push eax
mov dword [ebp - 0xd0c], 0xd
call fcn.00469859
mov eax, dword [ebp - 0xc68]
mov ecx, dword [ebp - 0xc64]
inc eax
push eax
mov dword [ebp - 0xce0], eax
call fcn.00434210
test byte [ebp + 0x14], 0x10
lea eax, [ebp - 0x21c]
push eax
jne 0x433ba1
lea eax, [ebp - 0xa3c]
push 0x104
push eax
call fcn.0046befa
add esp, 0xc
lea eax, [ebp - 0xa3c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathStripPathW]
lea eax, [ebp - 0xa3c]
push eax
push dword [ebp - 0xc74]
lea eax, [ebp - 0x424]
push eax
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
imul ecx, dword [ebp - 0xc68], 0xc69
lea eax, [ebp - 0x21c]
push eax
mov eax, dword [ebp - 0xc64]
push 0x104
mov dword [ebp - 0xc68], ecx
add ecx, 0xc
mov eax, dword [eax]
add eax, ecx
push eax
call fcn.0046befa
mov ecx, dword [ebp - 0xc68]
lea eax, [ebp - 0x62c]
push eax
mov eax, dword [ebp - 0xc64]
add ecx, 0x41c
push 0x104
mov eax, dword [eax]
add eax, ecx
push eax
call fcn.0046befa
mov edx, dword [ebp - 0xc68]
mov eax, dword [ebp - 0xc64]
mov ecx, dword [eax]
mov eax, dword [ebp - 0xc90]
mov dword [edx + ecx + 0xc3c], eax
mov eax, dword [ebp - 0xc8c]
mov dword [edx + ecx + 0xc40], eax
mov eax, dword [ebp - 0xc64]
mov ecx, dword [eax]
movzx eax, byte [ebp - 0xc55]
mov byte [edx + ecx + 0xc5c], al
mov eax, dword [ebp - 0xc64]
mov ecx, dword [eax]
mov eax, dword [ebp - 0xc80]
mov dword [edx + ecx + 0xc54], eax
mov eax, dword [ebp - 0xc7c]
mov dword [edx + ecx + 0xc58], eax
mov eax, dword [ebp - 0xc64]
mov ecx, dword [eax]
mov eax, dword [ebp - 0xca4]
mov dword [edx + ecx + 0xc4c], eax
mov eax, dword [ebp - 0xca0]
mov dword [edx + ecx + 0xc50], eax
lea eax, [ebp - 0x424]
push eax
mov eax, dword [ebp - 0xc64]
push 0x104
mov eax, dword [eax]
add eax, 0xa34
add eax, edx
push eax
call fcn.0046befa
mov al, byte [ebp - 0xc55]
add esp, 0x24
test al, 0x40
je 0x433ccc
lea eax, [ebp - 0x424]
push eax
call fcn.0042c370
add esp, 4
jmp 0x433d25
test al, 0x20
lea eax, [ebp - 0x424]
je 0x433cdc
push 1
push 0
jmp 0x433ce4
push 0
push dword [ebp - 0xcd8]
push 1
push eax
push dword [ebp - 0xca0]
push dword [ebp - 0xca4]
push dword [ebp - 0xc8c]
push dword [ebp - 0xc90]
push dword [ebp - 0xc7c]
push dword [ebp - 0xc80]
push 0x487854
push ebx
call fcn.0045d090
mov dword [ebp - 0xc5c], eax
add esp, 0x30
mov dword [ebp - 0xc9c], eax
test byte [ebp - 0xc55], 0x10
je 0x433d61
mov eax, dword [ebp - 0xc64]
mov ecx, dword [ebp - 0xc68]
add ecx, 0x41c
mov dword [ebp - 0xcb8], 1
mov eax, dword [eax]
add eax, ecx
push eax
lea eax, [ebp - 0x834]
push eax
push 0x4ab230
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
mov eax, dword [ebp - 0xce0]
push 0
push 0
mov dword [ebp - 0xc68], eax
call fcn.0042e860
mov ecx, dword [ebp - 0xc68]
add esp, 8
mov edx, dword [ebp - 0xce8]
jmp 0x4336b0
push 0x4a2acc
lea eax, [ebp - 0xcf0]
mov dword [ebp - 0xc5c], 0xd
push eax
mov dword [ebp - 0xcf0], 0xd
call fcn.00469859
push 0x4a2acc
lea eax, [ebp - 0xcf8]
mov dword [ebp - 0xc5c], 0xd
push eax
mov dword [ebp - 0xcf8], 0xd
call fcn.00469859
push 0x4a2acc
lea eax, [ebp - 0xccc]
mov dword [ebp - 0xc5c], 0xd
push eax
mov dword [ebp - 0xccc], 0xd
call fcn.00469859
push 0x4a2acc
lea eax, [ebp - 0xd08]
mov dword [ebp - 0xc5c], 0xd
push eax
mov dword [ebp - 0xd08], 0xd
call fcn.00469859
push 0x4a2acc
lea eax, [ebp - 0xd10]
mov dword [ebp - 0xc5c], 0xd
push eax
mov dword [ebp - 0xd10], 0xd
call fcn.00469859
push 0x4a2acc
lea eax, [ebp - 0xd18]
mov dword [ebp - 0xc5c], 0xd
push eax
mov dword [ebp - 0xd18], 0xd
call fcn.00469859
push 0x4a2acc
lea eax, [ebp - 0xd20]
mov dword [ebp - 0xc5c], 0xd
push eax
mov dword [ebp - 0xd20], 0xd
call fcn.00469859
push 0x4a2acc
lea eax, [ebp - 0xcd4]
mov dword [ebp - 0xc5c], 0xd
push eax
mov dword [ebp - 0xcd4], 0xd
call fcn.00469859
mov edi, dword [ebp - 0xc64]
mov esi, dword [edi]
mov ecx, dword [edi + 4]
cmp esi, ecx
je 0x433eea
sub ecx, esi
mov eax, 0x52835813
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [esi], eax
mov ecx, dword [edi]
mov eax, dword [ebp - 0xc98]
add dword [ecx + 4], eax
mov eax, dword [ebp - 0xc94]
adc dword [ecx + 8], eax
mov esi, dword [ebp - 0xc9c]
jmp 0x433fc4
push 0x4a2acc
lea eax, [ebp - 0xcfc]
mov dword [ebp - 0xc5c], 0xd
push eax
mov dword [ebp - 0xcfc], 0xd
call fcn.00469859
push 0x4a2acc
lea eax, [ebp - 0xcdc]
mov dword [ebp - 0xc5c], 0xd
push eax
mov dword [ebp - 0xcdc], 0xd
call fcn.00469859
push 0x4a2acc
lea eax, [ebp - 0xd1c]
mov dword [ebp - 0xc5c], 0xd
push eax
mov dword [ebp - 0xd1c], 0xd
call fcn.00469859
push 0x4a2acc
lea eax, [ebp - 0xce4]
mov dword [ebp - 0xc5c], 0xd
push eax
mov dword [ebp - 0xce4], 0xd
call fcn.00469859
push str.ExtractFCWFile____Catch_Error_
call fcn.0045f820
mov eax, dword [ebp - 0xc5c]
add esp, 4
test eax, eax
mov ecx, 0xd
cmove eax, ecx
mov dword [ebp - 0xc5c], eax
mov eax, 0x433fb2
ret
mov dword [ebp - 4], 0xffffffff
test ebx, ebx
je 0x433fd6
push ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0xcb8]
test eax, eax
je 0x434002
mov eax, dword [ebp + 0x14]
test al, 4
je 0x434002
test esi, esi
jne 0x434002
push eax
push edi
push dword [ebp - 0xc74]
push 0x4ab230
call fcn.00433170
add esp, 0x10
mov esi, eax
cmp dword [0x4c2e50], 0
mov eax, 0x4c7
cmovne esi, eax
cmp dword [ebp - 0xca8], 0
je 0x43403c
xor eax, eax
mov word [0x4ab230], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x4ab438]
push eax
push str.ExtractFCWFile____done_in__d_ms
call fcn.0045f4c0
add esp, 8
push esi
push str.ExtractFCWFile____End__d_
call fcn.0045f820
add esp, 8
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0046984a
mov esp, ebp
pop ebp
ret