Function at 0x4423d0
Capabilities:
Copy file
Delete file
Move file
Set file attributes

Disassembly:
mov eax, 0x482354
call fcn.0045c5c4
sub esp, 0x3c0
push ebx
xor ebx, ebx
cmp dword [0x4ad0fc], ebx
push esi
push edi
mov esi, ecx
jne 0x442fdb
lea ecx, [esi + 0x414]
push str._r_n_Installing_External__r_n
call fcn.004456bc
cmp dword [esi + 0x18c], ebx
je 0x442fdb
push ebx
lea ecx, [ebp - 0x2b4]
call fcn.0044f4f4
push ecx
mov dword [ebp - 4], ebx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.STAT_INSTALL
call fcn.0046c4f6
lea eax, [ebp - 0x4c]
push eax
call fcn.0044f275
add esp, 4
mov byte [ebp - 4], 1
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.STAT_SKIP
call fcn.0046c4f6
lea eax, [ebp - 0x74]
push eax
call fcn.0044f275
pop ecx
pop ecx
mov eax, dword [0x4a94a4]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x64], eax
mov byte [ebp - 4], 9
call fcn.0044f311
test eax, eax
jne 0x4425cf
push ecx
lea eax, [esi + 0x340]
mov ecx, esp
mov dword [ebp - 0x28], esp
push eax
call fcn.0046c1fd
lea ecx, [esi + 0x104]
call fcn.00416a98
push ecx
mov edi, str.DLG_PROGRESS
mov ecx, esp
mov dword [ebp - 0x28], esp
push edi
mov dword [esi + 0x3c8], eax
mov dword [ebp - 0x258], eax
call fcn.0046c4f6
lea eax, [ebp - 0x20]
push eax
call fcn.0044f275
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0xcc]
mov byte [ebp - 4], 0xa
call fcn.0046c575
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 9
call fcn.0046c488
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.SCRN_WIZ_INSTALLING
call fcn.0046c4f6
lea eax, [ebp - 0x20]
push eax
call fcn.0044f275
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 0xb
call fcn.0046c575
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 9
call fcn.0046c488
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push edi
call fcn.0046c4f6
lea eax, [ebp - 0x20]
push eax
call fcn.0044f275
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0xd4]
mov byte [ebp - 4], 0xc
call fcn.0046c575
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 9
call fcn.0046c488
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.STAT_INSTALL_FILES
call fcn.0046c4f6
lea eax, [ebp - 0x20]
push eax
call fcn.0044f275
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0xd0]
mov byte [ebp - 4], 0xd
call fcn.0046c575
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x20]
call fcn.0046c488
push esi
lea ecx, [ebp - 0x2b4]
call fcn.0044f9d2
push 0x64
push ebx
lea ecx, [ebp - 0x2b4]
call fcn.0044fae0
call fcn.0047740b
mov edi, dword [eax + 4]
call fcn.0047740b
mov eax, dword [eax + 4]
push 0x41
push ebx
push ebx
push dword [edi + 0xc4]
lea ecx, [ebp - 0x2b4]
push dword [eax + 0xc0]
push 0x4aec90
call fcn.0046d16f
mov eax, dword [esi + 0x124]
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x48], eax
mov eax, dword [esi + 0x120]
fild qword [ebp - 0x48]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], ebx
fild qword [ebp - 0x48]
fdivp st(1)
fmul qword [0x486a50]
call fcn.0045de7c
mov edi, eax
call fcn.0044f311
test eax, eax
jne 0x442611
push edi
lea ecx, [ebp - 0x2b4]
call fcn.0044fb16
mov eax, dword [esi + 0x184]
cmp eax, ebx
je 0x442f60
jmp 0x442626
mov eax, dword [ebp - 0x20]
xor ebx, ebx
cmp dword [0x4ad0fc], ebx
jne 0x442f60
mov ecx, dword [eax]
mov edi, dword [eax + 8]
push ecx
mov dword [ebp - 0x20], ecx
lea eax, [edi + 0x18]
mov ecx, esp
mov dword [ebp - 0x18], esp
push eax
mov dword [ebp - 0x3c], edi
call fcn.0046c1fd
lea eax, [ebp - 0x68]
push eax
call fcn.0044f275
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0xe
call fcn.0046c575
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 9
call fcn.0046c488
mov eax, dword [ebp - 0x24]
mov ecx, dword [eax - 8]
cmp byte [ecx + eax - 1], 0x5c
je 0x44268a
push 0x49f918
lea ecx, [ebp - 0x24]
call fcn.0046c818
lea eax, [edi + 0xc]
lea ecx, [ebp - 0x24]
push eax
call fcn.0046c854
push ecx
lea eax, [edi + 0x4c]
mov ecx, esp
mov dword [ebp - 0x18], esp
push eax
call fcn.0046c1fd
lea eax, [ebp - 0x5c]
push eax
call fcn.0044f275
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0xf
call fcn.0046c575
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 9
call fcn.0046c488
lea eax, [ebp - 0x38]
lea ecx, [ebp - 0x10]
push eax
call fcn.0046c575
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax - 8]
cmp byte [ecx + eax - 1], 0x5c
je 0x4426ef
push 0x49f918
lea ecx, [ebp - 0x10]
call fcn.0046c818
lea eax, [edi + 0xc]
lea ecx, [ebp - 0x10]
push eax
call fcn.0046c854
lea eax, [ebp - 0x10]
lea ecx, [ebp - 0x40]
push eax
call fcn.0046c575
call fcn.0044f311
test eax, eax
jne 0x44274a
push 0x39
push ecx
lea eax, [ebp - 0x10]
mov ecx, esp
mov dword [ebp - 0x18], esp
push eax
call fcn.0046c1fd
lea eax, [ebp - 0x7c]
push eax
call fcn.0041f220
add esp, 0xc
push dword [eax]
lea ecx, [ebp - 0x2b4]
mov byte [ebp - 4], 0x10
call fcn.0044fa3d
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 9
call fcn.0046c488
push dword [ebp - 0x10]
lea ecx, [esi + 0x414]
mov dword [esi + 0xdc], ebx
mov dword [esi + 0xd0], ebx
call fcn.004456bc
lea eax, [ebp - 0x10]
mov ecx, esi
push eax
push edi
call fcn.00442fea
test eax, eax
je 0x442ed3
push dword [ebp - 0x40]
push dword [ebp - 0x10]
call fcn.0045cd55
pop ecx
test eax, eax
pop ecx
jne 0x442799
push str.__Installed__r_n
lea ecx, [esi + 0x414]
call fcn.004456bc
call fcn.0044f311
test eax, eax
jne 0x4427b0
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x2b4]
call fcn.0044fa2c
xor edi, edi
inc edi
push ecx
lea eax, [ebp - 0x38]
mov ecx, esp
mov dword [ebp - 0x18], esp
push eax
call fcn.0046c1fd
call fcn.0041ecd6
cmp eax, ebx
pop ecx
jne 0x4428a1
cmp dword [0x4ad0fc], ebx
jne 0x4428a1
push dword [ebp - 0x38]
push ecx
mov ecx, esp
mov dword [ebp - 0x18], esp
push str.ERR_MAKEDIR
call fcn.0046c4f6
lea eax, [ebp - 0x98]
push eax
call fcn.0044f275
pop ecx
pop ecx
push dword [eax]
lea eax, [ebp - 0x14]
mov byte [ebp - 4], 0x11
push str._s_n_n_s
push eax
call fcn.00469ec1
add esp, 0x10
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 9
call fcn.0046c488
call fcn.0044f311
test eax, eax
jne 0x4427b3
push ebx
lea ecx, [ebp - 0x2b4]
call fcn.0046d200
push 0x15
push ecx
mov ecx, esp
mov dword [ebp - 0x18], esp
push str.DLG_ERROR
call fcn.0046c4f6
lea eax, [ebp - 0x58]
push eax
call fcn.0044f275
pop ecx
pop ecx
mov ecx, eax
mov byte [ebp - 4], 0x12
call fcn.0041053b
push eax
lea ecx, [ebp - 0x14]
call fcn.0041053b
push eax
mov ecx, esi
call fcn.0046f7a7
cmp eax, 2
lea ecx, [ebp - 0x58]
sete byte [ebp - 0x2d]
mov byte [ebp - 4], 9
call fcn.0046c488
cmp byte [ebp - 0x2d], 0
je 0x442890
mov dword [0x4ad0fc], edi
push edi
lea ecx, [ebp - 0x2b4]
call fcn.0046d200
jmp 0x4427b3
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x18], ebx
mov ebx, dword [ebp - 0x3c]
xor edi, edi
cmp dword [0x4ad0fc], edi
jne 0x442c5e
cmp dword [ebp - 0x2c], edi
jne 0x442c5e
call fcn.0044f311
test eax, eax
lea eax, [ebp - 0x34]
push eax
push dword [esi + 0x120]
push dword [esi + 0x124]
push dword [ebx + 0x1c]
jne 0x4428e9
lea eax, [ebp - 0x2b4]
push eax
jmp 0x4428ea
push edi
push dword [ebp - 0x10]
push dword [ebp - 0x24]
call fcn.00420e7a
add esp, 0x1c
cmp eax, edi
mov dword [ebp - 0x2c], eax
jne 0x442b3c
mov eax, dword [ebp - 0x34]
dec eax
je 0x442a68
dec eax
je 0x442a19
dec eax
je 0x4429e9
dec eax
je 0x4429b6
dec eax
je 0x442964
sub eax, 0x5e
je 0x442c53
push ecx
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.ERR_COPY_GENERAL
call fcn.0046c4f6
lea eax, [ebp - 0x9c]
push eax
call fcn.0044f275
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x18
call fcn.0046c575
lea ecx, [ebp - 0x9c]
jmp 0x442a93
push ecx
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.ERR_FILE_WRITE
call fcn.0046c4f6
lea eax, [ebp - 0x60]
push eax
call fcn.0044f275
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x17
call fcn.0046c575
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 9
call fcn.0046c488
push 0x4a1468
lea ecx, [ebp - 0x14]
call fcn.0046c818
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x14]
call fcn.0046c854
jmp 0x442a9c
push ecx
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.ERR_FILE_READ
call fcn.0046c4f6
lea eax, [ebp - 0x8c]
push eax
call fcn.0044f275
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x16
call fcn.0046c575
lea ecx, [ebp - 0x8c]
jmp 0x442a4a
push ecx
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.ERR_OPEN_OUTPUT
call fcn.0046c4f6
lea eax, [ebp - 0x50]
push eax
call fcn.0044f275
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x15
call fcn.0046c575
lea ecx, [ebp - 0x50]
jmp 0x44298f
push ecx
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.ERR_OPEN_INPUT
call fcn.0046c4f6
lea eax, [ebp - 0x90]
push eax
call fcn.0044f275
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x14
call fcn.0046c575
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 9
call fcn.0046c488
push 0x4a1468
lea ecx, [ebp - 0x14]
call fcn.0046c818
lea eax, [ebp - 0x24]
jmp 0x4429a8
push ecx
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.ERR_MEM0
call fcn.0046c4f6
lea eax, [ebp - 0x70]
push eax
call fcn.0044f275
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x13
call fcn.0046c575
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 9
call fcn.0046c488
cmp dword [ebp - 0x34], 0x63
je 0x442b3c
call fcn.0044f311
test eax, eax
jne 0x442b0a
push eax
lea ecx, [ebp - 0x2b4]
call fcn.0046d200
push 0x32
push ecx
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.DLG_ERROR
call fcn.0046c4f6
lea eax, [ebp - 0x88]
push eax
call fcn.0044f275
pop ecx
pop ecx
mov ecx, eax
mov byte [ebp - 4], 0x19
call fcn.0041053b
push eax
lea ecx, [ebp - 0x14]
call fcn.0041053b
push eax
mov ecx, esi
call fcn.0046f7a7
lea ecx, [ebp - 0x88]
mov edi, eax
mov byte [ebp - 4], 9
call fcn.0046c488
jmp 0x442b0d
push 3
pop edi
mov eax, edi
sub eax, 3
je 0x442b21
dec eax
dec eax
jne 0x442b26
mov dword [ebp - 0x18], 1
jmp 0x442b26
call fcn.00420d03
call fcn.0044f311
test eax, eax
jne 0x442b3c
push 1
lea ecx, [ebp - 0x2b4]
call fcn.0046d200
xor edi, edi
cmp dword [ebp - 0x34], edi
jne 0x442c53
cmp dword [0x4ad0fc], edi
jne 0x442c53
cmp dword [ebp - 0x18], edi
jne 0x442ec1
cmp dword [ebx + 0xd4], edi
jne 0x4428ad
push dword [ebp - 0x10]
call fcn.00420dc1
cmp dword [ebx + 0xb8], eax
pop ecx
je 0x4428ad
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push ecx
mov dword [ebp - 0x2c], edi
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.ERR_DECOMP_CRC
call fcn.0046c4f6
lea eax, [ebp - 0x78]
push eax
call fcn.0044f275
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x1a
call fcn.0046c575
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 9
call fcn.0046c488
call fcn.0044f311
test eax, eax
jne 0x442c21
push eax
lea ecx, [ebp - 0x2b4]
call fcn.0046d200
push 0x32
push ecx
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.DLG_ERROR
call fcn.0046c4f6
lea eax, [ebp - 0x84]
push eax
call fcn.0044f275
pop ecx
pop ecx
mov ecx, eax
mov byte [ebp - 4], 0x1b
call fcn.0041053b
push eax
lea ecx, [ebp - 0x14]
call fcn.0041053b
push eax
mov ecx, esi
call fcn.0046f7a7
lea ecx, [ebp - 0x84]
mov edi, eax
mov byte [ebp - 4], 9
call fcn.0046c488
jmp 0x442c24
push 3
pop edi
mov eax, edi
sub eax, 3
je 0x442c38
dec eax
dec eax
jne 0x442c3d
mov dword [ebp - 0x18], 1
jmp 0x442c3d
call fcn.00420d03
call fcn.0044f311
test eax, eax
jne 0x442c53
push 1
lea ecx, [ebp - 0x2b4]
call fcn.0046d200
xor edi, edi
cmp dword [ebp - 0x18], edi
je 0x4428ad
cmp dword [ebp - 0x34], edi
jne 0x442ec1
cmp dword [0x4ad0fc], edi
jne 0x442ec1
cmp dword [ebp - 0x18], edi
jne 0x442ec1
cmp dword [esi + 0xd0], edi
je 0x442e0e
lea edi, [esi + 0xd4]
push 0x80
mov eax, dword [edi]
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
mov eax, dword [edi]
push 0
push eax
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
jne 0x442dec
mov eax, dword [0x4a94a4]
mov dword [ebp - 0x18], eax
push dword [ebp - 0x10]
lea eax, [ebp - 0x18]
mov byte [ebp - 4], 0x1c
push str.__On_Reboot__s__r_n
push eax
call fcn.00469ec1
add esp, 0xc
lea ecx, [esi + 0x414]
push dword [ebp - 0x18]
call fcn.004456bc
mov eax, dword [edi]
push 5
push eax
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_MoveFileExA]
cmp dword [esi + 0x134], 0
jne 0x442d0d
cmp dword [esi + 0x138], 0
jne 0x442d0d
cmp dword [esi + 0x13c], 0
je 0x442dab
push str.WININIT.INI
push ecx
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str._WinDir_
call fcn.0046c4f6
lea eax, [ebp - 0x28]
push eax
call fcn.0044f275
pop ecx
pop ecx
push eax
lea eax, [ebp - 0x54]
push eax
mov byte [ebp - 4], 0x1d
call fcn.0046c6d1
mov ebx, dword [eax]
push dword [ebp - 0x10]
lea eax, [ebp - 0x94]
mov byte [ebp - 4], 0x1e
push eax
call fcn.0041d210
mov eax, dword [eax]
push dword [edi]
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x80]
push eax
mov byte [ebp - 4], 0x1f
call fcn.0041d210
mov eax, dword [eax]
add esp, 0x10
push ebx
push dword [ebp - 0x2c]
push eax
push str.Rename
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x80]
call fcn.0046c488
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x1e
call fcn.0046c488
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x1d
call fcn.0046c488
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x1c
call fcn.0046c488
mov ebx, dword [ebp - 0x3c]
push ecx
mov byte [ebx + 5], 1
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.TRUE
call fcn.0046c4f6
push ecx
mov byte [ebp - 4], 0x20
mov ecx, esp
mov dword [ebp - 0x3c], esp
push str._NeedsReboot_
call fcn.0046c4f6
mov byte [ebp - 4], 0x1c
call fcn.0044f227
pop ecx
mov byte [ebp - 4], 9
pop ecx
lea ecx, [ebp - 0x18]
call fcn.0046c488
jmp 0x442e0e
push str.__Installed__r_n
lea ecx, [esi + 0x414]
call fcn.004456bc
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push edi
lea ecx, [ebp - 0x10]
call fcn.0046c575
lea eax, [ebp - 0x3cc]
push eax
push dword [ebp - 0x10]
call fcn.0046cd24
test eax, eax
je 0x442ea7
and dword [ebp - 0x3c0], 0
mov eax, dword [ebx + 0x24]
cmp eax, 0xffffffff
mov dword [ebp - 0x3cc], eax
jne 0x442e4e
lea eax, [ebp - 0xb0]
push eax
call fcn.004695b3
mov eax, dword [eax]
mov dword [ebp - 0x3cc], eax
mov eax, dword [ebx + 0x2c]
cmp eax, 0xffffffff
mov dword [ebp - 0x3c8], eax
jne 0x442e70
lea eax, [ebp - 0xb4]
push eax
call fcn.004695b3
mov eax, dword [eax]
mov dword [ebp - 0x3c8], eax
mov eax, dword [ebx + 0x28]
cmp eax, 0xffffffff
mov dword [ebp - 0x3c4], eax
jne 0x442e8f
lea eax, [ebp - 0x44]
push eax
call fcn.004695b3
mov eax, dword [eax]
mov dword [ebp - 0x3c4], eax
mov al, byte [ebx + 0x20]
mov byte [ebp - 0x3bc], al
lea eax, [ebp - 0x3cc]
push eax
push dword [ebp - 0x10]
call fcn.0046ce89
cmp byte [ebx + 0x84], 0
jne 0x442ee6
push dword [ebx + 0x88]
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
jmp 0x442ee6
push str._ERROR_r_n
lea ecx, [esi + 0x414]
call fcn.004456bc
jmp 0x442ee6
push str.__Skipped__r_n
lea ecx, [esi + 0x414]
call fcn.004456bc
mov ebx, dword [ebp - 0x3c]
cmp byte [ebx + 4], 0
je 0x442f4b
mov eax, dword [ebx + 0x1c]
and dword [ebp - 0xa8], 0
add dword [esi + 0x124], eax
mov eax, dword [esi + 0x124]
and dword [ebp - 0xa0], 0
mov dword [ebp - 0xac], eax
mov eax, dword [esi + 0x120]
fild qword [ebp - 0xac]
mov dword [ebp - 0xa4], eax
fild qword [ebp - 0xa4]
fdivp st(1)
fmul qword [0x486a50]
call fcn.0045de7c
mov edi, eax
call fcn.0044f311
test eax, eax
jne 0x442f4b
push edi
lea ecx, [ebp - 0x2b4]
call fcn.0044fb16
lea ecx, [esi + 0x414]
call fcn.004456cd
cmp dword [ebp - 0x20], 0
jne 0x442621
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 8
call fcn.0046c488
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 7
call fcn.0046c488
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 6
call fcn.0046c488
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 5
call fcn.0046c488
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 4
call fcn.0046c488
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 3
call fcn.0046c488
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 2
call fcn.0046c488
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 1
call fcn.0046c488
and byte [ebp - 4], 0
lea ecx, [ebp - 0x4c]
call fcn.0046c488
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2b4]
call fcn.0044f679
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret