Function at 0x48456c
Capabilities:
Get common file path
Move file

Disassembly:
push ebp
mov ebp, esp
push eax
mov eax, 9
add esp, 0xfffff004
push eax
dec eax
jne 0x484575
mov eax, dword [ebp - 4]
add esp, 0xffffffac
push ebx
push esi
push edi
mov dword [ebp - 0x730], eax
mov esi, 0x4b99b8
mov edi, 0x4c5bc4
mov eax, 0x4ad414
call fcn.004980b0
call sub.KERNEL32.DLL_GetTickCount
push eax
push dword [0x4ac6e8]
push 0x4ac994
push 0x4d4570
call fcn.0049abd0
add esp, 0x10
mov word [ebp - 0x71c], 8
lea eax, [ebp - 0x518]
call fcn.00460710
add dword [ebp - 0x710], 6
inc dword [ebp - 0x710]
lea edx, [ebp - 0x518]
mov word [ebp - 0x71c], 0x14
mov byte [ebp - 4], 0
cmp dword [0x4c7804], 0
mov dword [ebp - 0x734], edx
je 0x4846ce
lea ecx, [ebp - 0x13a4]
lea edx, [ebp - 0xba4]
mov eax, edi
call fcn.00457598
push 0xc30
push 0
lea ecx, [ebp - 0x1fd4]
push ecx
call fcn.00497b00
add esp, 0xc
lea eax, [ebp - 0xba4]
push eax
lea edx, [ebp - 0x1fd4]
push edx
call fcn.00497c80
add esp, 8
lea edx, [ebp - 0x13a4]
lea eax, [ebp - 0x1bd4]
call fcn.0041077c
lea eax, [ebp - 0x2474]
call fcn.00413d60
lea eax, [ebp - 0x2448]
call fcn.00413d60
lea eax, [ebp - 0x241c]
call fcn.00413d60
push 0
lea ecx, [ebp - 0x3088]
lea edx, [ebp - 0x13a4]
lea eax, [ebp - 0xba4]
call fcn.00412e78
test al, al
je 0x4846ad
mov edx, dword [ebp - 0x2488]
mov dword [ebp - 0x13d4], edx
mov edx, dword [ebp - 0x2484]
mov dword [ebp - 0x13d0], edx
lea edx, [ebp - 0x1fd4]
mov eax, dword [ebp - 0x734]
call fcn.0046082c
mov eax, dword [ebp - 0x734]
call fcn.00460ae0
jmp 0x4847fd
mov word [ebp - 0x71c], 0x20
lea eax, [ebp - 0x610]
call fcn.0040fa70
add dword [ebp - 0x710], 4
mov word [ebp - 0x71c], 0x2c
lea edx, [ebp - 0x610]
mov dword [ebp - 0x738], edx
cmp dword [ebp - 0x730], 0
je 0x484715
mov ecx, dword [ebp - 0x730]
mov dword [ebp - 0x738], ecx
jmp 0x484727
lea edx, [ebp - 0x610]
mov eax, 0x4c4e78
xor ecx, ecx
call fcn.0045dfc4
push 1
push 1
push 1
push 0
push 0
mov ecx, dword [ebp - 0x734]
mov edx, 2
mov eax, dword [ebp - 0x738]
call fcn.00464838
test al, al
jne 0x4847ad
sub dword [ebp - 0x710], 4
lea eax, [ebp - 0x610]
mov edx, 2
call fcn.0040fb48
dec dword [ebp - 0x710]
dec dword [ebp - 0x710]
dec dword [ebp - 0x710]
lea eax, [ebp - 0x420]
mov edx, 2
call fcn.0043d588
sub dword [ebp - 0x710], 4
lea eax, [ebp - 0x518]
mov edx, 2
call fcn.0040fb48
mov ecx, dword [ebp - 0x72c]
mov dword fs:[0], ecx
jmp 0x485a01
xor ebx, ebx
jmp 0x4847cd
mov edx, ebx
mov eax, dword [ebp - 0x734]
call fcn.00460bd0
mov word [ebp - 0x71c], 0x2c
xor ecx, ecx
mov dword [eax + 8], ecx
inc ebx
mov eax, dword [ebp - 0x734]
mov edx, dword [eax + 0x104]
cmp edx, ebx
ja 0x4847b1
sub dword [ebp - 0x710], 4
lea eax, [ebp - 0x610]
mov edx, 2
call fcn.0040fb48
mov word [ebp - 0x71c], 0x14
mov edx, 0x4d4570
mov eax, dword [0x4ac6e8]
call fcn.004616bc
xor ecx, ecx
lea eax, [ebp - 0x518]
mov dword [ebp - 0x73c], ecx
mov word [ebp - 0x71c], 0x14
push eax
push 0x47f84e
push dword [0x4c4e64]
push 0x4ac999
push dword [0x4b2148]
call sub.USER32.DLL_DialogBoxParamA
test eax, eax
je 0x48599b
mov edx, 0x4ac9a4
mov eax, 0x4d4570
xor ecx, ecx
call fcn.0046139c
test eax, eax
jne 0x484872
cmp dword [0x4c7808], 1
jne 0x48486e
cmp byte [esi + 0x32b6], 0
jne 0x484872
xor edx, edx
jmp 0x484877
mov edx, 1
mov byte [ebp - 0x73d], dl
push 0
mov cl, byte [ebp - 0x73d]
xor edx, edx
mov eax, 8
call fcn.00472a98
lea eax, [ebp - 0x3908]
push eax
push 0x400
call sub.KERNEL32.DLL_GetCurrentDirectoryA
mov dword [ebp - 0x748], 0
mov dword [ebp - 0x744], 0
mov dword [ebp - 0x750], 0
mov dword [ebp - 0x74c], 0
xor edx, edx
mov dword [0x4c8168], 0
mov dword [0x4c816c], 0
mov dword [ebp - 0x754], edx
xor ebx, ebx
jmp 0x484921
mov edx, ebx
mov eax, dword [ebp - 0x734]
call fcn.00460bd0
mov ecx, eax
mov word [ebp - 0x71c], 0x14
test byte [ecx + 8], 8
je 0x484920
mov eax, dword [ecx + 0xc]
mov edx, dword [ecx + 0x10]
add dword [0x4c8168], eax
adc dword [0x4c816c], edx
inc dword [ebp - 0x754]
inc ebx
mov eax, dword [ebp - 0x734]
mov edx, dword [eax + 0x104]
cmp edx, ebx
ja 0x4848ea
mov eax, dword [ebp - 0x754]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x3508]
mov edx, 0x480
call fcn.0047c9bc
lea ecx, [ebp - 0x3508]
push ecx
push 0x65
push dword [0x4c4e70]
call sub.USER32.DLL_SetDlgItemTextA
mov dword [0x4c8160], 0
mov dword [0x4c8164], 0
xor eax, eax
mov dword [ebp - 0x758], eax
mov dword [ebp - 0x75c], 0xffffffff
jmp 0x4858d5
mov eax, dword [ebp - 0x73c]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x3508]
mov edx, 0x480
call fcn.0047c9bc
lea ecx, [ebp - 0x3508]
push ecx
push 0x66
push dword [0x4c4e70]
call sub.USER32.DLL_SetDlgItemTextA
push dword [ebp - 0x744]
push dword [ebp - 0x748]
lea eax, [ebp - 0x3508]
mov edx, 0x480
call fcn.0047c9bc
lea ecx, [ebp - 0x3508]
push ecx
push 0x67
push dword [0x4c4e70]
call sub.USER32.DLL_SetDlgItemTextA
push dword [ebp - 0x74c]
push dword [ebp - 0x750]
lea eax, [ebp - 0x3508]
mov edx, 0x480
call fcn.0047c9bc
lea ecx, [ebp - 0x3508]
push ecx
push 0x68
push dword [0x4c4e70]
call sub.USER32.DLL_SetDlgItemTextA
cmp dword [ebp - 0x75c], 0xffffffff
je 0x484a60
lea ecx, [ebp - 0x4538]
mov edx, dword [ebp - 0x75c]
mov eax, dword [ebp - 0x734]
call fcn.00460a14
lea eax, [ebp - 0x4538]
mov edx, dword [eax + 0xc04]
mov eax, dword [eax + 0xc00]
add dword [0x4c8160], eax
adc dword [0x4c8164], edx
mov dword [ebp - 0x75c], 0xffffffff
call fcn.00474bac
mov ecx, dword [ebp - 0x734]
mov eax, dword [ecx + 0x104]
cmp eax, dword [ebp - 0x758]
jbe 0x4858eb
mov edx, dword [ebp - 0x758]
mov eax, dword [ebp - 0x734]
call fcn.00460bd0
mov ebx, eax
mov word [ebp - 0x71c], 0x14
test byte [ebx + 8], 8
je 0x4858cf
mov eax, dword [ebp - 0x758]
mov dword [ebp - 0x75c], eax
push 0
push 1
mov eax, edi
mov ecx, dword [ebx + 4]
mov edx, dword [ebx]
call fcn.00455fa0
dec eax
jne 0x4858cf
lea edx, [ebp - 0x45d4]
mov eax, edi
call fcn.004575cc
lea eax, [ebp - 0x4a74]
call fcn.00413d60
lea eax, [ebp - 0x4a48]
call fcn.00413d60
lea eax, [ebp - 0x4a1c]
call fcn.00413d60
push 0
lea ecx, [ebp - 0x5688]
mov edx, dword [ebx + 4]
mov eax, dword [ebx]
call fcn.00412e78
test al, al
je 0x4858cf
cmp byte [esi + 0x1c18], 0
jne 0x484b3a
cmp dword [ebp - 0x4548], 0
je 0x484b3a
mov eax, 0x50e
call fcn.004125d0
push eax
push dword [ebx]
call fcn.0047d240
add esp, 8
jmp 0x4858cf
lea edx, [ebp - 0x5a88]
mov eax, 0x4ac9af
call fcn.00463a04
test al, al
je 0x4858cf
lea edx, [ebp - 0x5a88]
push edx
call fcn.00499610
pop ecx
cmp dword [0x4c7808], 1
jne 0x484b6f
mov eax, esi
call fcn.00426444
call fcn.00449558
lea ecx, [esi + 0x4300]
lea edx, [esi + 0x3f00]
mov eax, edi
call fcn.00457598
mov edx, dword [edi + 0x208]
mov dword [esi + 0x2ab0], edx
call fcn.0044a0dc
mov dword [esi + 0x20a4], 1
mov dword [esi + 0x269c], 4
mov dword [esi + 0x26a0], 4
mov edx, 0x4ac857
mov eax, dword [esi + 0x4b00]
call fcn.0040fbf4
lea ecx, [esi + 0x3f00]
mov eax, 0x20a
push ecx
call fcn.004125d0
push eax
lea edx, [ebp - 0x3508]
push edx
call fcn.0049abd0
add esp, 0xc
lea eax, [ebp - 0x3508]
call fcn.004749b0
call fcn.00486b94
mov dword [ebp - 0x760], eax
mov eax, edi
xor ecx, ecx
xor edx, edx
call fcn.0045249c
cmp dword [0x4c7818], 0
jne 0x4858a8
call fcn.00486b94
cmp eax, dword [ebp - 0x760]
jne 0x4858a8
mov eax, 0x4d4570
call fcn.00449db8
mov edx, dword [esi + 0x20ec]
mov dword [ebp - 0x764], edx
mov byte [esi + 0x21ce], 0
cmp byte [esi + 0x1410], 0
jne 0x484cd1
xor ecx, ecx
mov dword [ebp - 0x768], ecx
xor eax, eax
mov dword [ebp - 0x76c], eax
push 0
lea ecx, [ebp - 0x76c]
lea edx, [ebp - 0x768]
mov eax, edi
call fcn.00457a0c
cmp dword [ebp - 0x76c], 0
jle 0x484cc5
lea edx, [esi + 0x1410]
mov eax, 0x4ac9bc
call fcn.00463984
mov dword [ebp - 0x770], eax
cmp dword [ebp - 0x770], 0
je 0x484cc5
push dword [ebp - 0x770]
push dword [ebp - 0x76c]
push 1
push dword [ebp - 0x768]
call fcn.00499fc8
add esp, 0x10
push dword [ebp - 0x770]
call fcn.004996b8
pop ecx
push dword [ebp - 0x768]
call fcn.004962cc
pop ecx
lea edx, [ebp - 0x5e88]
mov ecx, 0x400
mov eax, dword [ebx]
call fcn.0040c274
lea edx, [ebp - 0x40c]
push edx
lea ecx, [ebp - 0x6288]
push ecx
call fcn.00497c80
add esp, 8
cmp byte [ebp - 0x6288], 0
je 0x484d0d
lea eax, [ebp - 0x6288]
call fcn.0040c22c
mov eax, dword [ebx]
call fcn.0040d348
mov byte [ebp - 0x771], al
cmp dword [esi + 0x2ab0], 0
jne 0x484d2a
mov edx, 0x4ac9c9
jmp 0x484d2f
mov edx, 0x4ac9cd
mov dword [ebp - 0x778], edx
cmp dword [esi + 0x2ab0], 0
jne 0x484d45
mov eax, 0x4ac9d2
jmp 0x484d4a
mov eax, 0x4ac9da
mov dword [ebp - 0x77c], eax
cmp byte [esi + 0x410], 0
je 0x484d6d
mov dword [ebp - 0x778], 0x4ac861
mov dword [ebp - 0x77c], 0x4ac9e2
mov edx, dword [ebp - 0x778]
mov eax, dword [ebx]
call fcn.0040c174
test al, al
je 0x484d9c
cmp byte [ebp - 0x6288], 0
je 0x484da0
lea edx, [ebp - 0x5e88]
lea eax, [ebp - 0x6288]
call fcn.0040f224
test eax, eax
je 0x484da0
xor edx, edx
jmp 0x484da5
mov edx, 1
mov byte [ebp - 0x77d], dl
cmp byte [ebp - 0x77d], 0
je 0x484f24
lea ecx, [ebp - 0x5a88]
push ecx
lea eax, [esi + 0x3f00]
push eax
call fcn.00497c80
add esp, 8
lea eax, [esi + 0x3f00]
call fcn.0040c22c
mov eax, dword [ebx + 4]
test eax, eax
je 0x484e13
cmp word [eax], 0
je 0x484e13
lea edx, [esi + 0x4300]
lea eax, [esi + 0x3f00]
mov ecx, 0x1000000
call fcn.004104b4
mov eax, dword [ebx + 4]
call fcn.0040bdb4
mov edx, eax
lea eax, [esi + 0x4300]
call fcn.004107b0
jmp 0x484e1c
mov word [esi + 0x4300], 0
mov eax, dword [ebx]
call fcn.0040bd28
push eax
lea edx, [esi + 0x3f00]
push edx
call fcn.00497ba4
add esp, 8
lea eax, [esi + 0x3f00]
call fcn.0040c118
mov dword [ebp - 0x784], eax
cmp dword [ebp - 0x784], 0
je 0x4850ae
mov edx, dword [ebp - 0x784]
mov byte [edx], 0
lea eax, [esi + 0x3f00]
call fcn.0040c118
mov dword [ebp - 0x788], eax
mov edx, dword [ebp - 0x784]
mov byte [edx], 0x2e
cmp dword [ebp - 0x788], 0
je 0x4850ae
cmp byte [ebp - 0x771], 0
je 0x4850ae
cmp dword [ebp - 0x45c4], 0
jne 0x4850ae
cmp dword [ebp - 0x4560], 0
je 0x4850ae
push dword [ebp - 0x784]
push dword [ebp - 0x788]
call fcn.00497c80
add esp, 8
lea eax, [esi + 0x4300]
call fcn.0040c150
mov dword [ebp - 0x78c], eax
cmp dword [ebp - 0x78c], 0
je 0x4850ae
mov edx, dword [ebp - 0x78c]
mov word [edx], 0
lea eax, [esi + 0x4300]
call fcn.0040c150
mov dword [ebp - 0x790], eax
mov edx, dword [ebp - 0x78c]
mov word [edx], 0x2e
cmp dword [ebp - 0x790], 0
je 0x4850ae
mov edx, dword [ebp - 0x78c]
mov eax, dword [ebp - 0x790]
call fcn.0041077c
jmp 0x4850ae
cmp byte [ebp - 0x6288], 0
je 0x484f5c
lea ecx, [ebp - 0x6288]
push ecx
lea eax, [esi + 0x3f00]
push eax
call fcn.00497c80
add esp, 8
mov eax, dword [ebx]
call fcn.0040bd28
push eax
lea edx, [esi + 0x3f00]
push edx
call fcn.00497ba4
add esp, 8
jmp 0x484f6d
push dword [ebx]
lea ecx, [esi + 0x3f00]
push ecx
call fcn.00497c80
add esp, 8
lea eax, [esi + 0x3f00]
call fcn.0040c118
mov dword [ebp - 0x794], eax
cmp dword [ebp - 0x794], 0
je 0x484ff8
mov edx, dword [ebp - 0x794]
mov byte [edx], 0
lea eax, [esi + 0x3f00]
call fcn.0040c118
test eax, eax
je 0x484fef
mov edx, 0x4ac9ea
call fcn.0040f224
test eax, eax
je 0x484fc8
cmp byte [ebp - 0x771], 0
je 0x484fef
cmp dword [ebp - 0x45c4], 0
jne 0x484fef
cmp dword [ebp - 0x4560], 0
je 0x484fef
lea eax, [esi + 0x4300]
call fcn.0040c150
mov dword [ebp - 0x798], eax
cmp dword [ebp - 0x798], 0
je 0x484ff8
mov edx, dword [ebp - 0x798]
mov word [edx], 0
jmp 0x484ff8
mov ecx, dword [ebp - 0x794]
mov byte [ecx], 0x2e
lea eax, [esi + 0x3f00]
mov edx, dword [ebp - 0x778]
call fcn.0040c05c
cmp dword [ebx + 4], 0
je 0x48506f
mov ecx, dword [ebx + 4]
cmp word [ecx], 0
je 0x48506f
cmp byte [ebp - 0x6288], 0
je 0x48504e
lea edx, [esi + 0x4300]
lea eax, [ebp - 0x6288]
mov ecx, 0x1000000
call fcn.004104b4
mov eax, dword [ebx + 4]
call fcn.0040bdb4
mov edx, eax
lea eax, [esi + 0x4300]
call fcn.004107b0
jmp 0x48505c
lea eax, [esi + 0x4300]
mov edx, dword [ebx + 4]
call fcn.0041077c
lea eax, [esi + 0x4300]
mov edx, dword [ebp - 0x77c]
call fcn.0040c0a4
jmp 0x485078
mov word [esi + 0x4300], 0
lea edx, [esi + 0x4300]
lea eax, [esi + 0x3f00]
call fcn.0040a72c
test al, al
je 0x4850ae
mov eax, 0x50d
call fcn.004125d0
push eax
lea edx, [esi + 0x3f00]
push edx
call fcn.0047d240
add esp, 8
mov byte [ebp - 0x77d], 1
call fcn.00486b94
cmp eax, dword [ebp - 0x760]
jne 0x485134
lea ecx, [ebp - 0x5a88]
push ecx
call fcn.00499610
pop ecx
mov edx, 0x4ac857
mov dword [esi + 0x20cc], 2
mov dword [esi + 0x20c8], 1
mov byte [esi + 0x2104], 0
mov byte [esi + 0x2106], 0
mov eax, dword [esi + 0x4b00]
call fcn.0040fbf4
lea eax, [esi + 0x3f00]
call fcn.0040bd28
push eax
mov eax, 0x208
call fcn.004125d0
push eax
lea edx, [ebp - 0x3508]
push edx
call fcn.0049abd0
add esp, 0xc
lea eax, [ebp - 0x3508]
call fcn.004749b0
mov eax, edi
xor edx, edx
call fcn.00452c98
cmp byte [esi + 0x1410], 0
je 0x485159
lea eax, [esi + 0x1410]
call fcn.00463bb0
test al, al
je 0x485159
lea edx, [esi + 0x1410]
push edx
call fcn.0049a83c
pop ecx
mov byte [ebp - 0x799], 0
cmp dword [0x4c7818], 0
jne 0x485889
call fcn.00486b94
cmp eax, dword [ebp - 0x760]
jne 0x485889
push 0
push 1
lea ecx, [esi + 0x4300]
lea edx, [esi + 0x3f00]
mov eax, edi
call fcn.00455fa0
dec eax
jne 0x485889
lea edx, [ebp - 0x6324]
mov eax, edi
call fcn.004575cc
mov eax, dword [ebp - 0x4574]
mov edx, dword [ebp - 0x4570]
cmp edx, dword [ebp - 0x62c0]
jne 0x4851c3
cmp eax, dword [ebp - 0x62c4]
je 0x48520e
cmp dword [ebp - 0x4570], 0
jne 0x4851d5
cmp dword [ebp - 0x4574], 0
je 0x48520e
mov edx, 0x4ac9ef
lea eax, [ebp - 0x45d4]
call fcn.0040f224
test eax, eax
jne 0x4851f4
cmp dword [ebp - 0x4560], 0
jne 0x48520e
mov eax, 0x50a
call fcn.004125d0
push eax
push dword [ebx]
call fcn.0047d240
add esp, 8
jmp 0x485889
cmp dword [ebp - 8], 0
je 0x48528b
mov eax, dword [ebp - 8]
cdq
push edx
push eax
mov eax, dword [ebp - 0x456c]
mov edx, dword [ebp - 0x4568]
call fcn.0049c154
push edx
push eax
push 0
push 0x64
mov eax, dword [ebp - 0x62bc]
mov edx, dword [ebp - 0x62b8]
call fcn.0049c154
cmp edx, dword [esp + 4]
jne 0x485251
cmp eax, dword [esp]
pop edx
pop eax
jbe 0x48528b
jmp 0x485255
pop edx
pop eax
jle 0x48528b
lea eax, [esi + 0x3f00]
call fcn.0040bd28
push eax
mov eax, 0x50f
call fcn.004125d0
push eax
lea edx, [ebp - 0x3508]
push edx
call fcn.0049abd0
add esp, 0xc
lea eax, [ebp - 0x3508]
call fcn.004749b0
jmp 0x485889
lea edx, [esi + 0x1c18]
push edx
lea ecx, [ebp - 0x63a4]
push ecx
call fcn.00497c80
add esp, 8
call fcn.00449558
lea eax, [ebp - 0x63a4]
push eax
lea edx, [esi + 0x1c18]
push edx
call fcn.00497c80
add esp, 8
lea ecx, [esi + 0x4300]
lea edx, [esi + 0x3f00]
mov eax, edi
call fcn.00457598
mov ecx, dword [edi + 0x208]
xor eax, eax
mov dword [esi + 0x2ab0], ecx
xor edx, edx
mov byte [esi + 0x21ce], 1
mov dword [esi + 0x2164], eax
mov dword [esi + 0x2190], edx
mov edx, 0x4ac857
mov eax, dword [esi + 0x4b00]
call fcn.0040fbf4
lea eax, [esi + 0x3f00]
call fcn.0040bd28
push eax
mov eax, 0x20b
call fcn.004125d0
push eax
lea edx, [ebp - 0x3508]
push edx
call fcn.0049abd0
add esp, 0xc
lea eax, [ebp - 0x3508]
call fcn.004749b0
mov eax, edi
xor ecx, ecx
xor edx, edx
call fcn.0045249c
cmp dword [0x4c7818], 0
jne 0x485889
call fcn.00486b94
cmp eax, dword [ebp - 0x760]
jne 0x485889
cmp dword [ebp - 0x62c0], 0
jne 0x485394
cmp dword [ebp - 0x62c4], 0
jne 0x485394
cmp dword [ebp - 0x4a84], 0
jne 0x485385
cmp dword [ebp - 0x4a88], 0x200
jb 0x485394
jmp 0x485387
jl 0x485394
cmp dword [ebp - 0x457c], 1
jbe 0x485889
cmp dword [ebp - 8], 0
je 0x4853e2
mov eax, dword [ebp - 8]
cdq
push edx
push eax
mov eax, dword [ebp - 0x456c]
mov edx, dword [ebp - 0x4568]
call fcn.0049c154
push edx
push eax
push 0
push 0x64
mov eax, dword [ebp - 0x62bc]
mov edx, dword [ebp - 0x62b8]
call fcn.0049c154
cmp edx, dword [esp + 4]
jne 0x4853da
cmp eax, dword [esp]
pop edx
pop eax
jbe 0x4853e2
jmp 0x485889
pop edx
pop eax
jg 0x485889
mov byte [ebp - 0x799], 1
lea eax, [esi + 0x3f00]
call fcn.0040bd28
push eax
mov eax, 0x25a
call fcn.004125d0
push eax
lea edx, [ebp - 0x3508]
push edx
call fcn.0049abd0
add esp, 0xc
lea eax, [ebp - 0x3508]
call fcn.004749b0
inc dword [ebp - 0x73c]
mov eax, dword [ebp - 0x4a88]
mov edx, dword [ebp - 0x4a84]
add dword [ebp - 0x748], eax
adc dword [ebp - 0x744], edx
lea eax, [ebp - 0x6844]
call fcn.00413d60
lea eax, [ebp - 0x6818]
call fcn.00413d60
lea eax, [ebp - 0x67ec]
call fcn.00413d60
push 0
lea ecx, [ebp - 0x7458]
lea edx, [esi + 0x4300]
lea eax, [esi + 0x3f00]
call fcn.00412e78
test al, al
je 0x48548e
mov eax, dword [ebp - 0x6858]
mov edx, dword [ebp - 0x6854]
add dword [ebp - 0x750], eax
adc dword [ebp - 0x74c], edx
cmp byte [ebp - 0x77d], 0
je 0x48572e
push 1
push 0
mov eax, edi
mov ecx, dword [ebx + 4]
mov edx, dword [ebx]
call fcn.00455fa0
dec eax
jne 0x485889
mov word [ebp - 0x71c], 0x38
lea eax, [ebp - 0x708]
call fcn.0040fa70
add dword [ebp - 0x710], 4
mov word [ebp - 0x71c], 0x44
push dword [ebx]
lea edx, [ebp - 0x7858]
push edx
call fcn.00497c80
add esp, 8
mov byte [ebp - 0x79a], 0
lea ecx, [ebp - 0x7858]
lea eax, [ebp - 0x7c58]
push ecx
push 0x4ac9f3
push eax
call fcn.0049abd0
add esp, 0xc
lea edx, [ebp - 0x7c58]
push edx
lea ecx, [ebp - 0x7858]
push ecx
call sub.KERNEL32.DLL_MoveFileA
test eax, eax
jne 0x485529
mov byte [ebp - 0x79a], 1
jmp 0x48556d
lea edx, [ebp - 0x7858]
lea eax, [ebp - 0x708]
call fcn.0040fbf4
lea edx, [ebp - 0x7c58]
lea eax, [ebp - 0x708]
call fcn.0040fbf4
lea edx, [ebp - 0x7858]
mov eax, edi
call fcn.00457c5c
test al, al
je 0x48556d
lea eax, [ebp - 0x7858]
xor edx, edx
call fcn.0040a72c
test al, al
jne 0x4854ee
cmp byte [ebp - 0x79a], 0
jne 0x4856d5
push 1
push 0
lea ecx, [esi + 0x4300]
lea edx, [esi + 0x3f00]
mov eax, edi
call fcn.00455fa0
dec eax
jne 0x4856d5
lea ecx, [esi + 0x3f00]
push ecx
lea eax, [ebp - 0x7858]
push eax
call fcn.00497c80
add esp, 8
push dword [ebx]
lea edx, [ebp - 0x8058]
push edx
call fcn.00497c80
add esp, 8
lea eax, [ebp - 0x7858]
call fcn.0040bd28
push eax
lea eax, [ebp - 0x8058]
call fcn.0040bd28
push eax
call fcn.00497c80
add esp, 8
lea edx, [ebp - 0x8058]
push edx
lea ecx, [ebp - 0x7858]
push ecx
call sub.KERNEL32.DLL_MoveFileA
test eax, eax
jne 0x485602
mov byte [ebp - 0x79a], 1
jmp 0x4856d5
cmp dword [ebp - 0x764], 0
je 0x485614
cmp dword [ebp - 0x764], 1
jne 0x485668
push 0
push 0
push 3
push 0
push 0
push 0x40000000
lea eax, [ebp - 0x8058]
push eax
call sub.KERNEL32.DLL_CreateFileA
mov dword [ebp - 0x7a0], eax
mov word [ebp - 0x71c], 0x44
cmp dword [ebp - 0x7a0], 0xffffffff
je 0x485668
lea edx, [ebp - 0x45e0]
push edx
push 0
push 0
push dword [ebp - 0x7a0]
call sub.KERNEL32.DLL_SetFileTime
push dword [ebp - 0x7a0]
call sub.KERNEL32.DLL_CloseHandle
lea edx, [ebp - 0x7858]
mov eax, edi
call fcn.00457c5c
test al, al
je 0x4856d5
lea eax, [ebp - 0x7858]
xor edx, edx
call fcn.0040a72c
test al, al
jne 0x4855ae
jmp 0x4856d5
cmp byte [ebp - 0x79a], 0
je 0x4856bb
lea ecx, [ebp - 0x8858]
push ecx
call fcn.0049a83c
pop ecx
lea eax, [ebp - 0x8858]
push eax
lea edx, [ebp - 0x8458]
push edx
call sub.KERNEL32.DLL_MoveFileA
jmp 0x4856d5
lea eax, [ebp - 0x8458]
xor edx, edx
call fcn.0040ab58
lea ecx, [ebp - 0x8458]
push ecx
call fcn.0049a83c
pop ecx
lea edx, [ebp - 0x8858]
lea eax, [ebp - 0x708]
mov ecx, 0x400
call fcn.0040fc78
test al, al
je 0x485709
lea edx, [ebp - 0x8458]
lea eax, [ebp - 0x708]
mov ecx, 0x400
call fcn.0040fc78
test al, al
jne 0x485690
sub dword [ebp - 0x710], 4
lea eax, [ebp - 0x708]
mov edx, 2
call fcn.0040fb48
mov word [ebp - 0x71c], 0x14
jmp 0x485889
cmp byte [ebp - 0xc], 0
je 0x4857c9
push 1
push 0
mov eax, edi
mov ecx, dword [ebx + 4]
mov edx, dword [ebx]
call fcn.00455fa0
dec eax
jne 0x4857c9
push dword [ebx]
lea eax, [ebp - 0x8c58]
push eax
call fcn.00497c80
add esp, 8
lea eax, [ebp - 0x8c58]
call fcn.0040bd28
push eax
mov eax, 0x258
call fcn.004125d0
push eax
lea edx, [ebp - 0x3508]
push edx
call fcn.0049abd0
add esp, 0xc
lea eax, [ebp - 0x3508]
call fcn.004749b0
lea eax, [ebp - 0x8c58]
xor edx, edx
call fcn.0040ab58
lea ecx, [ebp - 0x8c58]
push ecx
call fcn.0049a83c
pop ecx
lea edx, [ebp - 0x8c58]
mov eax, edi
call fcn.00457c5c
test al, al
je 0x4857c9
lea eax, [ebp - 0x8c58]
xor edx, edx
call fcn.0040a72c
test al, al
jne 0x48575c
push 1
push 0
lea ecx, [esi + 0x4300]
lea edx, [esi + 0x3f00]
mov eax, edi
call fcn.00455fa0
dec eax
jne 0x485889
lea ecx, [esi + 0x3f00]
push ecx
lea eax, [ebp - 0x9058]
push eax
call fcn.00497c80
add esp, 8
cmp dword [ebp - 0x764], 0
je 0x48580f
cmp dword [ebp - 0x764], 1
jne 0x485863
push 0
push 0
push 3
push 0
push 0
push 0x40000000
lea edx, [ebp - 0x9058]
push edx
call sub.KERNEL32.DLL_CreateFileA
mov dword [ebp - 0x7a4], eax
mov word [ebp - 0x71c], 0x14
cmp dword [ebp - 0x7a4], 0xffffffff
je 0x485863
lea ecx, [ebp - 0x45e0]
push ecx
push 0
push 0
push dword [ebp - 0x7a4]
call sub.KERNEL32.DLL_SetFileTime
push dword [ebp - 0x7a4]
call sub.KERNEL32.DLL_CloseHandle
lea edx, [ebp - 0x9058]
mov eax, edi
call fcn.00457c5c
test al, al
je 0x485889
lea eax, [ebp - 0x9058]
xor edx, edx
call fcn.0040a72c
test al, al
jne 0x4857fd
cmp byte [ebp - 0x799], 0
jne 0x4858a8
cmp byte [ebp - 0x77d], 0
jne 0x4858a8
lea ecx, [esi + 0x3f00]
push ecx
call fcn.0049a83c
pop ecx
lea eax, [ebp - 0x3908]
push eax
call fcn.00499610
pop ecx
lea eax, [ebp - 0x5a88]
call fcn.00463bb0
test al, al
je 0x4858cf
lea eax, [ebp - 0x5a88]
call fcn.004633a0
inc dword [ebp - 0x758]
cmp dword [0x4c7814], 0
jne 0x4858eb
cmp dword [0x4c7818], 0
je 0x48498a
mov eax, 0x271
cmp dword [0x4c7818], 0
jne 0x485907
cmp dword [0x4c7814], 0
jne 0x485907
add eax, 0x25f
call fcn.004125d0
call fcn.004749b0
cmp dword [0x4c7814], 0
je 0x485927
push dword [0x4c4e70]
call sub.USER32.DLL_DestroyWindow
jmp 0x485941
push 0
push 1
push 0
push 1
push 0
xor ecx, ecx
xor edx, edx
xor eax, eax
call fcn.00473c8c
call fcn.00474a48
cmp dword [0x4c7804], 0
je 0x485972
push 0
push 0
lea ecx, [ebp - 0x13a4]
lea edx, [ebp - 0xba4]
mov eax, edi
call fcn.00455fa0
dec eax
je 0x485972
mov eax, 0x4c4e78
call fcn.0045e1b0
test al, al
jne 0x485984
cmp dword [0x4c7804], 0
jne 0x48599b
cmp dword [ebp - 0x73c], 0
jbe 0x48599b
lea eax, [esi + 0x3f00]
call fcn.0040bd28
mov edx, eax
mov eax, 0x4c4e78
call fcn.00458864
cmp byte [ebp - 4], 0
je 0x4859b1
mov eax, 0x4d4570
mov edx, dword [0x4ac6e8]
call fcn.004616bc
mov eax, 0x4d4570
call fcn.00461710
dec dword [ebp - 0x710]
dec dword [ebp - 0x710]
dec dword [ebp - 0x710]
lea eax, [ebp - 0x420]
mov edx, 2
call fcn.0043d588
sub dword [ebp - 0x710], 4
lea eax, [ebp - 0x518]
mov edx, 2
call fcn.0040fb48
mov ecx, dword [ebp - 0x72c]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret