Function at 0x4761b0
Capabilities:
Copy file
Get common file path

Disassembly:
push ebp
mov ebp, esp
push eax
mov eax, 9
add esp, 0xfffff004
push eax
dec eax
jne 0x4761b9
mov eax, dword [ebp - 4]
add esp, 0xfffffe2c
push ebx
push esi
push edi
mov esi, 0x4a9504
lea edi, [ebp - 0x5d90]
mov eax, 0x4a97dc
call fcn.00495294
push 0x414
push 0
lea edx, [ebp - 0x38c0]
push edx
call fcn.00494ce4
add esp, 0xc
cmp dword [0x4c4ce0], 0
je 0x47621a
lea edx, [ebp - 0x38c0]
mov eax, 0x4c309c
xor ecx, ecx
call fcn.00462684
jmp 0x47631f
mov word [ebp - 0x347c], 8
lea eax, [ebp - 0xf8]
call fcn.0040f5f8
add dword [ebp - 0x3470], 4
mov word [ebp - 0x347c], 0x14
lea edx, [ebp - 0xf8]
mov eax, 0x4c2354
xor ecx, ecx
call fcn.00468fcc
cmp dword [ebp - 0xc8], 0
jne 0x4762a5
push 0x30
mov eax, 0x65
call fcn.0041202c
push eax
mov eax, 0x14c
call fcn.0041202c
push eax
push dword [0x4c2340]
call sub.USER32.DLL_MessageBoxA
sub dword [ebp - 0x3470], 4
lea eax, [ebp - 0xf8]
mov edx, 2
call fcn.0040f6d0
mov ecx, dword [ebp - 0x348c]
mov dword fs:[0], ecx
jmp 0x477230
cmp dword [ebp - 0xc8], 1
jne 0x4762cc
push 0x400
push 0
lea edx, [ebp - 0x38c0]
lea eax, [ebp - 0xf8]
xor ecx, ecx
call fcn.0040f868
test al, al
jne 0x4762ff
lea eax, [ebp - 0x3cc0]
push eax
push 0x400
call sub.KERNEL32.DLL_GetCurrentDirectoryA
lea eax, [ebp - 0x3cc0]
call fcn.0040ba60
cmp byte [eax], 0
jne 0x4762ef
mov eax, esi
push eax
lea edx, [ebp - 0x38c0]
push edx
call fcn.00494e64
add esp, 8
sub dword [ebp - 0x3470], 4
lea eax, [ebp - 0xf8]
mov edx, 2
call fcn.0040f6d0
mov word [ebp - 0x347c], 0
cmp dword [0x4c4ce0], 0
je 0x47632d
lea ebx, [esi + 8]
jmp 0x476330
lea ebx, [esi + 0x1c]
lea edx, [esi + 0x31]
mov ecx, 1
mov eax, ebx
call fcn.0046c29c
test eax, eax
setne al
and eax, 1
mov byte [ebp - 0x34be], al
cmp byte [ebp - 0x34be], 0
je 0x47635b
lea edx, [esi + 0x36]
jmp 0x47635e
lea edx, [esi + 0x3a]
lea eax, [ebp - 0x38c0]
call fcn.0040bd90
xor ebx, ebx
jmp 0x4763c9
lea eax, [ebp - 0x38c0]
xor edx, edx
call fcn.0040bd90
lea eax, [ebp - 0x38c0]
xor edx, edx
call fcn.0040bd90
push ebx
lea ecx, [esi + 0x3e]
push ecx
lea eax, [ebp - 0x3498]
push eax
call fcn.00497dc4
add esp, 0xc
lea edx, [ebp - 0x3498]
lea eax, [ebp - 0x38c0]
call fcn.0040bd90
cmp byte [ebp - 0x34be], 0
je 0x4763ba
lea edx, [esi + 0x36]
jmp 0x4763bd
lea edx, [esi + 0x3a]
lea eax, [ebp - 0x38c0]
call fcn.0040bd90
inc ebx
cmp ebx, 0x3e8
jge 0x4763e2
lea eax, [ebp - 0x38c0]
xor edx, edx
call fcn.0040a504
test al, al
jne 0x47636d
lea ecx, [ebp - 0x38c0]
lea eax, [esi + 0x42]
push ecx
push 0x477238
push dword [0x4c2340]
push eax
push dword [0x4af654]
call sub.USER32.DLL_DialogBoxParamA
test eax, eax
jne 0x476419
mov edx, dword [ebp - 0x348c]
mov dword fs:[0], edx
jmp 0x477230
lea edx, [ebp - 0x40c0]
lea eax, [esi + 0x49]
call fcn.0046e748
test al, al
jne 0x47643d
mov ecx, dword [ebp - 0x348c]
mov dword fs:[0], ecx
jmp 0x477230
lea eax, [ebp - 0x40c0]
call fcn.0040bf64
lea eax, [ebp - 0x38c0]
call fcn.0040ba60
cmp byte [eax], 0
jne 0x476469
cmp byte [ebp - 0x34be], 0
je 0x476466
lea eax, [esi + 0x56]
jmp 0x476469
lea eax, [esi + 0x61]
push eax
lea edx, [ebp - 0x40c0]
push edx
call fcn.00494d88
add esp, 8
lea ecx, [esi + 0x6c]
push ecx
lea eax, [ebp - 0x40c0]
push eax
call fcn.00496d9c
add esp, 8
mov ebx, eax
test ebx, ebx
jne 0x4764b4
lea edx, [ebp - 0x40c0]
mov eax, 0x4af020
call fcn.0042cdf8
mov ecx, dword [ebp - 0x348c]
mov dword fs:[0], ecx
jmp 0x477230
push 0
lea edx, [esi + 7]
xor ecx, ecx
mov eax, 0xa
call fcn.0047cca0
mov byte [ebp - 0x3499], al
mov eax, 0x556
call fcn.0041202c
call fcn.0047e9a0
mov byte [ebp - 0x349a], 1
push 0x1c
push 0
lea edx, [ebp - 0x40dc]
push edx
call fcn.00494ce4
add esp, 0xc
cmp dword [0x4c4ce0], 0
jne 0x47650a
cmp byte [ebp - 0x34b6], 0
je 0x47650a
xor ecx, ecx
jmp 0x47650f
mov ecx, 1
mov byte [ebp - 0x40c4], cl
mov word [ebp - 0x347c], 0x20
lea eax, [ebp - 0x208]
call fcn.0046b638
add dword [ebp - 0x3470], 6
mov word [ebp - 0x347c], 0x2c
mov word [ebp - 0x347c], 0x38
lea eax, [ebp - 0x318]
call fcn.0046b638
add dword [ebp - 0x3470], 6
mov word [ebp - 0x347c], 0x2c
cmp dword [0x4c4ce0], 0
je 0x4765ac
lea ecx, [ebp - 0x4cdc]
lea edx, [ebp - 0x44dc]
mov eax, 0x4c309c
call fcn.00462684
lea edx, [ebp - 0x318]
lea ecx, [ebp - 0x40dc]
push edx
push ecx
lea ecx, [ebp - 0x208]
lea edx, [ebp - 0x4cdc]
lea eax, [ebp - 0x44dc]
call fcn.004778cc
mov byte [ebp - 0x349a], al
jmp 0x4768e7
mov word [ebp - 0x347c], 0x44
lea eax, [ebp - 0x410]
call fcn.0040f5f8
add dword [ebp - 0x3470], 4
mov word [ebp - 0x347c], 0x50
lea edx, [ebp - 0x410]
mov eax, 0x4c2354
xor ecx, ecx
call fcn.00468fcc
mov word [ebp - 0x347c], 0x5c
push 0
push 1
lea edx, [ebp - 0x410]
lea eax, [ebp - 0x283c]
mov ecx, 2
call fcn.00412cdc
inc dword [ebp - 0x3470]
mov word [ebp - 0x347c], 0x50
lea eax, [edi + 0xc14]
call fcn.004137a4
lea eax, [edi + 0xc40]
call fcn.004137a4
lea eax, [edi + 0xc6c]
call fcn.004137a4
jmp 0x47689c
call fcn.004483d0
cmp byte [ebp - 0x34b6], 0
je 0x47683a
push 0xc30
push 0
lea edx, [ebp - 0x69c0]
push edx
call fcn.00494ce4
add esp, 0xc
push edi
lea ecx, [ebp - 0x69c0]
push ecx
call fcn.00494e64
add esp, 8
lea edx, [edi + 0x400]
lea eax, [ebp - 0x65c0]
call fcn.0041023c
mov eax, dword [edi + 0xc00]
mov edx, dword [edi + 0xc04]
mov dword [ebp - 0x5db8], eax
mov dword [ebp - 0x5db4], edx
mov dword [ebp - 0x5dc0], eax
mov dword [ebp - 0x5dbc], edx
cmp byte [ebp - 0x34b2], 0
je 0x476713
test byte [edi + 0xc09], 8
je 0x476713
call fcn.0040ffc8
test eax, eax
je 0x476713
lea ecx, [ebp - 0x34a4]
push ecx
push edi
call sub.KERNEL32.DLL_GetCompressedFileSizeA
mov dword [ebp - 0x34a0], eax
cmp dword [ebp - 0x34a0], 0xffffffff
jne 0x4766e7
call sub.KERNEL32.DLL_GetLastError
test eax, eax
jne 0x476713
mov eax, dword [ebp - 0x34a4]
xor edx, edx
mov edx, eax
xor eax, eax
push edx
push eax
mov eax, dword [ebp - 0x34a0]
xor edx, edx
add eax, dword [esp]
adc edx, dword [esp + 4]
add esp, 8
mov dword [ebp - 0x5db8], eax
mov dword [ebp - 0x5db4], edx
mov ecx, dword [edi + 0xc08]
mov dword [ebp - 0x5db0], ecx
mov eax, dword [edi + 0x10a8]
mov dword [ebp - 0x5dac], eax
mov eax, dword [edi + 0x10ac]
mov dword [ebp - 0x5da8], eax
mov edx, dword [ebp - 0x40c8]
inc dword [ebp - 0x40c8]
mov dword [ebp - 0x5d9c], edx
inc dword [ebp - 0x40dc]
mov eax, dword [ebp - 0x5dc0]
mov edx, dword [ebp - 0x5dbc]
add dword [ebp - 0x40d8], eax
adc dword [ebp - 0x40d4], edx
mov eax, dword [ebp - 0x5db8]
mov edx, dword [ebp - 0x5db4]
add dword [ebp - 0x40d0], eax
adc dword [ebp - 0x40cc], edx
cmp byte [ebp - 0x34b0], 0
je 0x476817
mov eax, dword [ebp - 0x5db0]
call fcn.0040a67c
test al, al
jne 0x476817
mov word [ebp - 0x347c], 0x68
lea eax, [ebp - 0x345c]
call fcn.00409448
inc dword [ebp - 0x3470]
mov word [ebp - 0x347c], 0x74
push 0
push 0
lea ecx, [edi + 0x400]
mov edx, edi
lea eax, [ebp - 0x345c]
call fcn.00409540
test al, al
je 0x4767f8
push 0x80000000
push 0
lea eax, [ebp - 0x345c]
call fcn.0040aae8
mov dword [ebp - 0x5da0], eax
or dword [ebp - 0x5da4], 8
dec dword [ebp - 0x3470]
lea eax, [ebp - 0x345c]
mov edx, 2
call fcn.004094f8
mov word [ebp - 0x347c], 0x50
lea edx, [ebp - 0x69c0]
lea eax, [ebp - 0x208]
call fcn.0046b778
cmp byte [ebp - 0xfc], 0
je 0x47683a
mov byte [ebp - 0x349a], 0
jmp 0x4768b1
cmp dword [0x4c4cf0], 0
jne 0x476893
cmp byte [ebp - 0x34b7], 0
je 0x47689c
cmp byte [edi + 0xc10], 0
jne 0x47689c
push 0
push 2
lea ecx, [edi + 0x400]
mov edx, edi
mov eax, 0x4c309c
call fcn.0046109c
dec eax
jne 0x47689c
lea ecx, [ebp - 0x318]
lea eax, [ebp - 0x40dc]
push ecx
push eax
mov eax, edi
lea ecx, [ebp - 0x208]
lea edx, [edi + 0x400]
call fcn.004778cc
test al, al
jne 0x47689c
mov byte [ebp - 0x349a], 0
jmp 0x4768b1
mov edx, edi
lea eax, [ebp - 0x283c]
call fcn.00412e10
test eax, eax
je 0x47663a
dec dword [ebp - 0x3470]
lea eax, [ebp - 0x283c]
mov edx, 2
call fcn.00412db4
sub dword [ebp - 0x3470], 4
lea eax, [ebp - 0x410]
mov edx, 2
call fcn.0040f6d0
mov word [ebp - 0x347c], 0x2c
cmp byte [ebp - 0x349a], 0
je 0x4771a0
lea eax, [ebp - 0x208]
call fcn.0046ba2c
lea eax, [ebp - 0x318]
call fcn.0046ba2c
cmp dword [ebp - 0x34bc], 6
je 0x476942
push 0x476078
push 0x38
push dword [ebp - 0x104]
lea edx, [ebp - 0x38c0]
lea eax, [ebp - 0x208]
mov dword [0x4d0cc8], edx
xor edx, edx
call fcn.0046bb1c
push eax
call fcn.0049bc34
add esp, 0x10
cmp byte [ebp - 0x34be], 0
je 0x4769ec
lea eax, [ebp - 0x6e84]
call fcn.004137a4
mov word [ebp - 0x347c], 0x2c
lea eax, [ebp - 0x6e84]
call fcn.00413c58
push esi
lea esi, [ebp - 0x6e84]
lea edi, [ebp - 0x6ea8]
mov ecx, 9
rep movsd dword es:[edi], dword [esi]
pop esi
push dword [ebp - 0x6e98]
push dword [ebp - 0x6e9c]
push dword [ebp - 0x6ea0]
push dword [ebp - 0x6ea4]
push dword [ebp - 0x6ea8]
lea eax, [esi + 0x70]
push eax
lea edx, [ebp - 0x6e58]
push edx
call fcn.00497dc4
add esp, 0x1c
lea ecx, [ebp - 0x6e58]
push ecx
mov eax, 0x55b
call fcn.0041202c
push eax
lea edx, [ebp - 0x6e24]
push edx
call fcn.00497dc4
add esp, 0xc
lea ecx, [ebp - 0x6e24]
push ecx
lea eax, [esi + 0x87]
push eax
push ebx
call fcn.00496dd0
add esp, 0xc
xor edx, edx
mov dword [ebp - 0x34a8], edx
mov word [ebp - 0x347c], 0x2c
xor edi, edi
jmp 0x476cdc
mov byte [ebp - 0x76a8], 0
lea ecx, [ebp - 0x82d8]
lea eax, [ebp - 0x208]
mov edx, edi
call fcn.0046b960
mov word [ebp - 0x347c], 0x2c
cmp byte [ebp - 0x34b5], 0
je 0x476af6
mov eax, dword [ebp - 0x76ac]
cmp eax, dword [ebp - 0x34a8]
je 0x476af6
mov edx, dword [ebp - 0x76ac]
mov dword [ebp - 0x34a8], edx
cmp byte [ebp - 0x34be], 0
je 0x476a6b
lea ecx, [esi + 0xc3]
push ecx
push ebx
call fcn.00496dd0
add esp, 8
lea eax, [esi + 0xc7]
push eax
push ebx
call fcn.00496dd0
add esp, 8
cmp dword [ebp - 0x76ac], 0
je 0x476ab9
lea ecx, [ebp - 0x8f08]
mov edx, dword [ebp - 0x76ac]
dec edx
lea eax, [ebp - 0x318]
call fcn.0046b960
lea edx, [ebp - 0x8f08]
mov eax, 0x28a
push edx
call fcn.0041202c
push eax
push ebx
call fcn.00496dd0
add esp, 0xc
jmp 0x476acd
mov eax, 0x558
call fcn.0041202c
push eax
push ebx
call fcn.00496dd0
add esp, 8
cmp byte [ebp - 0x34be], 0
je 0x476ae6
lea edx, [esi + 0xcb]
push edx
push ebx
call fcn.00496dd0
add esp, 8
lea ecx, [esi + 0xc0]
push ecx
push ebx
call fcn.00496dd0
add esp, 8
mov eax, dword [ebp - 0x76c8]
call fcn.0040a67c
mov byte [ebp - 0x34a9], al
cmp byte [ebp - 0x34b1], 0
je 0x476b86
lea eax, [ebp - 0x8f34]
call fcn.004137a4
lea edx, [ebp - 0x76c4]
lea eax, [ebp - 0x8f34]
call fcn.004137cc
push esi
push edi
lea esi, [ebp - 0x8f34]
lea edi, [ebp - 0x8f58]
mov ecx, 9
rep movsd dword es:[edi], dword [esi]
pop edi
pop esi
push dword [ebp - 0x8f48]
push dword [ebp - 0x8f4c]
push dword [ebp - 0x8f50]
push dword [ebp - 0x8f54]
push dword [ebp - 0x8f58]
lea eax, [esi + 0xd0]
push eax
lea edx, [ebp - 0x76a8]
push edx
call fcn.00494e94
pop ecx
lea ecx, [ebp - 0x76a8]
add eax, ecx
push eax
call fcn.00497dc4
add esp, 0x1c
cmp byte [ebp - 0x34b3], 0
je 0x476be7
push dword [ebp - 0x76d4]
push dword [ebp - 0x76d8]
lea eax, [ebp - 0x8f78]
call fcn.0040b974
cmp byte [ebp - 0x34a9], 0
je 0x476bbb
mov eax, 0x573
call fcn.0041202c
jmp 0x476bc1
lea eax, [ebp - 0x8f78]
push eax
lea edx, [esi + 0xe9]
push edx
lea ecx, [ebp - 0x76a8]
push ecx
call fcn.00494e94
pop ecx
lea edx, [ebp - 0x76a8]
add eax, edx
push eax
call fcn.00497dc4
add esp, 0xc
cmp byte [ebp - 0x34b2], 0
je 0x476c48
push dword [ebp - 0x76cc]
push dword [ebp - 0x76d0]
lea eax, [ebp - 0x8f98]
call fcn.0040b974
cmp byte [ebp - 0x34a9], 0
je 0x476c1c
mov eax, 0x573
call fcn.0041202c
jmp 0x476c22
lea eax, [ebp - 0x8f98]
push eax
lea edx, [esi + 0xe9]
push edx
lea ecx, [ebp - 0x76a8]
push ecx
call fcn.00494e94
pop ecx
lea edx, [ebp - 0x76a8]
add eax, edx
push eax
call fcn.00497dc4
add esp, 0xc
cmp byte [ebp - 0x34b0], 0
je 0x476cae
test byte [ebp - 0x76bc], 8
je 0x476c87
push dword [ebp - 0x76b8]
lea eax, [esi + 0xf0]
push eax
lea ecx, [ebp - 0x76a8]
push ecx
call fcn.00494e94
pop ecx
lea edx, [ebp - 0x76a8]
add eax, edx
push eax
call fcn.00497dc4
add esp, 0xc
jmp 0x476cae
cmp byte [ebp - 0x34a9], 0
je 0x476c98
lea eax, [esi + 0xf7]
jmp 0x476c9e
lea eax, [esi + 0x102]
push eax
lea edx, [ebp - 0x76a8]
push edx
call fcn.00494d88
add esp, 8
lea ecx, [ebp - 0x82d8]
push ecx
lea eax, [ebp - 0x76a8]
push eax
call fcn.00494d88
add esp, 8
lea edx, [ebp - 0x76a8]
push edx
lea ecx, [esi + 0x10d]
push ecx
push ebx
call fcn.00496dd0
add esp, 0xc
inc edi
cmp edi, dword [ebp - 0x104]
jb 0x476a04
cmp byte [ebp - 0x34b4], 0
je 0x476fae
push dword [ebp - 0x40d4]
push dword [ebp - 0x40d8]
lea eax, [ebp - 0x8fb8]
call fcn.0040b974
push dword [ebp - 0x40cc]
push dword [ebp - 0x40d0]
lea eax, [ebp - 0x8fd8]
call fcn.0040b974
cmp byte [ebp - 0x34be], 0
je 0x476d3c
lea edx, [esi + 0xc3]
push edx
push ebx
call fcn.00496dd0
add esp, 8
lea ecx, [esi + 0x112]
push ecx
push ebx
call fcn.00496dd0
add esp, 8
xor eax, eax
mov byte [ebp - 0x91d8], al
mov byte [ebp - 0x90d8], al
cmp byte [ebp - 0x34b1], 0
je 0x476dbc
mov eax, 0x1aa
call fcn.0041202c
push eax
lea edx, [esi + 0x116]
push edx
lea ecx, [ebp - 0x90d8]
push ecx
call fcn.00494e94
pop ecx
lea edx, [ebp - 0x90d8]
add eax, edx
push eax
call fcn.00497dc4
add esp, 0xc
lea eax, [esi + 7]
push eax
lea ecx, [esi + 0x116]
push ecx
lea eax, [ebp - 0x91d8]
push eax
call fcn.00494e94
pop ecx
lea edx, [ebp - 0x91d8]
add eax, edx
push eax
call fcn.00497dc4
add esp, 0xc
cmp byte [ebp - 0x34b3], 0
je 0x476e21
mov eax, 0x6f
call fcn.0041202c
push eax
lea edx, [esi + 0xe9]
push edx
lea ecx, [ebp - 0x90d8]
push ecx
call fcn.00494e94
pop ecx
lea edx, [ebp - 0x90d8]
add eax, edx
push eax
call fcn.00497dc4
add esp, 0xc
lea eax, [ebp - 0x8fb8]
push eax
lea ecx, [esi + 0xe9]
push ecx
lea eax, [ebp - 0x91d8]
push eax
call fcn.00494e94
pop ecx
lea edx, [ebp - 0x91d8]
add eax, edx
push eax
call fcn.00497dc4
add esp, 0xc
cmp byte [ebp - 0x34b2], 0
je 0x476e86
mov eax, 0x71
call fcn.0041202c
push eax
lea edx, [esi + 0xe9]
push edx
lea ecx, [ebp - 0x90d8]
push ecx
call fcn.00494e94
pop ecx
lea edx, [ebp - 0x90d8]
add eax, edx
push eax
call fcn.00497dc4
add esp, 0xc
lea eax, [ebp - 0x8fd8]
push eax
lea ecx, [esi + 0xe9]
push ecx
lea eax, [ebp - 0x91d8]
push eax
call fcn.00494e94
pop ecx
lea edx, [ebp - 0x91d8]
add eax, edx
push eax
call fcn.00497dc4
add esp, 0xc
cmp byte [ebp - 0x34b0], 0
je 0x476ebb
lea ecx, [esi + 0x120]
push ecx
lea eax, [ebp - 0x90d8]
push eax
call fcn.00494d88
add esp, 8
lea edx, [esi + 0x120]
push edx
lea ecx, [ebp - 0x91d8]
push ecx
call fcn.00494d88
add esp, 8
cmp byte [ebp - 0x90d8], 0
jne 0x476ef0
lea eax, [esi + 0x12b]
push eax
lea edx, [ebp - 0x90d8]
push edx
call fcn.00494e64
add esp, 8
lea ecx, [esi + 0x12b]
push ecx
lea eax, [ebp - 0x91d8]
push eax
call fcn.00494e64
add esp, 8
mov eax, 0x559
call fcn.0041202c
push eax
lea edx, [ebp - 0x90d8]
push edx
call fcn.00494d88
add esp, 8
lea ecx, [esi + 0x12e]
lea eax, [ebp - 0x91d8]
push dword [ebp - 0x40dc]
push ecx
push eax
call fcn.00494e94
pop ecx
lea edx, [ebp - 0x91d8]
add eax, edx
push eax
call fcn.00497dc4
add esp, 0xc
xor ecx, ecx
mov cl, byte [ebp - 0x90d8]
cmp ecx, 0x20
jne 0x476f56
xor eax, eax
mov al, byte [ebp - 0x90d7]
cmp eax, 0x20
jne 0x476f56
mov byte [ebp - 0x90d8], 0x23
xor edx, edx
mov dl, byte [ebp - 0x91d8]
cmp edx, 0x20
jne 0x476f77
xor ecx, ecx
mov cl, byte [ebp - 0x91d7]
cmp ecx, 0x20
jne 0x476f77
mov byte [ebp - 0x91d8], 0x23
lea eax, [ebp - 0x91d8]
push eax
lea edx, [ebp - 0x90d8]
push edx
lea ecx, [esi + 0x131]
push ecx
push ebx
call fcn.00496dd0
add esp, 0x10
cmp byte [ebp - 0x34be], 0
je 0x476fae
lea eax, [esi + 0xcb]
push eax
push ebx
call fcn.00496dd0
add esp, 8
cmp byte [ebp - 0x34be], 0
je 0x476fc7
lea edx, [esi + 0x13a]
push edx
push ebx
call fcn.00496dd0
add esp, 8
cmp byte [ebp - 0x34bf], 0
je 0x477114
push ebx
call fcn.00496948
pop ecx
xor ecx, ecx
mov cl, byte [ebx + 0x16]
push ecx
call fcn.00496b14
pop ecx
mov esi, eax
cmp esi, 0xffffffff
je 0x477114
mov word [ebp - 0x347c], 0x80
mov word [ebp - 0x347c], 0x8c
lea edx, [esi + 1]
lea eax, [ebp - 0x3468]
call fcn.00401c08
inc dword [ebp - 0x3470]
mov word [ebp - 0x347c], 0x98
push 0
push 0
push ebx
call fcn.004970b4
add esp, 0xc
push ebx
push esi
push 1
push dword [ebp - 0x3468]
call fcn.00497014
add esp, 0x10
mov eax, dword [ebp - 0x3468]
mov byte [eax + esi], 0
call fcn.004484c4
dec dword [ebp - 0x3470]
lea eax, [ebp - 0x3468]
mov edx, 2
call fcn.00401c80
mov word [ebp - 0x347c], 0x80
mov word [ebp - 0x347c], 0x2c
jmp 0x477114
push ebx
call fcn.004968a0
cmp byte [ebp - 0x38c0], 0
pop ecx
je 0x47714d
push 0
lea edx, [ebp - 0x38c0]
push edx
lea ecx, [ebp - 0x40c0]
push ecx
call sub.KERNEL32.DLL_CopyFileA
test eax, eax
jne 0x47714d
lea edx, [ebp - 0x38c0]
mov eax, 0x4af020
call fcn.0042cdf8
cmp byte [ebp - 0x34c0], 0
je 0x477163
lea eax, [ebp - 0x40c0]
xor edx, edx
call fcn.00474bd0
cmp byte [ebp - 0x34c0], 0
jne 0x477177
lea eax, [ebp - 0x40c0]
call fcn.0044840c
cmp dword [0x4c4ce0], 0
jne 0x4771a0
cmp byte [ebp - 0x38c0], 0
je 0x4771a0
lea eax, [ebp - 0x38c0]
call fcn.0040ba60
mov edx, eax
mov eax, 0x4c2354
call fcn.004638e8
dec dword [ebp - 0x3470]
dec dword [ebp - 0x3470]
lea eax, [ebp - 0x220]
mov edx, 2
call fcn.0043cc44
sub dword [ebp - 0x3470], 4
lea eax, [ebp - 0x318]
mov edx, 2
call fcn.0040f6d0
dec dword [ebp - 0x3470]
dec dword [ebp - 0x3470]
lea eax, [ebp - 0x110]
mov edx, 2
call fcn.0043cc44
sub dword [ebp - 0x3470], 4
lea eax, [ebp - 0x208]
mov edx, 2
call fcn.0040f6d0
mov word [ebp - 0x347c], 0
cmp byte [ebp - 0x3499], 0
je 0x477223
push dword [0x4c234c]
call sub.USER32.DLL_DestroyWindow
mov ecx, dword [ebp - 0x348c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret