Function at 0x497a30
Capabilities:
Copy file
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5ca3a8
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x2f0
mov al, byte [ecx + 0x47a]
push ebx
push esi
push edi
xor edi, edi
mov dword [ebp - 0x10], esp
test al, al
mov dword [ebp - 0x18], ecx
mov dword [ebp - 4], edi
jne 0x49820c
xor ebx, ebx
xor edx, edx
mov dword [ebp - 0x50], ebx
cmp edx, dword [ecx + 0x51c]
jge 0x497aef
mov eax, dword [ecx + 0x518]
mov ecx, dword [ebp + 8]
lea esi, [edx*8]
add eax, esi
cmp dword [eax], ecx
jne 0x497be1
mov ecx, dword [ebp - 0x18]
mov ebx, dword [eax + 4]
mov dword [ebp - 0x50], ebx
mov edi, 1
mov eax, dword [ecx + 0x51c]
mov ecx, dword [ecx + 0x518]
sub eax, edx
dec eax
add ecx, esi
mov esi, edi
dec edi
test esi, esi
je 0x497abe
add ecx, 8
jmp 0x497ab2
mov esi, dword [ebp - 0x18]
test eax, eax
je 0x497ae0
mov ecx, dword [esi + 0x518]
shl eax, 3
push eax
lea eax, [ecx + edx*8 + 8]
lea ecx, [ecx + edx*8]
push eax
push ecx
call fcn.00592770
add esp, 0xc
mov eax, dword [esi + 0x51c]
dec eax
xor edi, edi
mov dword [esi + 0x51c], eax
cmp ebx, edi
jne 0x497bf9
mov eax, dword [0x68d01c]
lea ecx, [ebp - 0x294]
mov dword [ebp - 0x2ac], eax
mov dword [ebp - 0x2a4], eax
mov dword [ebp - 0x2a0], edi
mov dword [ebp - 0x298], edi
mov word [ebp - 0x29c], di
call fcn.004178c0
lea ecx, [ebp - 0x288]
call fcn.004178c0
mov eax, dword [0x68d01c]
lea ecx, [ebp - 0x264]
mov dword [ebp - 0x27c], eax
mov dword [ebp - 0x278], eax
mov dword [ebp - 0x274], eax
mov dword [ebp - 0x270], eax
mov dword [ebp - 0x26c], eax
mov dword [ebp - 0x268], eax
call fcn.004178c0
mov eax, dword [0x68d01c]
mov dword [ebp - 0x2fc], 0x5e54ec
mov dword [ebp - 0x258], eax
mov dword [ebp - 0x254], eax
mov dword [ebp - 0x250], edi
mov dword [ebp - 0x248], edi
mov dword [ebp - 0x23c], edi
mov dword [ebp - 0x238], edi
mov esi, dword [ebp - 0x18]
mov eax, dword [ebp + 8]
lea edx, [ebp - 0x2fc]
push edi
push edx
push eax
lea ecx, [esi + 8]
mov byte [ebp - 4], 1
call fcn.00582530
test al, al
je 0x497bd2
mov eax, dword [ebp - 0x2e4]
cmp eax, edi
je 0x497bd2
push eax
mov ecx, esi
call fcn.004a5db0
mov ebx, eax
cmp ebx, edi
mov dword [ebp - 0x50], ebx
jne 0x497bea
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x2fc]
jmp 0x498207
mov ecx, dword [ebp - 0x18]
inc edx
jmp 0x497a71
lea ecx, [ebp - 0x2fc]
mov byte [ebp - 4], 0
call fcn.0045cb50
mov dword [ebx + 8], edi
mov eax, dword [0x68d01c]
lea ecx, [ebp - 0xe8]
mov dword [ebp - 0x100], eax
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xf4], edi
mov dword [ebp - 0xec], edi
mov word [ebp - 0xf0], di
call fcn.004178c0
lea ecx, [ebp - 0xdc]
call fcn.004178c0
mov eax, dword [0x68d01c]
lea ecx, [ebp - 0xb8]
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xbc], eax
call fcn.004178c0
mov eax, dword [0x68d01c]
mov dword [ebp - 0x150], 0x5e54ec
mov dword [ebp - 0xac], eax
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], edi
mov dword [ebp - 0x9c], edi
mov dword [ebp - 0x90], edi
mov dword [ebp - 0x8c], edi
mov esi, dword [ebp - 0x18]
mov edx, dword [ebp + 8]
lea ecx, [ebp - 0x150]
push edi
push ecx
push edx
lea ecx, [esi + 8]
mov byte [ebp - 4], 2
call fcn.00582530
test al, al
je 0x4981fd
mov al, byte [esi + 0x4ac]
mov byte [ebp - 0x57], 0
test al, al
mov byte [ebp - 0x11], 0
jne 0x497cee
mov cl, byte [esi + 0x4ad]
test cl, cl
je 0x497ddd
mov cl, byte [esi + 0x4af]
test cl, cl
je 0x497ddd
mov ecx, dword [ebx + 0x9c8]
cmp ecx, 0x7573
je 0x497d00
cmp ecx, edi
jne 0x497d26
test al, al
je 0x497d26
mov al, byte [ebp - 0x10e]
test al, al
je 0x497d26
mov al, byte [ebx + 0x301]
test al, al
je 0x497d26
mov al, byte [ebp - 0x106]
test al, al
je 0x497d26
mov byte [ebp - 0x57], 1
cmp ecx, 0x7573
jne 0x497ddd
mov dword [ebx + 0x9c8], edi
mov dword [ebx + 0x868], 3
mov eax, dword [ebp - 0x148]
mov byte [ebp - 0x11], 1
mov dword [ebx + 0x428], eax
mov ecx, dword [ebp - 0x144]
mov dword [ebx + 0x42c], ecx
mov edx, dword [ebp - 0x148]
mov dword [ebx + 0x430], edx
mov eax, dword [ebp - 0x144]
mov dword [ebx + 0x434], eax
mov eax, dword [ebx + 0xdc]
cmp eax, edi
je 0x497d99
push eax
mov byte [ebp - 4], 3
call fcn.005aa012
add esp, 4
mov ebx, dword [ebp - 0x50]
mov dword [ebp - 4], 2
xor edi, edi
mov ecx, dword [ebp - 0xf8]
mov eax, dword [ecx - 8]
inc eax
push eax
call fcn.005a9fe9
mov edx, eax
add esp, 4
cmp edx, edi
mov dword [ebx + 0xdc], edx
je 0x497ddd
mov edi, dword [ebp - 0xf8]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor edi, edi
mov cl, byte [ebx + 0x868]
mov byte [ebp - 0x114], cl
mov eax, dword [ebx + 0x428]
mov dword [ebp - 0x148], eax
mov ecx, dword [ebx + 0x42c]
or eax, ecx
mov dword [ebp - 0x144], ecx
jne 0x497e2c
cmp dword [ebx + 0x868], 3
jne 0x497e2c
mov eax, dword [ebx + 0x430]
mov ecx, dword [ebx + 0x434]
mov edx, eax
or edx, ecx
je 0x497e2c
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x144], ecx
mov edx, dword [ebx + 0x40]
cmp edx, edi
je 0x497e56
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x497e56
push edx
lea eax, [ebp - 0xa8]
push 0x665f68
push eax
call fcn.005a6a18
add esp, 0xc
mov ecx, dword [0x68d01c]
mov dword [ebp - 0x68], ecx
xor edi, edi
lea edx, [ebp - 0x68]
lea ecx, [ebx + 0x20]
push edi
push edx
mov byte [ebp - 4], 5
mov dword [ebp - 0x88], ecx
call fcn.0053a0d0
mov eax, dword [ebp - 0x100]
mov ecx, dword [ebp - 0x68]
push eax
push ecx
call fcn.00592db4
add esp, 8
test eax, eax
je 0x497ea7
mov edx, dword [ebp - 0x68]
lea eax, [ebp - 0xac]
push edx
push 0x665f68
push eax
call fcn.005a6a18
add esp, 0xc
mov esi, dword [ebp - 0x18]
mov al, byte [esi + 0x504]
test al, al
jne 0x497efe
mov eax, dword [esi + 0x418]
mov ecx, dword [esi + 0x4b0]
lea edx, [ebp - 0x16c]
mov dword [ebp - 0x16c], edi
push edx
push 0x13c1
push 0x111
push eax
mov dword [ebp - 0x164], 0x190
mov dword [ebp - 0x160], edi
mov dword [ebp - 0x15c], 0xfffffffb
mov dword [ebp - 0x168], ecx
call dword [sym.imp.USER32.dll_SendMessageA]
mov dword [ebp - 0x64], edi
mov dword [ebp - 0x5c], edi
mov word [ebp - 0x60], di
mov ecx, dword [0x68d01c]
mov dword [ebp - 0x70], ecx
mov edi, dword [ebx + 0x9c8]
mov al, byte [ebp - 0x106]
mov ecx, edi
mov dl, 1
test al, al
mov byte [ebp - 4], 7
mov dword [ebp - 0x128], ecx
mov byte [ebp - 0x58], 1
mov byte [ebp - 0x49], 0
mov byte [ebp - 0x55], dl
je 0x497f67
mov eax, dword [esi + 0x4e4]
inc eax
mov dword [esi + 0x4e4], eax
mov al, byte [ebp - 0x107]
test al, al
mov al, byte [ebp - 0x113]
jne 0x497f6d
cmp al, dl
je 0x497f6d
mov byte [ebp - 0x58], 0
jmp 0x497f75
mov al, byte [ebp - 0x113]
cmp al, 2
je 0x497f7d
cmp al, 1
je 0x497f7d
mov esi, dword [ebp - 0x18]
xor dl, dl
mov byte [ebp - 0x55], dl
test edi, edi
je 0x498291
cmp edi, 0x7563
je 0x498291
cmp edi, 0x7540
jne 0x497fd3
mov edx, dword [ebx + 0x430]
mov dword [ebp - 0x140], edx
mov eax, dword [ebx + 0x434]
mov dword [ebp - 0x13c], eax
mov al, byte [ebp - 0x112]
cmp al, 5
jne 0x497fc7
mov byte [ebp - 0x112], 3
jmp 0x498073
mov byte [ebp - 0x113], 1
jmp 0x498073
cmp al, 2
setne al
dec eax
and al, 0xfd
add eax, 6
cmp ecx, 0x7565
mov byte [ebp - 0x113], al
jne 0x497ff5
mov byte [ebp - 0x111], 2
jmp 0x498007
cmp ecx, 0x7566
setne cl
add ecx, 3
mov byte [ebp - 0x111], cl
test dl, dl
je 0x498037
mov ecx, dword [esi + 0x4ec]
mov edx, dword [esi + 0x414]
push 0
push 0x1430
inc ecx
push 0x111
push edx
mov dword [esi + 0x4ec], ecx
call dword [sym.imp.USER32.dll_PostMessageA]
mov al, byte [ebp - 0x113]
cmp byte [ebp - 0x112], 5
jne 0x498047
mov byte [ebp - 0x112], 6
mov ecx, dword [ebp + 8]
test ecx, ecx
jne 0x498073
cmp al, 6
jne 0x498073
mov eax, dword [ebx + 0x9d8]
test eax, eax
jne 0x498073
mov eax, dword [0x692540]
mov ecx, dword [ebx + 0xc8]
push 0x30
push eax
push ecx
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov byte [ebp - 0x107], 0
mov byte [ebp - 0x106], 0
mov eax, dword [ebx + 0x420]
test eax, eax
jne 0x4980c4
cmp byte [ebp - 0x112], 3
je 0x49809b
mov ecx, ebx
call fcn.00563ba0
mov ecx, dword [ebx + 0x86c]
xor eax, eax
cmp ecx, eax
je 0x4980b0
mov dword [ebx + 0xc], 1
jmp 0x4980c6
cmp ebx, eax
je 0x4980c4
mov ecx, ebx
call fcn.0055bd60
push ebx
call fcn.005aa012
add esp, 4
xor eax, eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x40], eax
mov word [ebp - 0x44], ax
lea edx, [ebp - 0x48]
push 1
push edx
push eax
mov ecx, ebx
mov byte [ebp - 4], 8
call fcn.00565080
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x4980ec
lea eax, [ebp - 0x44]
push 0x5c
push eax
call fcn.00591662
add esp, 8
test eax, eax
je 0x498100
add eax, 2
jmp 0x49810a
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x49810a
lea eax, [ebp - 0x44]
mov ebx, dword [ebp + 8]
test ebx, ebx
sete cl
push ecx
push eax
mov ecx, esi
call fcn.0049a420
cmp edi, 0x7540
je 0x49821f
test eax, eax
je 0x498153
lea edx, [ebp - 0x150]
mov ecx, esi
push edx
call fcn.0049e4a0
test eax, eax
je 0x498153
lea eax, [ebp - 0x150]
mov ecx, esi
push eax
call fcn.0049e710
test eax, eax
jne 0x49821f
mov ebx, dword [ebp - 0x18]
mov edi, dword [ebp + 8]
lea ecx, [ebp - 0x150]
mov byte [ebp - 0x110], 0
lea esi, [ebx + 8]
push ecx
push edi
mov ecx, esi
call fcn.00583cc0
mov eax, dword [ebp - 0x144]
test eax, eax
jl 0x49819a
jg 0x498188
mov ecx, dword [ebp - 0x148]
test ecx, ecx
jbe 0x49819a
mov edx, dword [ebp - 0x148]
push 1
push edi
push eax
push edx
mov ecx, esi
call fcn.00585640
mov al, byte [ebp - 0x111]
test al, al
je 0x4981b5
mov eax, dword [ebp - 0x111]
push 1
push edi
push eax
mov ecx, esi
call fcn.00585790
mov ecx, dword [ebx + 0x414]
push edi
push 0x13fe
push 0x111
push ecx
call dword [sym.imp.USER32.dll_PostMessageA]
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x48]
call fcn.00401070
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 6
call fcn.005adc4d
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 5
call fcn.00401070
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 2
call fcn.005adc4d
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x150]
call fcn.0045cb50
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ebx, dword [ebp - 0x18]
mov edi, dword [ebp + 8]
lea edx, [ebp - 0x150]
lea esi, [ebx + 8]
push edx
push edi
mov ecx, esi
call fcn.00583cc0
mov eax, dword [ebp - 0x144]
test eax, eax
jl 0x49825f
jg 0x49824d
mov ecx, dword [ebp - 0x148]
test ecx, ecx
jbe 0x49825f
push 1
push edi
push eax
mov eax, dword [ebp - 0x148]
push eax
mov ecx, esi
call fcn.00585640
mov al, byte [ebp - 0x111]
test al, al
je 0x49827a
mov ecx, dword [ebp - 0x111]
push 1
push edi
push ecx
mov ecx, esi
call fcn.00585790
mov edx, dword [ebx + 0x414]
push edi
push 0x1426
push 0x111
push edx
jmp 0x4981c7
mov eax, dword [ebp + 8]
test eax, eax
jne 0x49829f
mov byte [esi + 0x479], 1
mov al, byte [ebp - 0x106]
mov byte [ebp - 0x113], 4
test al, al
je 0x4982b4
mov byte [ebp - 0x49], 1
test dl, dl
je 0x4982de
mov eax, dword [esi + 0x4ec]
push 0
inc eax
push 0x1430
mov dword [esi + 0x4ec], eax
mov eax, dword [esi + 0x414]
push 0x111
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
mov al, byte [ebp - 0x106]
test al, al
je 0x4982f6
mov al, byte [ebp - 0x107]
mov byte [ebp - 0x56], 1
test al, al
je 0x4982fa
mov byte [ebp - 0x56], 0
mov al, byte [ebp - 0x111]
xor bl, bl
cmp al, 2
mov byte [ebp - 0x107], 0
mov byte [ebp - 0x106], 0
je 0x49831c
cmp al, 3
je 0x49831c
cmp al, 4
jne 0x498325
mov bl, 1
mov byte [ebp - 0x111], 0
mov ecx, dword [ebp - 0x18]
mov esi, dword [ebp + 8]
lea edx, [ebp - 0x150]
lea edi, [ecx + 8]
push edx
push esi
mov ecx, edi
mov dword [ebp - 0x54], edi
call fcn.00583cc0
mov eax, dword [ebp - 0x144]
test eax, eax
jl 0x498368
jg 0x498356
mov ecx, dword [ebp - 0x148]
test ecx, ecx
jbe 0x498368
push 1
push esi
push eax
mov eax, dword [ebp - 0x148]
push eax
mov ecx, edi
call fcn.00585640
test bl, bl
je 0x49837d
mov ecx, dword [ebp - 0x111]
push 1
push esi
push ecx
mov ecx, edi
call fcn.00585790
xor ecx, ecx
mov dword [ebp - 0x80], ecx
mov dword [ebp - 0x78], ecx
mov word [ebp - 0x7c], cx
mov al, byte [ebp - 0x11]
mov byte [ebp - 4], 9
test al, al
mov dword [ebp - 0x6c], 1
je 0x4983b4
mov edx, dword [ebp - 0xf4]
lea ecx, [ebp - 0x80]
push edx
call fcn.00401ee0
mov edi, dword [ebp - 0x50]
xor ebx, ebx
jmp 0x498582
mov edi, dword [ebp - 0x50]
cmp dword [edi + 0xcc], ecx
je 0x4983de
cmp dword [edi + 0x5c], ecx
je 0x4983de
mov eax, dword [edi + 0x54]
cmp eax, ecx
jne 0x4983ce
lea eax, [edi + 0x58]
push eax
lea ecx, [ebp - 0x80]
call fcn.00401ee0
xor ebx, ebx
jmp 0x498582
mov al, byte [ebp - 0x102]
test al, al
mov eax, dword [ebp - 0xf4]
je 0x498414
push eax
lea ecx, [ebp - 0x80]
call fcn.00401ee0
mov eax, dword [ebp - 0x80]
test eax, eax
jne 0x498401
lea eax, [ebp - 0x7c]
mov ecx, dword [ebp - 0x88]
push eax
call fcn.0056f0c0
xor ebx, ebx
jmp 0x498582
cmp eax, ecx
jne 0x49841e
lea eax, [ebp - 0xf0]
mov edx, dword [ebp + 8]
xor ebx, ebx
push ebx
lea ecx, [ebp - 0x80]
push eax
push ecx
mov ecx, dword [ebp - 0x18]
push edx
lea eax, [ebp - 0x150]
push edi
push eax
call fcn.00496750
mov esi, eax
cmp esi, ebx
jle 0x498582
mov eax, dword [0x68d01c]
lea ecx, [ebp - 0x1c0]
mov dword [ebp - 0x1e4], eax
mov dword [ebp - 0x1dc], eax
mov dword [ebp - 0x1d8], ebx
mov dword [ebp - 0x1d0], ebx
mov word [ebp - 0x1d4], bx
mov dword [ebp - 0x1cc], ebx
mov dword [ebp - 0x1c4], ebx
mov word [ebp - 0x1c8], bx
call fcn.004178c0
mov eax, dword [0x68d01c]
lea ecx, [ebp - 0x19c]
mov dword [ebp - 0x1b4], eax
mov dword [ebp - 0x1b0], eax
mov dword [ebp - 0x1ac], eax
mov dword [ebp - 0x1a8], eax
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a0], eax
call fcn.004178c0
mov eax, dword [0x68d01c]
mov dword [ebp - 0x234], 0x5e54ec
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x18c], eax
mov dword [ebp - 0x188], ebx
mov dword [ebp - 0x180], ebx
mov dword [ebp - 0x174], ebx
mov dword [ebp - 0x170], ebx
lea ecx, [ebp - 0x234]
push ebx
push ecx
mov ecx, dword [ebp - 0x54]
push esi
mov byte [ebp - 4], 0xa
call fcn.00582530
test al, al
je 0x498573
mov edx, dword [ebp - 0x22c]
mov eax, dword [ebp - 0x148]
cmp edx, eax
jne 0x498573
mov eax, dword [ebp - 0x228]
mov ecx, dword [ebp - 0x144]
cmp eax, ecx
jne 0x498573
mov eax, dword [ebp - 0xe8]
cmp eax, ebx
mov ecx, eax
jne 0x498538
lea ecx, [ebp - 0xe4]
mov eax, dword [ebp - 0x1cc]
cmp eax, ebx
jne 0x498548
lea eax, [ebp - 0x1c8]
push ecx
push eax
call fcn.00593cdc
add esp, 8
test eax, eax
jne 0x498573
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x130], esi
mov al, byte [ecx + 0x28f]
test al, al
je 0x498573
mov dword [ebp - 0x6c], ebx
mov byte [ebp - 0x110], 0
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], 9
call fcn.0045cb50
mov eax, dword [ebp - 0x80]
cmp eax, ebx
jne 0x49858c
lea eax, [ebp - 0x7c]
push 0x5c
push eax
call fcn.00591662
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4985a2
add ebx, 2
jmp 0x4985ae
mov eax, dword [ebp - 0x80]
test eax, eax
mov ebx, eax
jne 0x4985ae
lea ebx, [ebp - 0x7c]
push 0x2e
push ebx
call fcn.00591662
mov esi, eax
add esp, 8
test esi, esi
je 0x49862c
push 0x66b8c8
push esi
call fcn.00593cdc
add esp, 8
test eax, eax
je 0x4985e3
push 0x66d01c
push esi
call fcn.00593cdc
add esp, 8
test eax, eax
jne 0x49862c
mov al, byte [ebp - 0x55]
mov byte [ebp - 0x105], 1
test al, al
jne 0x4985f8
mov al, byte [ebp - 0x49]
test al, al
jne 0x498619
mov eax, dword [ebp + 8]
test eax, eax
je 0x498612
mov ecx, dword [ebp - 0x18]
lea edx, [ebp - 0x150]
push edx
call fcn.0049e1c0
test eax, eax
je 0x498619
mov byte [ebp - 0x113], 0
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x150]
push eax
push ecx
mov ecx, dword [ebp - 0x54]
call fcn.00583cc0
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
test eax, eax
jge 0x49868e
mov eax, dword [edi + 0x420]
test eax, eax
jne 0x499bb0
mov ecx, edi
call fcn.00563ba0
mov eax, dword [edi + 0x86c]
test eax, eax
je 0x49866a
mov dword [edi + 0xc], 1
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x80]
jmp 0x4981d4
test edi, edi
je 0x499bb0
mov ecx, edi
call fcn.0055bd60
push edi
call fcn.005aa012
add esp, 4
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x80]
jmp 0x4981d4
mov edx, dword [0x68d01c]
mov dword [ebp - 0x74], edx
test esi, esi
mov byte [ebp - 4], 0xb
jne 0x4986a1
mov esi, ebx
push esi
lea ecx, [ebp - 0x84]
call fcn.005add0d
mov ecx, dword [ebp - 0x84]
mov esi, dword [ebp - 0x18]
lea eax, [ebp - 0x74]
mov byte [ebp - 4], 0xc
push eax
push ecx
lea ecx, [esi + 0x10]
call fcn.004bbf60
mov dword [ebp - 0x11c], eax
mov al, byte [esi + 0x47a]
test al, al
jne 0x499b95
mov edx, dword [ebp - 0x74]
lea eax, [ebp - 0xbc]
push edx
push 0x665f68
push eax
call fcn.005a6a18
mov eax, dword [edi + 0xdc]
add esp, 0xc
test eax, eax
je 0x498719
mov cl, byte [ebp - 0x11]
test cl, cl
jne 0x498719
push eax
lea ecx, [ebp - 0xf8]
push 0x665f68
push ecx
call fcn.005a6a18
add esp, 0xc
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x54]
lea edx, [ebp - 0x150]
push edx
push eax
call fcn.00583cc0
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 0x11c]
push 1
push ecx
mov ecx, dword [ebp - 0x54]
push edx
call fcn.00585250
mov eax, dword [ebp - 0x6c]
test eax, eax
je 0x49878a
mov edx, dword [ebp + 8]
mov ecx, esi
test edx, edx
sete al
push eax
push ebx
call fcn.0049a420
test eax, eax
mov dword [ebp - 0x6c], eax
je 0x49878a
lea ecx, [ebp - 0x150]
push ecx
mov ecx, esi
call fcn.0049e4a0
test eax, eax
mov dword [ebp - 0x6c], eax
je 0x49878a
lea edx, [ebp - 0x150]
mov ecx, esi
push edx
call fcn.0049e710
test eax, eax
mov dword [ebp - 0x6c], eax
jne 0x4987ac
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x150]
push eax
push ecx
mov ecx, dword [ebp - 0x54]
mov byte [ebp - 0x110], 0
call fcn.00583cc0
mov ebx, dword [sym.imp.USER32.dll_PostMessageA]
jmp 0x4987fe
mov al, byte [ebp - 0x58]
test al, al
je 0x4987dc
mov eax, dword [esi + 0x4d8]
mov edx, dword [esi + 0x414]
mov ebx, dword [sym.imp.USER32.dll_PostMessageA]
inc eax
push eax
push 0x1401
push 0x111
push edx
mov dword [esi + 0x4d8], eax
call ebx
jmp 0x4987e2
mov ebx, dword [sym.imp.USER32.dll_PostMessageA]
mov al, byte [ebp - 0x49]
test al, al
je 0x4987fe
mov eax, dword [esi + 0x410]
push 0
push 0x1415
push 0x111
push eax
call ebx
mov al, byte [ebp - 0x113]
test al, al
je 0x4992af
mov eax, dword [ebp - 0x6c]
test eax, eax
je 0x4988c8
mov ecx, dword [ebp + 8]
mov edx, dword [esi + 0x414]
push ecx
push 0x13fd
push 0x111
push edx
call ebx
mov al, byte [esi + 0x290]
test al, al
jne 0x498843
mov al, byte [ebp - 0x57]
test al, al
je 0x4988df
cmp dword [edi + 0x868], 3
jne 0x4988df
mov eax, dword [edi + 0xcc]
test eax, eax
jne 0x49886a
mov al, byte [ebp - 0x11]
test al, al
jne 0x49886a
push 0
mov ecx, edi
call fcn.005606b0
mov byte [ebp - 0x112], 4
mov eax, dword [edi + 0x420]
test eax, eax
jne 0x498882
mov ecx, edi
call fcn.00563ba0
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x150]
push eax
push ecx
mov ecx, dword [ebp - 0x54]
mov byte [ebp - 0x111], 1
call fcn.00583cc0
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x111]
mov ecx, dword [ebp - 0x54]
push 1
push edx
push eax
call fcn.00585790
mov ecx, dword [ebp + 8]
mov edx, dword [esi + 0x414]
push ecx
push 0x1426
push 0x111
push edx
jmp 0x4988dd
mov eax, dword [ebp + 8]
mov ecx, dword [esi + 0x414]
push eax
push 0x13fe
push 0x111
push ecx
call ebx
call dword [sym.imp.ole32.dll_CoUninitialize]
mov ecx, dword [edi + 0x868]
mov al, byte [ebp - 0x112]
cmp ecx, 3
je 0x49895f
cmp al, 5
je 0x49890f
mov dl, byte [esi + 0x290]
test dl, dl
je 0x49893e
mov edx, dword [ebp - 0x6c]
xor esi, esi
cmp edx, esi
je 0x498940
jmp 0x498911
xor esi, esi
mov dl, byte [ebp - 0x49]
test dl, dl
je 0x498940
mov edx, dword [edi + 0x428]
mov ebx, dword [edi + 0x42c]
or edx, ebx
jne 0x498940
mov edx, dword [edi + 0x430]
mov ebx, dword [edi + 0x434]
or edx, ebx
jne 0x498940
cmp ecx, esi
je 0x498961
jmp 0x498940
xor esi, esi
cmp al, 5
je 0x498953
cmp dword [edi + 0x420], esi
jne 0x498953
mov ecx, edi
call fcn.00563ba0
mov byte [ebp - 0x112], 1
jmp 0x499218
xor esi, esi
cmp al, 5
jne 0x4989f2
cmp dword [edi + 0xcc], esi
jne 0x498980
mov al, byte [ebp - 0x11]
test al, al
jne 0x498980
push esi
mov ecx, edi
call fcn.005606b0
mov byte [ebp - 0x112], 4
mov eax, dword [edi + 0x420]
cmp eax, esi
jne 0x498998
mov ecx, edi
call fcn.00563ba0
mov ebx, dword [ebp + 8]
mov esi, dword [ebp - 0x54]
lea eax, [ebp - 0x150]
mov ecx, esi
push eax
push ebx
mov byte [ebp - 0x111], 1
call fcn.00583cc0
mov ecx, dword [ebp - 0x111]
push 1
push ebx
push ecx
mov ecx, esi
call fcn.00585790
mov eax, dword [ebp - 0x6c]
test eax, eax
je 0x499207
mov eax, dword [ebp - 0x18]
mov edx, ebx
push edx
push 0x1426
mov ecx, dword [eax + 0x414]
push 0x111
push ecx
call dword [sym.imp.USER32.dll_PostMessageA]
jmp 0x499207
cmp al, 4
je 0x4989fd
mov byte [ebp - 0x112], 2
mov al, byte [ebp + 0xc]
test al, al
je 0x4990ee
mov al, byte [ebp - 0x11]
test al, al
jne 0x4990ee
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x28], esi
mov word [ebp - 0x2c], si
mov eax, dword [edi + 0xdc]
mov byte [ebp - 4], 0xd
cmp eax, esi
je 0x498b64
push 9
push str.text_html
push eax
call fcn.00593990
add esp, 0xc
test eax, eax
jne 0x498b64
mov esi, dword [edi + 0x50]
test esi, esi
je 0x498cdc
mov edx, 0x665ff4
test edx, edx
je 0x498cdc
test esi, esi
je 0x498cdc
mov eax, 0x66d01c
test eax, eax
je 0x498cdc
xor eax, eax
lea ecx, [ebp - 0x3c]
push eax
push edx
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x34], eax
mov word [ebp - 0x38], ax
call fcn.00402800
push esi
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0xe
call fcn.00403af0
mov bl, 0xf
push 0x66d01c
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], bl
call fcn.00403af0
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x10
call fcn.00401070
mov edi, dword [ebp - 0x24]
test edi, edi
jne 0x498abf
lea edi, [ebp - 0x20]
mov esi, dword [ebp - 0x34]
lea ecx, [ebp - 0x48]
call fcn.00401ed0
push eax
call fcn.00591712
mov edx, eax
push edi
mov dword [ebp + 0xc], edx
call fcn.00591712
mov ecx, dword [ebp + 0xc]
add esi, ecx
lea esi, [eax + esi + 3]
lea edi, [esi + esi]
push edi
call fcn.005a9fe9
mov edx, eax
add esp, 0xc
test edx, edx
mov dword [ebp - 0x30], edx
je 0x498b41
mov ecx, edi
mov edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
lea ecx, [ebp - 0x48]
call fcn.00401ed0
push eax
lea ecx, [ebp - 0x24]
call fcn.00401ed0
push eax
lea ecx, [ebp - 0x3c]
call fcn.00401ed0
push eax
mov eax, dword [ebp - 0x30]
push esi
push eax
call fcn.005916a2
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.00591712
add esp, 0x18
mov dword [ebp - 0x28], eax
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], bl
call fcn.00401070
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0xe
call fcn.00401070
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x3c]
jmp 0x498cd4
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x40], esi
mov word [ebp - 0x44], si
mov eax, dword [0x691800]
lea edx, [ebp - 0x48]
push 1
add eax, 0x67c
push edx
push eax
mov ecx, edi
mov byte [ebp - 4], 0x11
call fcn.00565080
mov eax, dword [ebp - 0x48]
cmp eax, esi
jne 0x498b94
lea eax, [ebp - 0x44]
push 0x2e
push eax
call fcn.00591662
mov edi, eax
xor ebx, ebx
add esp, 8
cmp edi, ebx
je 0x498cbe
mov ecx, dword [ebp - 0x50]
mov edx, 0x665ff4
test edx, edx
mov esi, dword [ecx + 0x50]
je 0x498ccd
cmp esi, ebx
je 0x498ccd
push ebx
push edx
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x34], ebx
mov word [ebp - 0x38], bx
call fcn.00402800
push esi
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x12
call fcn.00403af0
push edi
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 0x13
call fcn.00403af0
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x14
call fcn.00401070
mov edi, dword [ebp - 0x24]
cmp edi, ebx
jne 0x498c0d
lea edi, [ebp - 0x20]
mov esi, dword [ebp - 0x34]
lea ecx, [ebp - 0x160]
call fcn.00401ed0
push eax
call fcn.00591712
mov edx, eax
push edi
mov dword [ebp + 0xc], edx
call fcn.00591712
mov ecx, dword [ebp + 0xc]
add esi, ecx
lea esi, [eax + esi + 3]
lea edi, [esi + esi]
push edi
call fcn.005a9fe9
mov edx, eax
add esp, 0xc
cmp edx, ebx
mov dword [ebp - 0x30], edx
je 0x498c95
mov ecx, edi
mov edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
lea ecx, [ebp - 0x160]
call fcn.00401ed0
push eax
lea ecx, [ebp - 0x24]
call fcn.00401ed0
push eax
lea ecx, [ebp - 0x3c]
call fcn.00401ed0
push eax
mov eax, dword [ebp - 0x30]
push esi
push eax
call fcn.005916a2
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.00591712
add esp, 0x18
mov dword [ebp - 0x28], eax
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 0x13
call fcn.00401070
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x12
call fcn.00401070
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x11
call fcn.00401070
jmp 0x498ccd
mov edx, dword [ebp - 0x50]
lea ecx, [ebp - 0x30]
mov eax, dword [edx + 0x50]
push eax
call fcn.00401ee0
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x48]
call fcn.00401070
mov edi, dword [ebp - 0x50]
mov eax, dword [ebp - 0x30]
test eax, eax
jne 0x498ce6
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [edi + 0x50]
push eax
call fcn.005943c4
mov eax, dword [ebp - 0x30]
add esp, 8
test eax, eax
jne 0x498cfd
lea eax, [ebp - 0x2c]
push 0x5c
push eax
call fcn.00591662
mov esi, eax
add esp, 8
test esi, esi
je 0x498f77
add esi, 2
cmp word [esi], 0
je 0x498f77
xor ecx, ecx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x40], ecx
mov word [ebp - 0x44], cx
mov edx, dword [ebp - 0x18]
mov byte [ebp - 4], 0x15
mov eax, dword [edx + 0x41c]
cmp eax, ecx
je 0x498d40
mov edi, eax
jmp 0x498d49
mov eax, dword [ebp - 0x18]
lea edi, [eax + 0x420]
mov edx, 0x665ff4
test edx, edx
je 0x498e68
xor ebx, ebx
cmp edi, ebx
je 0x498e6a
cmp esi, ebx
je 0x498e6a
push ebx
push edx
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x20], bx
call fcn.00402800
push edi
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x16
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x34], ebx
mov word [ebp - 0x38], bx
call fcn.00401ee0
push esi
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 0x17
call fcn.00403af0
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x18
call fcn.00401070
mov esi, dword [ebp - 0x1c]
lea ecx, [ebp - 0x160]
call fcn.00401ed0
push eax
call fcn.00591712
add esp, 4
lea ecx, [ebp - 0x3c]
mov edi, eax
call fcn.00401ed0
push eax
call fcn.00591712
add esi, edi
lea esi, [eax + esi + 3]
lea edi, [esi + esi]
push edi
call fcn.005a9fe9
mov edx, eax
add esp, 8
cmp edx, ebx
mov dword [ebp - 0x48], edx
je 0x498e3c
mov ecx, edi
mov edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
lea ecx, [ebp - 0x160]
call fcn.00401ed0
push eax
lea ecx, [ebp - 0x3c]
call fcn.00401ed0
push eax
lea ecx, [ebp - 0x24]
call fcn.00401ed0
push eax
mov eax, dword [ebp - 0x48]
push esi
push eax
call fcn.005916a2
mov ecx, dword [ebp - 0x48]
push ecx
call fcn.00591712
add esp, 0x18
mov dword [ebp - 0x40], eax
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 0x17
call fcn.00401070
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x16
call fcn.00401070
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x15
call fcn.00401070
mov ecx, dword [ebp - 0x48]
jmp 0x498e6a
xor ebx, ebx
cmp ecx, ebx
jne 0x498e71
lea ecx, [ebp - 0x44]
mov eax, dword [ebp - 0x30]
cmp eax, ebx
jne 0x498e7b
lea eax, [ebp - 0x2c]
push ecx
push eax
call fcn.005943c4
add esp, 8
test eax, eax
jne 0x498f68
mov eax, dword [ebp - 0x48]
cmp eax, ebx
jne 0x498e97
lea eax, [ebp - 0x44]
mov edx, 0x665f68
test edx, edx
je 0x498f68
cmp eax, ebx
je 0x498f68
push eax
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x34], ebx
mov word [ebp - 0x38], bx
call fcn.00401ee0
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x19
call fcn.00401070
push ebx
push 0x665f68
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x20], bx
call fcn.00402800
mov esi, dword [ebp - 0x1c]
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x1a
call fcn.00401ed0
push eax
call fcn.00591712
lea esi, [eax + esi + 2]
lea edi, [esi + esi]
push edi
call fcn.005a9fe9
mov edx, eax
add esp, 8
cmp edx, ebx
mov dword [ebp - 0x30], edx
je 0x498f50
mov ecx, edi
mov edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
lea ecx, [ebp - 0x3c]
call fcn.00401ed0
push eax
lea ecx, [ebp - 0x24]
call fcn.00401ed0
push eax
mov eax, dword [ebp - 0x30]
push esi
push eax
call fcn.005916a2
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.00591712
add esp, 0x14
mov dword [ebp - 0x28], eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x19
call fcn.00401070
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x15
call fcn.00401070
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0xd
call fcn.00401070
mov edi, dword [ebp - 0x50]
mov eax, dword [ebp - 0x30]
test eax, eax
jne 0x498f81
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 0x18]
mov ecx, dword [edi + 0xdc]
push 0
push ecx
lea esi, [edx + 0x2f8]
mov edx, dword [edi + 0x3c]
push eax
mov eax, dword [ebp - 0x100]
push edx
push eax
mov ecx, esi
call fcn.0041a680
mov ecx, dword [ebp - 0xac]
cmp dword [ecx - 8], 5
jle 0x498fd2
mov eax, dword [ebp - 0x30]
test eax, eax
jne 0x498fbc
lea eax, [ebp - 0x2c]
mov edx, dword [edi + 0xdc]
push 0
push edx
push eax
mov eax, dword [edi + 0x3c]
push eax
push ecx
mov ecx, esi
call fcn.0041a680
mov eax, dword [ebp - 0x30]
mov byte [ebp - 0x108], 1
test eax, eax
jne 0x498fe3
lea eax, [ebp - 0x2c]
mov ecx, 0x665f68
test ecx, ecx
je 0x4990ca
test eax, eax
je 0x4990ca
xor ecx, ecx
push eax
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x34], ecx
mov word [ebp - 0x38], cx
lea ecx, [ebp - 0x3c]
call fcn.00401ee0
mov bl, 0x1b
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], bl
call fcn.00401070
xor eax, eax
lea ecx, [ebp - 0x24]
push eax
push 0x665f68
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x1c], eax
mov word [ebp - 0x20], ax
call fcn.00402800
mov esi, dword [ebp - 0x1c]
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x1c
call fcn.00401ed0
push eax
call fcn.00591712
lea esi, [eax + esi + 2]
lea edi, [esi + esi]
push edi
call fcn.005a9fe9
mov edx, eax
add esp, 8
test edx, edx
mov dword [ebp - 0xb8], edx
je 0x4990b0
mov ecx, edi
mov edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
lea ecx, [ebp - 0x3c]
call fcn.00401ed0
push eax
lea ecx, [ebp - 0x24]
call fcn.00401ed0
push eax
mov eax, dword [ebp - 0xb8]
push esi
push eax
call fcn.005916a2
mov ecx, dword [ebp - 0xb8]
push ecx
call fcn.00591712
add esp, 0x14
mov dword [ebp - 0xb0], eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], bl
call fcn.00401070
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0xd
call fcn.00401070
mov edi, dword [ebp - 0x50]
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x54]
lea edx, [ebp - 0x150]
push edx
push eax
call fcn.00583cc0
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0xc
call fcn.00401070
jmp 0x499207
mov esi, dword [ebp + 0x10]
test esi, esi
je 0x499207
mov al, byte [ebp - 0x11]
test al, al
jne 0x499207
mov ecx, dword [edi + 0x50]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov edx, 0x665f68
mov byte [ebp - 0x108], 1
test edx, edx
je 0x4991f4
xor eax, eax
push esi
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x34], eax
mov word [ebp - 0x38], ax
call fcn.00401ee0
mov bl, 0x1d
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], bl
call fcn.00401070
xor eax, eax
lea ecx, [ebp - 0x24]
push eax
push 0x665f68
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x1c], eax
mov word [ebp - 0x20], ax
call fcn.00402800
mov esi, dword [ebp - 0x1c]
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x1e
call fcn.00401ed0
push eax
call fcn.00591712
lea esi, [eax + esi + 2]
lea edi, [esi + esi]
push edi
call fcn.005a9fe9
mov edx, eax
add esp, 8
test edx, edx
mov dword [ebp - 0xb8], edx
je 0x4991da
mov ecx, edi
mov edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
lea ecx, [ebp - 0x3c]
call fcn.00401ed0
push eax
lea ecx, [ebp - 0x24]
call fcn.00401ed0
push eax
mov eax, dword [ebp - 0xb8]
push esi
push eax
call fcn.005916a2
mov ecx, dword [ebp - 0xb8]
push ecx
call fcn.00591712
add esp, 0x14
mov dword [ebp - 0xb0], eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], bl
call fcn.00401070
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0xc
call fcn.00401070
mov edi, dword [ebp - 0x50]
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x54]
lea edx, [ebp - 0x150]
push edx
push eax
call fcn.00583cc0
mov eax, dword [edi + 0x420]
test eax, eax
jne 0x499218
mov ecx, edi
call fcn.00563ba0
mov esi, dword [ebp - 0x18]
mov eax, dword [esi + 0x4f8]
test eax, eax
je 0x49923a
mov ecx, dword [esi + 0x54c]
push esi
push 0
push 0x140c
push ecx
call dword [sym.imp.USER32.dll_PostMessageA]
mov eax, dword [esi + 0x4f4]
test eax, eax
je 0x499259
mov edx, dword [esi + 0x54c]
push esi
push 0
push 0x13fc
push edx
call dword [sym.imp.USER32.dll_PostMessageA]
mov eax, dword [edi + 0x420]
test eax, eax
jne 0x49929f
mov ecx, edi
call fcn.00563ba0
mov eax, dword [edi + 0x86c]
test eax, eax
je 0x49928b
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x150]
push eax
mov dword [edi + 0xc], 1
push ecx
jmp 0x499b8d
test edi, edi
je 0x49929f
mov ecx, edi
call fcn.0055bd60
push edi
call fcn.005aa012
add esp, 4
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x150]
push eax
push ecx
jmp 0x499b8d
mov eax, dword [ebp - 0x6c]
mov byte [ebp - 0x112], 2
test eax, eax
jne 0x4992d4
mov edx, dword [ebp + 8]
mov eax, dword [esi + 0x414]
push edx
push 0x13fe
push 0x111
push eax
call ebx
mov esi, dword [edi + 0x50]
mov ecx, 0x665ff4
test ecx, ecx
je 0x4993fd
test esi, esi
je 0x4993fd
mov edx, 0x66d01c
test edx, edx
je 0x4993fd
xor edi, edi
push edi
push ecx
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x34], edi
mov word [ebp - 0x38], di
call fcn.00402800
push esi
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x1f
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x1c], edi
mov word [ebp - 0x20], di
call fcn.00401ee0
mov bl, 0x20
push 0x66d01c
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], bl
call fcn.00403af0
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x21
call fcn.00401070
mov esi, dword [ebp - 0x34]
lea ecx, [ebp - 0x160]
call fcn.00401ed0
push eax
call fcn.00591712
add esp, 4
lea ecx, [ebp - 0x24]
mov edi, eax
call fcn.00401ed0
push eax
call fcn.00591712
add esi, edi
lea esi, [eax + esi + 3]
lea edi, [esi + esi]
push edi
call fcn.005a9fe9
mov edx, eax
add esp, 8
test edx, edx
mov dword [ebp - 0x64], edx
je 0x4993d4
mov ecx, edi
mov edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
lea ecx, [ebp - 0x160]
call fcn.00401ed0
push eax
lea ecx, [ebp - 0x24]
call fcn.00401ed0
push eax
lea ecx, [ebp - 0x3c]
call fcn.00401ed0
push eax
mov eax, dword [ebp - 0x64]
push esi
push eax
call fcn.005916a2
mov ecx, dword [ebp - 0x64]
push ecx
call fcn.00591712
add esp, 0x18
mov dword [ebp - 0x5c], eax
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], bl
call fcn.00401070
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x1f
call fcn.00401070
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0xc
call fcn.00401070
mov edi, dword [ebp - 0x50]
mov bl, byte [ebp - 0x11]
test bl, bl
je 0x499499
mov eax, dword [0x6697fc]
test eax, eax
je 0x499431
mov ecx, dword [ebp - 0x64]
test ecx, ecx
jne 0x49941b
lea ecx, [ebp - 0x60]
mov eax, dword [ebp - 0xf4]
test eax, eax
jne 0x49942b
lea eax, [ebp - 0xf0]
push 0
push ecx
push eax
jmp 0x4994aa
mov eax, dword [ebp - 0xf4]
test eax, eax
jne 0x499441
lea eax, [ebp - 0xf0]
push eax
lea ecx, [ebp - 0x88]
call fcn.005add0d
mov eax, dword [ebp - 0x64]
mov byte [ebp - 4], 0x22
test eax, eax
jne 0x49945b
lea eax, [ebp - 0x60]
push eax
lea ecx, [ebp - 0x154]
call fcn.005add0d
mov edx, dword [ebp - 0x154]
mov eax, dword [ebp - 0x88]
push 0
push edx
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
lea ecx, [ebp - 0x154]
call fcn.005adc4d
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0xc
call fcn.005adc4d
jmp 0x4994b0
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x4994a3
lea eax, [ebp - 0x60]
mov ecx, dword [edi + 0x50]
push 0
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_CopyFileW]
mov esi, dword [ebp - 0x18]
mov al, byte [esi + 0x290]
test al, al
jne 0x4994c4
mov al, byte [ebp - 0x57]
test al, al
je 0x4994cf
mov eax, dword [ebp - 0x6c]
test eax, eax
jne 0x4995f7
mov al, byte [ebp - 0x56]
test al, al
jne 0x4995f7
test bl, bl
je 0x4994fb
mov eax, dword [ebp - 0xf4]
test eax, eax
jne 0x4994ee
lea eax, [ebp - 0xf0]
mov edx, dword [edi + 0x50]
push 0
push edx
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileW]
mov eax, dword [edi + 0x50]
mov ecx, 0x665f68
test ecx, ecx
je 0x4995e2
test eax, eax
je 0x4995e2
xor esi, esi
push eax
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x40], esi
mov word [ebp - 0x44], si
call fcn.00401ee0
mov bl, 0x23
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], bl
call fcn.00401070
push esi
push 0x665f68
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x1c], esi
mov word [ebp - 0x20], si
call fcn.00402800
mov eax, dword [ebp - 0x48]
mov byte [ebp - 4], 0x24
cmp eax, esi
jne 0x49955e
lea eax, [ebp - 0x44]
mov esi, dword [ebp - 0x1c]
push eax
call fcn.00591712
lea esi, [eax + esi + 2]
lea edi, [esi + esi]
push edi
call fcn.005a9fe9
mov edx, eax
add esp, 8
test edx, edx
mov dword [ebp - 0xdc], edx
je 0x4995cb
mov ecx, edi
mov edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
lea ecx, [ebp - 0x48]
call fcn.00401ed0
push eax
lea ecx, [ebp - 0x24]
call fcn.00401ed0
push eax
mov eax, dword [ebp - 0xdc]
push esi
push eax
call fcn.005916a2
mov ecx, dword [ebp - 0xdc]
push ecx
call fcn.00591712
add esp, 0x14
mov dword [ebp - 0xd4], eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], bl
call fcn.00401070
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0xc
call fcn.00401070
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x54]
lea edx, [ebp - 0x150]
push edx
push eax
call fcn.00583cc0
jmp 0x499650
test bl, bl
jne 0x499604
push 0
mov ecx, edi
call fcn.005606b0
mov edi, dword [ebp + 8]
mov ebx, dword [ebp - 0x54]
lea ecx, [ebp - 0x150]
mov byte [ebp - 0x112], 4
push ecx
push edi
mov ecx, ebx
mov byte [ebp - 0x111], 1
call fcn.00583cc0
mov edx, dword [ebp - 0x111]
push 1
push edi
push edx
mov ecx, ebx
call fcn.00585790
mov eax, dword [esi + 0x414]
push edi
push 0x1426
push 0x111
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
mov al, byte [ebp + 0xc]
test al, al
je 0x499a3e
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x499665
lea eax, [ebp - 0x60]
push 0x5c
push eax
call fcn.00591662
mov esi, eax
add esp, 8
test esi, esi
je 0x4998e9
add esi, 2
cmp word [esi], 0
je 0x4998e9
xor ebx, ebx
xor ecx, ecx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x40], ebx
mov word [ebp - 0x44], bx
mov edi, dword [ebp - 0x18]
mov byte [ebp - 4], 0x25
mov eax, dword [edi + 0x41c]
cmp eax, ebx
je 0x4996aa
mov edi, eax
jmp 0x4996b0
add edi, 0x420
mov edx, 0x665ff4
test edx, edx
je 0x4997c9
cmp edi, ebx
je 0x4997c9
cmp esi, ebx
je 0x4997c9
push ebx
push edx
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x28], ebx
mov word [ebp - 0x2c], bx
call fcn.00402800
push edi
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x26
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x34], ebx
mov word [ebp - 0x38], bx
call fcn.00401ee0
push esi
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x27
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x20], bx
call fcn.00401ee0
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x28
call fcn.00401070
mov esi, dword [ebp - 0x28]
lea ecx, [ebp - 0x24]
call fcn.00401ed0
push eax
call fcn.00591712
add esp, 4
lea ecx, [ebp - 0x3c]
mov edi, eax
call fcn.00401ed0
push eax
call fcn.00591712
add esi, edi
lea esi, [eax + esi + 3]
lea edi, [esi + esi]
push edi
call fcn.005a9fe9
mov edx, eax
add esp, 8
cmp edx, ebx
mov dword [ebp - 0x48], edx
je 0x4997a2
mov ecx, edi
mov edi, edx
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
lea ecx, [ebp - 0x24]
call fcn.00401ed0
push eax
lea ecx, [ebp - 0x3c]
call fcn.00401ed0
push eax
lea ecx, [ebp - 0x30]
call fcn.00401ed0
push eax
mov eax, dword [ebp - 0x48]
push esi
push eax
call fcn.005916a2
mov ecx, dword [ebp - 0x48]
push ecx
call fcn.00591712
add esp, 0x18
mov dword [ebp - 0x40], eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x27
call fcn.00401070
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x26
call fcn.00401070
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x25
call fcn.00401070
mov ecx, dword [ebp - 0x48]
cmp ecx, ebx
jne 0x4997d0
lea ecx, [ebp - 0x44]
mov eax, dword [ebp - 0x64]
cmp eax, ebx
jne 0x4997da
lea eax, [ebp - 0x60]
push ecx
push eax
call fcn.005943c4
add esp, 8
test eax, eax
jne 0x4998dd
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x4997f6
lea eax, [ebp - 0x44]
mov edx, 0x665f68
test edx, edx
je 0x4998cb
test eax, eax
je 0x4998cb
xor esi, esi
push eax
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x28], esi
mov word [ebp - 0x2c], si
call fcn.00401ee0
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x29
call fcn.00401070
push esi
push 0x665f68
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x1c], esi
mov word [ebp - 0x20], si
call fcn.00402800
mov eax, dword [ebp - 0x30]
mov byte [ebp - 4], 0x2a
cmp eax, esi
jne 0x499852
lea eax, [ebp - 0x2c]
mov esi, dword [ebp - 0x1c]
push eax
call fcn.00591712
lea ebx, [eax + esi + 2]
lea esi, [ebx + ebx]
push esi
call fcn.005a9fe9
mov edi, eax
add esp, 8
test edi, edi
mov dword [ebp - 0x64], edi
je 0x4998b3
mov ecx, esi
xor eax, eax
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebp - 0x30]
test eax, eax
jne 0x499890
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x24]
call fcn.00401ed0
push eax
mov eax, dword [ebp - 0x64]
push ebx
push eax
call fcn.005916a2
mov ecx, dword [ebp - 0x64]
push ecx
call fcn.00591712
add esp, 0x14
mov dword [ebp - 0x5c], eax
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x29
call fcn.00401070
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x25
call fcn.00401070
mov ecx, dword [ebp - 0x50]
mov eax, dword [ecx + 0x420]
test eax, eax
jne 0x4998dd
call fcn.00563ba0
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0xc
call fcn.00401070
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x4998f3
lea eax, [ebp - 0x60]
mov edi, dword [ebp - 0x50]
mov edx, dword [ebp - 0x18]
push 0
mov ecx, dword [edi + 0xdc]
lea esi, [edx + 0x2f8]
mov edx, dword [edi + 0x3c]
push ecx
push eax
mov eax, dword [ebp - 0x100]
push edx
push eax
mov ecx, esi
call fcn.0041a680
mov ecx, dword [ebp - 0xac]
cmp dword [ecx - 8], 5
jle 0x499947
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x499931
lea eax, [ebp - 0x60]
mov edx, dword [edi + 0xdc]
push 0
push edx
push eax
mov eax, dword [edi + 0x3c]
push eax
push ecx
mov ecx, esi
call fcn.0041a680
mov eax, dword [ebp - 0x64]
mov byte [ebp - 0x108], 1
test eax, eax
jne 0x499958
lea eax, [ebp - 0x60]
mov ecx, 0x665f68
test ecx, ecx
je 0x499b40
test eax, eax
je 0x499b40
xor esi, esi
push eax
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x40], esi
mov word [ebp - 0x44], si
call fcn.00401ee0
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0x2b
call fcn.00401070
push esi
push 0x665f68
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x28], esi
mov word [ebp - 0x2c], si
call fcn.00402800
mov eax, dword [ebp - 0x48]
mov byte [ebp - 4], 0x2c
cmp eax, esi
jne 0x4999b7
lea eax, [ebp - 0x44]
mov esi, dword [ebp - 0x28]
push eax
call fcn.00591712
lea ebx, [eax + esi + 2]
lea esi, [ebx + ebx]
push esi
call fcn.005a9fe9
mov edi, eax
add esp, 8
test edi, edi
mov dword [ebp - 0xb8], edi
je 0x499a26
mov ecx, esi
xor eax, eax
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x4999f8
lea eax, [ebp - 0x44]
mov ecx, dword [ebp - 0x30]
test ecx, ecx
jne 0x499a02
lea ecx, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0xb8]
push ecx
push ebx
push eax
call fcn.005916a2
mov ecx, dword [ebp - 0xb8]
push ecx
call fcn.00591712
add esp, 0x14
mov dword [ebp - 0xb0], eax
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x2b
call fcn.00401070
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x48]
jmp 0x499b3b
mov edi, dword [ebp + 0x10]
test edi, edi
je 0x499b40
mov ecx, dword [ebp - 0x50]
mov eax, dword [ecx + 0x420]
test eax, eax
jne 0x499a5b
call fcn.00563ba0
mov edx, 0x665f68
mov byte [ebp - 0x108], 1
test edx, edx
je 0x499b40
xor esi, esi
push edi
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x28], esi
mov word [ebp - 0x2c], si
call fcn.00401ee0
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0x2d
call fcn.00401070
push esi
push 0x665f68
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x34], esi
mov word [ebp - 0x38], si
call fcn.00402800
mov eax, dword [ebp - 0x30]
mov byte [ebp - 4], 0x2e
cmp eax, esi
jne 0x499ab9
lea eax, [ebp - 0x2c]
mov esi, dword [ebp - 0x34]
push eax
call fcn.00591712
lea ebx, [eax + esi + 2]
lea esi, [ebx + ebx]
push esi
call fcn.005a9fe9
mov edi, eax
add esp, 8
test edi, edi
mov dword [ebp - 0xb8], edi
je 0x499b28
mov ecx, esi
xor eax, eax
mov edx, ecx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [ebp - 0x30]
test eax, eax
jne 0x499afa
lea eax, [ebp - 0x2c]
mov ecx, dword [ebp - 0x3c]
test ecx, ecx
jne 0x499b04
lea ecx, [ebp - 0x38]
push eax
mov eax, dword [ebp - 0xb8]
push ecx
push ebx
push eax
call fcn.005916a2
mov ecx, dword [ebp - 0xb8]
push ecx
call fcn.00591712
add esp, 0x14
mov dword [ebp - 0xb0], eax
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x2d
call fcn.00401070
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x30]
call fcn.00401070
mov esi, dword [ebp - 0x50]
mov eax, dword [esi + 0x420]
test eax, eax
jne 0x499b7b
mov ecx, esi
call fcn.00563ba0
mov eax, dword [esi + 0x86c]
test eax, eax
je 0x499b67
mov dword [esi + 0xc], 1
jmp 0x499b7b
test esi, esi
je 0x499b7b
mov ecx, esi
call fcn.0055bd60
push esi
call fcn.005aa012
add esp, 4
mov al, byte [ebp - 0x56]
test al, al
je 0x499bbc
mov eax, dword [ebp + 8]
lea edx, [ebp - 0x150]
push edx
push eax
mov ecx, dword [ebp - 0x54]
call fcn.00583cc0
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0xb
call fcn.005adc4d
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 9
call fcn.005adc4d
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x80]
jmp 0x4981d4
mov esi, dword [ebp + 8]
lea ecx, [ebp - 0x150]
push ecx
mov ecx, dword [ebp - 0x54]
push esi
mov byte [ebp - 0x104], 1
call fcn.00583cc0
mov edx, dword [ebp - 0x18]
push esi
push 0
push 0x140e
mov eax, dword [edx + 0x54c]
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0xb
call fcn.005adc4d
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 9
call fcn.005adc4d
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x80]
jmp 0x4981d4