Function at 0x4b2f30
Capabilities:
Copy file
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x601688
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 0x4b3716
xor ebx, ebx
xor edx, edx
mov dword [ebp - 0x50], ebx
cmp edx, dword [ecx + 0x51c]
jge 0x4b2fef
mov eax, dword [ecx + 0x518]
mov ecx, dword [ebp + 8]
lea esi, [edx*8]
add eax, esi
cmp dword [eax], ecx
jne 0x4b30e9
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 0x4b2fbe
add ecx, 8
jmp 0x4b2fb2
mov esi, dword [ebp - 0x18]
test eax, eax
je 0x4b2fe0
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.005c8320
add esp, 0xc
mov eax, dword [esi + 0x51c]
dec eax
xor edi, edi
mov dword [esi + 0x51c], eax
cmp ebx, edi
jne 0x4b3101
mov eax, dword [0x6cc564]
lea ecx, [ebp - 0x288]
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
mov dword [ebp - 0x294], edi
mov dword [ebp - 0x28c], edi
mov word [ebp - 0x290], di
call fcn.0041b680
mov eax, dword [0x6cc564]
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.0041b680
mov eax, dword [0x6cc564]
mov dword [ebp - 0x2fc], 0x61d6e4
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.005b80a0
test al, al
je 0x4b30da
mov eax, dword [ebp - 0x2e4]
cmp eax, edi
je 0x4b30da
push eax
mov ecx, esi
call fcn.004c10e0
mov ebx, eax
cmp ebx, edi
mov dword [ebp - 0x50], ebx
jne 0x4b30f2
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x2fc]
jmp 0x4b3711
mov ecx, dword [ebp - 0x18]
inc edx
jmp 0x4b2f71
lea ecx, [ebp - 0x2fc]
mov byte [ebp - 4], 0
call fcn.0046e1b0
mov dword [ebx + 8], edi
mov eax, dword [0x6cc564]
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.0041b680
lea ecx, [ebp - 0xdc]
call fcn.0041b680
mov eax, dword [0x6cc564]
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.0041b680
mov eax, dword [0x6cc564]
mov dword [ebp - 0x150], 0x61d6e4
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.005b80a0
test al, al
je 0x4b3707
mov al, byte [esi + 0x4ac]
mov byte [ebp - 0x57], 0
test al, al
mov byte [ebp - 0x11], 0
jne 0x4b31f6
mov cl, byte [esi + 0x4ad]
test cl, cl
je 0x4b32e5
mov cl, byte [esi + 0x4af]
test cl, cl
je 0x4b32e5
mov ecx, dword [ebx + 0xa24]
cmp ecx, 0x7573
je 0x4b3208
cmp ecx, edi
jne 0x4b322e
test al, al
je 0x4b322e
mov al, byte [ebp - 0x10e]
test al, al
je 0x4b322e
mov al, byte [ebx + 0x32a]
test al, al
je 0x4b322e
mov al, byte [ebp - 0x106]
test al, al
je 0x4b322e
mov byte [ebp - 0x57], 1
cmp ecx, 0x7573
jne 0x4b32e5
mov dword [ebx + 0xa24], edi
mov dword [ebx + 0x8bc], 3
mov eax, dword [ebp - 0x148]
mov byte [ebp - 0x11], 1
mov dword [ebx + 0x470], eax
mov ecx, dword [ebp - 0x144]
mov dword [ebx + 0x474], ecx
mov edx, dword [ebp - 0x148]
mov dword [ebx + 0x478], edx
mov eax, dword [ebp - 0x144]
mov dword [ebx + 0x47c], eax
mov eax, dword [ebx + 0xdc]
cmp eax, edi
je 0x4b32a1
push eax
mov byte [ebp - 4], 3
call fcn.005dfce5
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.005dfcbc
mov edx, eax
add esp, 4
cmp edx, edi
mov dword [ebx + 0xdc], edx
je 0x4b32e5
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 + 0x8bc]
mov byte [ebp - 0x114], cl
mov eax, dword [ebx + 0x470]
mov dword [ebp - 0x148], eax
mov ecx, dword [ebx + 0x474]
or eax, ecx
mov dword [ebp - 0x144], ecx
jne 0x4b3334
cmp dword [ebx + 0x8bc], 3
jne 0x4b3334
mov eax, dword [ebx + 0x478]
mov ecx, dword [ebx + 0x47c]
mov edx, eax
or edx, ecx
je 0x4b3334
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x144], ecx
mov edx, dword [ebx + 0x40]
cmp edx, edi
je 0x4b335e
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x4b335e
push edx
lea eax, [ebp - 0xa8]
push 0x6a1fe8
push eax
call fcn.005dc6eb
add esp, 0xc
mov ecx, dword [0x6cc564]
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.00566570
mov eax, dword [ebp - 0x100]
mov ecx, dword [ebp - 0x68]
push eax
push ecx
call fcn.005c8a3c
add esp, 8
test eax, eax
je 0x4b33af
mov edx, dword [ebp - 0x68]
lea eax, [ebp - 0xac]
push edx
push 0x6a1fe8
push eax
call fcn.005dc6eb
add esp, 0xc
mov esi, dword [ebp - 0x18]
mov al, byte [esi + 0x504]
test al, al
jne 0x4b3406
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 [0x6cc564]
mov dword [ebp - 0x70], ecx
mov edi, dword [ebx + 0xa24]
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 0x4b346f
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 0x4b3475
cmp al, dl
je 0x4b3475
mov byte [ebp - 0x58], 0
jmp 0x4b347d
mov al, byte [ebp - 0x113]
cmp al, 2
je 0x4b3485
cmp al, 1
je 0x4b3485
mov esi, dword [ebp - 0x18]
xor dl, dl
mov byte [ebp - 0x55], dl
test edi, edi
je 0x4b379b
cmp edi, 0x7563
je 0x4b379b
cmp edi, 0x7540
jne 0x4b34db
mov edx, dword [ebx + 0x478]
mov dword [ebp - 0x140], edx
mov eax, dword [ebx + 0x47c]
mov dword [ebp - 0x13c], eax
mov al, byte [ebp - 0x112]
cmp al, 5
jne 0x4b34cf
mov byte [ebp - 0x112], 3
jmp 0x4b357b
mov byte [ebp - 0x113], 1
jmp 0x4b357b
cmp al, 2
setne al
dec eax
and al, 0xfd
add eax, 6
cmp ecx, 0x7565
mov byte [ebp - 0x113], al
jne 0x4b34fd
mov byte [ebp - 0x111], 2
jmp 0x4b350f
cmp ecx, 0x7566
setne cl
add ecx, 3
mov byte [ebp - 0x111], cl
test dl, dl
je 0x4b353f
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 0x4b354f
mov byte [ebp - 0x112], 6
mov ecx, dword [ebp + 8]
test ecx, ecx
jne 0x4b357b
cmp al, 6
jne 0x4b357b
mov eax, dword [ebx + 0xa34]
test eax, eax
jne 0x4b357b
mov eax, dword [0x6d1c64]
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 + 0x468]
test eax, eax
jne 0x4b35ce
cmp byte [ebp - 0x112], 3
je 0x4b35a3
mov ecx, ebx
call fcn.005966c0
mov eax, dword [ebx + 0x8c0]
test eax, eax
je 0x4b35ba
push ebx
mov ecx, 0x6d1198
call fcn.004335a0
jmp 0x4b35ce
test ebx, ebx
je 0x4b35ce
mov ecx, ebx
call fcn.0058cb20
push ebx
call fcn.005dfce5
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.00597c20
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x4b35f6
lea eax, [ebp - 0x44]
push 0x5c
push eax
call fcn.005c71e2
add esp, 8
test eax, eax
je 0x4b360a
add eax, 2
jmp 0x4b3614
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x4b3614
lea eax, [ebp - 0x44]
mov ebx, dword [ebp + 8]
test ebx, ebx
sete cl
push ecx
push eax
mov ecx, esi
call fcn.004b5930
cmp edi, 0x7540
je 0x4b3729
test eax, eax
je 0x4b365d
lea edx, [ebp - 0x150]
mov ecx, esi
push edx
call fcn.004b99b0
test eax, eax
je 0x4b365d
lea eax, [ebp - 0x150]
mov ecx, esi
push eax
call fcn.004b9c20
test eax, eax
jne 0x4b3729
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.005b9830
mov eax, dword [ebp - 0x144]
test eax, eax
jl 0x4b36a4
jg 0x4b3692
mov ecx, dword [ebp - 0x148]
test ecx, ecx
jbe 0x4b36a4
mov edx, dword [ebp - 0x148]
push 1
push edi
push eax
push edx
mov ecx, esi
call fcn.005bb1b0
mov al, byte [ebp - 0x111]
test al, al
je 0x4b36bf
mov eax, dword [ebp - 0x111]
push 1
push edi
push eax
mov ecx, esi
call fcn.005bb300
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.005e38b9
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 5
call fcn.00401070
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 2
call fcn.005e38b9
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x150]
call fcn.0046e1b0
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.005b9830
mov eax, dword [ebp - 0x144]
test eax, eax
jl 0x4b3769
jg 0x4b3757
mov ecx, dword [ebp - 0x148]
test ecx, ecx
jbe 0x4b3769
push 1
push edi
push eax
mov eax, dword [ebp - 0x148]
push eax
mov ecx, esi
call fcn.005bb1b0
mov al, byte [ebp - 0x111]
test al, al
je 0x4b3784
mov ecx, dword [ebp - 0x111]
push 1
push edi
push ecx
mov ecx, esi
call fcn.005bb300
mov edx, dword [ebx + 0x414]
push edi
push 0x1426
push 0x111
push edx
jmp 0x4b36d1
mov eax, dword [ebp + 8]
test eax, eax
jne 0x4b37a9
mov byte [esi + 0x479], 1
mov al, byte [ebp - 0x106]
mov byte [ebp - 0x113], 4
test al, al
je 0x4b37be
mov byte [ebp - 0x49], 1
test dl, dl
je 0x4b37e8
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 0x4b3800
mov al, byte [ebp - 0x107]
mov byte [ebp - 0x56], 1
test al, al
je 0x4b3804
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 0x4b3826
cmp al, 3
je 0x4b3826
cmp al, 4
jne 0x4b382f
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.005b9830
mov eax, dword [ebp - 0x144]
test eax, eax
jl 0x4b3872
jg 0x4b3860
mov ecx, dword [ebp - 0x148]
test ecx, ecx
jbe 0x4b3872
push 1
push esi
push eax
mov eax, dword [ebp - 0x148]
push eax
mov ecx, edi
call fcn.005bb1b0
test bl, bl
je 0x4b3887
mov ecx, dword [ebp - 0x111]
push 1
push esi
push ecx
mov ecx, edi
call fcn.005bb300
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 0x4b38be
mov edx, dword [ebp - 0xf4]
lea ecx, [ebp - 0x80]
push edx
call fcn.00402060
mov edi, dword [ebp - 0x50]
xor ebx, ebx
jmp 0x4b3a8c
mov edi, dword [ebp - 0x50]
cmp dword [edi + 0xcc], ecx
je 0x4b38e8
cmp dword [edi + 0x5c], ecx
je 0x4b38e8
mov eax, dword [edi + 0x54]
cmp eax, ecx
jne 0x4b38d8
lea eax, [edi + 0x58]
push eax
lea ecx, [ebp - 0x80]
call fcn.00402060
xor ebx, ebx
jmp 0x4b3a8c
mov al, byte [ebp - 0x102]
test al, al
mov eax, dword [ebp - 0xf4]
je 0x4b391e
push eax
lea ecx, [ebp - 0x80]
call fcn.00402060
mov eax, dword [ebp - 0x80]
test eax, eax
jne 0x4b390b
lea eax, [ebp - 0x7c]
mov ecx, dword [ebp - 0x88]
push eax
call fcn.005a47b0
xor ebx, ebx
jmp 0x4b3a8c
cmp eax, ecx
jne 0x4b3928
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.004b1bc0
mov esi, eax
cmp esi, ebx
jle 0x4b3a8c
mov eax, dword [0x6cc564]
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.0041b680
mov eax, dword [0x6cc564]
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.0041b680
mov eax, dword [0x6cc564]
mov dword [ebp - 0x234], 0x61d6e4
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.005b80a0
test al, al
je 0x4b3a7d
mov edx, dword [ebp - 0x22c]
mov eax, dword [ebp - 0x148]
cmp edx, eax
jne 0x4b3a7d
mov eax, dword [ebp - 0x228]
mov ecx, dword [ebp - 0x144]
cmp eax, ecx
jne 0x4b3a7d
mov eax, dword [ebp - 0xe8]
cmp eax, ebx
mov ecx, eax
jne 0x4b3a42
lea ecx, [ebp - 0xe4]
mov eax, dword [ebp - 0x1cc]
cmp eax, ebx
jne 0x4b3a52
lea eax, [ebp - 0x1c8]
push ecx
push eax
call fcn.005c996c
add esp, 8
test eax, eax
jne 0x4b3a7d
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x130], esi
mov al, byte [ecx + 0x28f]
test al, al
je 0x4b3a7d
mov dword [ebp - 0x6c], ebx
mov byte [ebp - 0x110], 0
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], 9
call fcn.0046e1b0
mov eax, dword [ebp - 0x80]
cmp eax, ebx
jne 0x4b3a96
lea eax, [ebp - 0x7c]
push 0x5c
push eax
call fcn.005c71e2
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4b3aac
add ebx, 2
jmp 0x4b3ab8
mov eax, dword [ebp - 0x80]
test eax, eax
mov ebx, eax
jne 0x4b3ab8
lea ebx, [ebp - 0x7c]
push 0x2e
push ebx
call fcn.005c71e2
mov esi, eax
add esp, 8
test esi, esi
je 0x4b3b36
push 0x6a83a4
push esi
call fcn.005c996c
add esp, 8
test eax, eax
je 0x4b3aed
push 0x6a9c90
push esi
call fcn.005c996c
add esp, 8
test eax, eax
jne 0x4b3b36
mov al, byte [ebp - 0x55]
mov byte [ebp - 0x105], 1
test al, al
jne 0x4b3b02
mov al, byte [ebp - 0x49]
test al, al
jne 0x4b3b23
mov eax, dword [ebp + 8]
test eax, eax
je 0x4b3b1c
mov ecx, dword [ebp - 0x18]
lea edx, [ebp - 0x150]
push edx
call fcn.004b96d0
test eax, eax
je 0x4b3b23
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.005b9830
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
test eax, eax
jge 0x4b3b9c
mov eax, dword [edi + 0x468]
test eax, eax
jne 0x4b50c6
mov ecx, edi
call fcn.005966c0
mov eax, dword [edi + 0x8c0]
test eax, eax
je 0x4b3b78
push edi
mov ecx, 0x6d1198
call fcn.004335a0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x80]
jmp 0x4b36de
test edi, edi
je 0x4b50c6
mov ecx, edi
call fcn.0058cb20
push edi
call fcn.005dfce5
add esp, 4
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x80]
jmp 0x4b36de
mov edx, dword [0x6cc564]
mov dword [ebp - 0x74], edx
test esi, esi
mov byte [ebp - 4], 0xb
jne 0x4b3baf
mov esi, ebx
push esi
lea ecx, [ebp - 0x84]
call fcn.005e3979
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.004d8450
mov dword [ebp - 0x11c], eax
mov al, byte [esi + 0x47a]
test al, al
jne 0x4b50ab
mov edx, dword [ebp - 0x74]
lea eax, [ebp - 0xbc]
push edx
push 0x6a1fe8
push eax
call fcn.005dc6eb
mov eax, dword [edi + 0xdc]
add esp, 0xc
test eax, eax
je 0x4b3c27
mov cl, byte [ebp - 0x11]
test cl, cl
jne 0x4b3c27
push eax
lea ecx, [ebp - 0xf8]
push 0x6a1fe8
push ecx
call fcn.005dc6eb
add esp, 0xc
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x54]
lea edx, [ebp - 0x150]
push edx
push eax
call fcn.005b9830
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 0x11c]
push 1
push ecx
mov ecx, dword [ebp - 0x54]
push edx
call fcn.005badc0
mov eax, dword [ebp - 0x6c]
test eax, eax
je 0x4b3c98
mov edx, dword [ebp + 8]
mov ecx, esi
test edx, edx
sete al
push eax
push ebx
call fcn.004b5930
test eax, eax
mov dword [ebp - 0x6c], eax
je 0x4b3c98
lea ecx, [ebp - 0x150]
push ecx
mov ecx, esi
call fcn.004b99b0
test eax, eax
mov dword [ebp - 0x6c], eax
je 0x4b3c98
lea edx, [ebp - 0x150]
mov ecx, esi
push edx
call fcn.004b9c20
test eax, eax
mov dword [ebp - 0x6c], eax
jne 0x4b3cba
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.005b9830
mov ebx, dword [sym.imp.USER32.dll_PostMessageA]
jmp 0x4b3d0c
mov al, byte [ebp - 0x58]
test al, al
je 0x4b3cea
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 0x4b3cf0
mov ebx, dword [sym.imp.USER32.dll_PostMessageA]
mov al, byte [ebp - 0x49]
test al, al
je 0x4b3d0c
mov eax, dword [esi + 0x410]
push 0
push 0x1415
push 0x111
push eax
call ebx
mov al, byte [ebp - 0x113]
test al, al
je 0x4b47c1
mov eax, dword [ebp - 0x6c]
test eax, eax
je 0x4b3dd6
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 0x4b3d51
mov al, byte [ebp - 0x57]
test al, al
je 0x4b3ded
cmp dword [edi + 0x8bc], 3
jne 0x4b3ded
mov eax, dword [edi + 0xcc]
test eax, eax
jne 0x4b3d78
mov al, byte [ebp - 0x11]
test al, al
jne 0x4b3d78
push 0
mov ecx, edi
call fcn.005929d0
mov byte [ebp - 0x112], 4
mov eax, dword [edi + 0x468]
test eax, eax
jne 0x4b3d90
mov ecx, edi
call fcn.005966c0
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.005b9830
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x111]
mov ecx, dword [ebp - 0x54]
push 1
push edx
push eax
call fcn.005bb300
mov ecx, dword [ebp + 8]
mov edx, dword [esi + 0x414]
push ecx
push 0x1426
push 0x111
push edx
jmp 0x4b3deb
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 + 0x8bc]
mov al, byte [ebp - 0x112]
cmp ecx, 3
je 0x4b3e6d
cmp al, 5
je 0x4b3e1d
mov dl, byte [esi + 0x290]
test dl, dl
je 0x4b3e4c
mov edx, dword [ebp - 0x6c]
xor esi, esi
cmp edx, esi
je 0x4b3e4e
jmp 0x4b3e1f
xor esi, esi
mov dl, byte [ebp - 0x49]
test dl, dl
je 0x4b3e4e
mov edx, dword [edi + 0x470]
mov ebx, dword [edi + 0x474]
or edx, ebx
jne 0x4b3e4e
mov edx, dword [edi + 0x478]
mov ebx, dword [edi + 0x47c]
or edx, ebx
jne 0x4b3e4e
cmp ecx, esi
je 0x4b3e6f
jmp 0x4b3e4e
xor esi, esi
cmp al, 5
je 0x4b3e61
cmp dword [edi + 0x468], esi
jne 0x4b3e61
mov ecx, edi
call fcn.005966c0
mov byte [ebp - 0x112], 1
jmp 0x4b4726
xor esi, esi
cmp al, 5
jne 0x4b3f00
cmp dword [edi + 0xcc], esi
jne 0x4b3e8e
mov al, byte [ebp - 0x11]
test al, al
jne 0x4b3e8e
push esi
mov ecx, edi
call fcn.005929d0
mov byte [ebp - 0x112], 4
mov eax, dword [edi + 0x468]
cmp eax, esi
jne 0x4b3ea6
mov ecx, edi
call fcn.005966c0
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.005b9830
mov ecx, dword [ebp - 0x111]
push 1
push ebx
push ecx
mov ecx, esi
call fcn.005bb300
mov eax, dword [ebp - 0x6c]
test eax, eax
je 0x4b4715
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 0x4b4715
cmp al, 4
je 0x4b3f0b
mov byte [ebp - 0x112], 2
mov al, byte [ebp + 0xc]
test al, al
je 0x4b45fc
mov al, byte [ebp - 0x11]
test al, al
jne 0x4b45fc
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 0x4b4072
push 9
push str.text_html
push eax
call fcn.005c9620
add esp, 0xc
test eax, eax
jne 0x4b4072
mov esi, dword [edi + 0x50]
test esi, esi
je 0x4b41ea
mov edx, 0x6a2074
test edx, edx
je 0x4b41ea
test esi, esi
je 0x4b41ea
mov eax, 0x6a9c90
test eax, eax
je 0x4b41ea
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.00402980
push esi
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0xe
call fcn.0040d7a0
mov bl, 0xf
push 0x6a9c90
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], bl
call fcn.0040d7a0
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x10
call fcn.00401070
mov edi, dword [ebp - 0x24]
test edi, edi
jne 0x4b3fcd
lea edi, [ebp - 0x20]
mov esi, dword [ebp - 0x34]
lea ecx, [ebp - 0x48]
call fcn.00402050
push eax
call fcn.005c7292
mov edx, eax
push edi
mov dword [ebp + 0xc], edx
call fcn.005c7292
mov ecx, dword [ebp + 0xc]
add esi, ecx
lea esi, [eax + esi + 3]
lea edi, [esi + esi]
push edi
call fcn.005dfcbc
mov edx, eax
add esp, 0xc
test edx, edx
mov dword [ebp - 0x30], edx
je 0x4b404f
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.00402050
push eax
lea ecx, [ebp - 0x24]
call fcn.00402050
push eax
lea ecx, [ebp - 0x3c]
call fcn.00402050
push eax
mov eax, dword [ebp - 0x30]
push esi
push eax
call fcn.005c7222
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.005c7292
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 0x4b41e2
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x40], esi
mov word [ebp - 0x44], si
mov eax, dword [0x6d0d64]
lea edx, [ebp - 0x48]
push 1
add eax, 0x694
push edx
push eax
mov ecx, edi
mov byte [ebp - 4], 0x11
call fcn.00597c20
mov eax, dword [ebp - 0x48]
cmp eax, esi
jne 0x4b40a2
lea eax, [ebp - 0x44]
push 0x2e
push eax
call fcn.005c71e2
mov edi, eax
xor ebx, ebx
add esp, 8
cmp edi, ebx
je 0x4b41cc
mov ecx, dword [ebp - 0x50]
mov edx, 0x6a2074
test edx, edx
mov esi, dword [ecx + 0x50]
je 0x4b41db
cmp esi, ebx
je 0x4b41db
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.00402980
push esi
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x12
call fcn.0040d7a0
push edi
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 0x13
call fcn.0040d7a0
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x14
call fcn.00401070
mov edi, dword [ebp - 0x24]
cmp edi, ebx
jne 0x4b411b
lea edi, [ebp - 0x20]
mov esi, dword [ebp - 0x34]
lea ecx, [ebp - 0x160]
call fcn.00402050
push eax
call fcn.005c7292
mov edx, eax
push edi
mov dword [ebp + 0xc], edx
call fcn.005c7292
mov ecx, dword [ebp + 0xc]
add esi, ecx
lea esi, [eax + esi + 3]
lea edi, [esi + esi]
push edi
call fcn.005dfcbc
mov edx, eax
add esp, 0xc
cmp edx, ebx
mov dword [ebp - 0x30], edx
je 0x4b41a3
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.00402050
push eax
lea ecx, [ebp - 0x24]
call fcn.00402050
push eax
lea ecx, [ebp - 0x3c]
call fcn.00402050
push eax
mov eax, dword [ebp - 0x30]
push esi
push eax
call fcn.005c7222
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.005c7292
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 0x4b41db
mov edx, dword [ebp - 0x50]
lea ecx, [ebp - 0x30]
mov eax, dword [edx + 0x50]
push eax
call fcn.00402060
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 0x4b41f4
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [edi + 0x50]
push eax
call fcn.005ca2bc
mov eax, dword [ebp - 0x30]
add esp, 8
test eax, eax
jne 0x4b420b
lea eax, [ebp - 0x2c]
push 0x5c
push eax
call fcn.005c71e2
mov esi, eax
add esp, 8
test esi, esi
je 0x4b4485
add esi, 2
cmp word [esi], 0
je 0x4b4485
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 0x4b424e
mov edi, eax
jmp 0x4b4257
mov eax, dword [ebp - 0x18]
lea edi, [eax + 0x420]
mov edx, 0x6a2074
test edx, edx
je 0x4b4376
xor ebx, ebx
cmp edi, ebx
je 0x4b4378
cmp esi, ebx
je 0x4b4378
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.00402980
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.00402060
push esi
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 0x17
call fcn.0040d7a0
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x18
call fcn.00401070
mov esi, dword [ebp - 0x1c]
lea ecx, [ebp - 0x160]
call fcn.00402050
push eax
call fcn.005c7292
add esp, 4
lea ecx, [ebp - 0x3c]
mov edi, eax
call fcn.00402050
push eax
call fcn.005c7292
add esi, edi
lea esi, [eax + esi + 3]
lea edi, [esi + esi]
push edi
call fcn.005dfcbc
mov edx, eax
add esp, 8
cmp edx, ebx
mov dword [ebp - 0x48], edx
je 0x4b434a
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.00402050
push eax
lea ecx, [ebp - 0x3c]
call fcn.00402050
push eax
lea ecx, [ebp - 0x24]
call fcn.00402050
push eax
mov eax, dword [ebp - 0x48]
push esi
push eax
call fcn.005c7222
mov ecx, dword [ebp - 0x48]
push ecx
call fcn.005c7292
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 0x4b4378
xor ebx, ebx
cmp ecx, ebx
jne 0x4b437f
lea ecx, [ebp - 0x44]
mov eax, dword [ebp - 0x30]
cmp eax, ebx
jne 0x4b4389
lea eax, [ebp - 0x2c]
push ecx
push eax
call fcn.005ca2bc
add esp, 8
test eax, eax
jne 0x4b4476
mov eax, dword [ebp - 0x48]
cmp eax, ebx
jne 0x4b43a5
lea eax, [ebp - 0x44]
mov edx, 0x6a1fe8
test edx, edx
je 0x4b4476
cmp eax, ebx
je 0x4b4476
push eax
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x34], ebx
mov word [ebp - 0x38], bx
call fcn.00402060
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x19
call fcn.00401070
push ebx
push 0x6a1fe8
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x20], bx
call fcn.00402980
mov esi, dword [ebp - 0x1c]
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x1a
call fcn.00402050
push eax
call fcn.005c7292
lea esi, [eax + esi + 2]
lea edi, [esi + esi]
push edi
call fcn.005dfcbc
mov edx, eax
add esp, 8
cmp edx, ebx
mov dword [ebp - 0x30], edx
je 0x4b445e
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.00402050
push eax
lea ecx, [ebp - 0x24]
call fcn.00402050
push eax
mov eax, dword [ebp - 0x30]
push esi
push eax
call fcn.005c7222
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.005c7292
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 0x4b448f
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.0041eae0
mov ecx, dword [ebp - 0xac]
cmp dword [ecx - 8], 5
jle 0x4b44e0
mov eax, dword [ebp - 0x30]
test eax, eax
jne 0x4b44ca
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.0041eae0
mov eax, dword [ebp - 0x30]
mov byte [ebp - 0x108], 1
test eax, eax
jne 0x4b44f1
lea eax, [ebp - 0x2c]
mov ecx, 0x6a1fe8
test ecx, ecx
je 0x4b45d8
test eax, eax
je 0x4b45d8
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.00402060
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 0x6a1fe8
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x1c], eax
mov word [ebp - 0x20], ax
call fcn.00402980
mov esi, dword [ebp - 0x1c]
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x1c
call fcn.00402050
push eax
call fcn.005c7292
lea esi, [eax + esi + 2]
lea edi, [esi + esi]
push edi
call fcn.005dfcbc
mov edx, eax
add esp, 8
test edx, edx
mov dword [ebp - 0xb8], edx
je 0x4b45be
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.00402050
push eax
lea ecx, [ebp - 0x24]
call fcn.00402050
push eax
mov eax, dword [ebp - 0xb8]
push esi
push eax
call fcn.005c7222
mov ecx, dword [ebp - 0xb8]
push ecx
call fcn.005c7292
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.005b9830
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0xc
call fcn.00401070
jmp 0x4b4715
mov esi, dword [ebp + 0x10]
test esi, esi
je 0x4b4715
mov al, byte [ebp - 0x11]
test al, al
jne 0x4b4715
mov ecx, dword [edi + 0x50]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov edx, 0x6a1fe8
mov byte [ebp - 0x108], 1
test edx, edx
je 0x4b4702
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.00402060
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 0x6a1fe8
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x1c], eax
mov word [ebp - 0x20], ax
call fcn.00402980
mov esi, dword [ebp - 0x1c]
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x1e
call fcn.00402050
push eax
call fcn.005c7292
lea esi, [eax + esi + 2]
lea edi, [esi + esi]
push edi
call fcn.005dfcbc
mov edx, eax
add esp, 8
test edx, edx
mov dword [ebp - 0xb8], edx
je 0x4b46e8
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.00402050
push eax
lea ecx, [ebp - 0x24]
call fcn.00402050
push eax
mov eax, dword [ebp - 0xb8]
push esi
push eax
call fcn.005c7222
mov ecx, dword [ebp - 0xb8]
push ecx
call fcn.005c7292
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.005b9830
mov eax, dword [edi + 0x468]
test eax, eax
jne 0x4b4726
mov ecx, edi
call fcn.005966c0
mov esi, dword [ebp - 0x18]
mov eax, dword [esi + 0x4f8]
test eax, eax
je 0x4b4748
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 0x4b4767
mov edx, dword [esi + 0x54c]
push esi
push 0
push 0x13fc
push edx
call dword [sym.imp.USER32.dll_PostMessageA]
mov eax, dword [edi + 0x468]
test eax, eax
jne 0x4b47b1
mov ecx, edi
call fcn.005966c0
mov eax, dword [edi + 0x8c0]
test eax, eax
je 0x4b479d
push edi
mov ecx, 0x6d1198
call fcn.004335a0
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x150]
push eax
push ecx
jmp 0x4b50a3
test edi, edi
je 0x4b47b1
mov ecx, edi
call fcn.0058cb20
push edi
call fcn.005dfce5
add esp, 4
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x150]
push eax
push ecx
jmp 0x4b50a3
mov eax, dword [ebp - 0x6c]
mov byte [ebp - 0x112], 2
test eax, eax
jne 0x4b47e6
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, 0x6a2074
test ecx, ecx
je 0x4b490f
test esi, esi
je 0x4b490f
mov edx, 0x6a9c90
test edx, edx
je 0x4b490f
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.00402980
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.00402060
mov bl, 0x20
push 0x6a9c90
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], bl
call fcn.0040d7a0
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x21
call fcn.00401070
mov esi, dword [ebp - 0x34]
lea ecx, [ebp - 0x160]
call fcn.00402050
push eax
call fcn.005c7292
add esp, 4
lea ecx, [ebp - 0x24]
mov edi, eax
call fcn.00402050
push eax
call fcn.005c7292
add esi, edi
lea esi, [eax + esi + 3]
lea edi, [esi + esi]
push edi
call fcn.005dfcbc
mov edx, eax
add esp, 8
test edx, edx
mov dword [ebp - 0x64], edx
je 0x4b48e6
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.00402050
push eax
lea ecx, [ebp - 0x24]
call fcn.00402050
push eax
lea ecx, [ebp - 0x3c]
call fcn.00402050
push eax
mov eax, dword [ebp - 0x64]
push esi
push eax
call fcn.005c7222
mov ecx, dword [ebp - 0x64]
push ecx
call fcn.005c7292
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 0x4b49ab
mov eax, dword [0x6a5fe8]
test eax, eax
je 0x4b4943
mov ecx, dword [ebp - 0x64]
test ecx, ecx
jne 0x4b492d
lea ecx, [ebp - 0x60]
mov eax, dword [ebp - 0xf4]
test eax, eax
jne 0x4b493d
lea eax, [ebp - 0xf0]
push 0
push ecx
push eax
jmp 0x4b49bc
mov eax, dword [ebp - 0xf4]
test eax, eax
jne 0x4b4953
lea eax, [ebp - 0xf0]
push eax
lea ecx, [ebp - 0x88]
call fcn.005e3979
mov eax, dword [ebp - 0x64]
mov byte [ebp - 4], 0x22
test eax, eax
jne 0x4b496d
lea eax, [ebp - 0x60]
push eax
lea ecx, [ebp - 0x154]
call fcn.005e3979
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.005e38b9
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0xc
call fcn.005e38b9
jmp 0x4b49c2
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x4b49b5
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 0x4b49d6
mov al, byte [ebp - 0x57]
test al, al
je 0x4b49e1
mov eax, dword [ebp - 0x6c]
test eax, eax
jne 0x4b4b09
mov al, byte [ebp - 0x56]
test al, al
jne 0x4b4b09
test bl, bl
je 0x4b4a0d
mov eax, dword [ebp - 0xf4]
test eax, eax
jne 0x4b4a00
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, 0x6a1fe8
test ecx, ecx
je 0x4b4af4
test eax, eax
je 0x4b4af4
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.00402060
mov bl, 0x23
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], bl
call fcn.00401070
push esi
push 0x6a1fe8
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x1c], esi
mov word [ebp - 0x20], si
call fcn.00402980
mov eax, dword [ebp - 0x48]
mov byte [ebp - 4], 0x24
cmp eax, esi
jne 0x4b4a70
lea eax, [ebp - 0x44]
mov esi, dword [ebp - 0x1c]
push eax
call fcn.005c7292
lea esi, [eax + esi + 2]
lea edi, [esi + esi]
push edi
call fcn.005dfcbc
mov edx, eax
add esp, 8
test edx, edx
mov dword [ebp - 0xdc], edx
je 0x4b4add
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.00402050
push eax
lea ecx, [ebp - 0x24]
call fcn.00402050
push eax
mov eax, dword [ebp - 0xdc]
push esi
push eax
call fcn.005c7222
mov ecx, dword [ebp - 0xdc]
push ecx
call fcn.005c7292
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.005b9830
jmp 0x4b4b62
test bl, bl
jne 0x4b4b16
push 0
mov ecx, edi
call fcn.005929d0
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.005b9830
mov edx, dword [ebp - 0x111]
push 1
push edi
push edx
mov ecx, ebx
call fcn.005bb300
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 0x4b4f50
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x4b4b77
lea eax, [ebp - 0x60]
push 0x5c
push eax
call fcn.005c71e2
mov esi, eax
add esp, 8
test esi, esi
je 0x4b4dfb
add esi, 2
cmp word [esi], 0
je 0x4b4dfb
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 0x4b4bbc
mov edi, eax
jmp 0x4b4bc2
add edi, 0x420
mov edx, 0x6a2074
test edx, edx
je 0x4b4cdb
cmp edi, ebx
je 0x4b4cdb
cmp esi, ebx
je 0x4b4cdb
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.00402980
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.00402060
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.00402060
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x28
call fcn.00401070
mov esi, dword [ebp - 0x28]
lea ecx, [ebp - 0x24]
call fcn.00402050
push eax
call fcn.005c7292
add esp, 4
lea ecx, [ebp - 0x3c]
mov edi, eax
call fcn.00402050
push eax
call fcn.005c7292
add esi, edi
lea esi, [eax + esi + 3]
lea edi, [esi + esi]
push edi
call fcn.005dfcbc
mov edx, eax
add esp, 8
cmp edx, ebx
mov dword [ebp - 0x48], edx
je 0x4b4cb4
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.00402050
push eax
lea ecx, [ebp - 0x3c]
call fcn.00402050
push eax
lea ecx, [ebp - 0x30]
call fcn.00402050
push eax
mov eax, dword [ebp - 0x48]
push esi
push eax
call fcn.005c7222
mov ecx, dword [ebp - 0x48]
push ecx
call fcn.005c7292
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 0x4b4ce2
lea ecx, [ebp - 0x44]
mov eax, dword [ebp - 0x64]
cmp eax, ebx
jne 0x4b4cec
lea eax, [ebp - 0x60]
push ecx
push eax
call fcn.005ca2bc
add esp, 8
test eax, eax
jne 0x4b4def
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x4b4d08
lea eax, [ebp - 0x44]
mov edx, 0x6a1fe8
test edx, edx
je 0x4b4ddd
test eax, eax
je 0x4b4ddd
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.00402060
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x29
call fcn.00401070
push esi
push 0x6a1fe8
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x1c], esi
mov word [ebp - 0x20], si
call fcn.00402980
mov eax, dword [ebp - 0x30]
mov byte [ebp - 4], 0x2a
cmp eax, esi
jne 0x4b4d64
lea eax, [ebp - 0x2c]
mov esi, dword [ebp - 0x1c]
push eax
call fcn.005c7292
lea ebx, [eax + esi + 2]
lea esi, [ebx + ebx]
push esi
call fcn.005dfcbc
mov edi, eax
add esp, 8
test edi, edi
mov dword [ebp - 0x64], edi
je 0x4b4dc5
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 0x4b4da2
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x24]
call fcn.00402050
push eax
mov eax, dword [ebp - 0x64]
push ebx
push eax
call fcn.005c7222
mov ecx, dword [ebp - 0x64]
push ecx
call fcn.005c7292
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 + 0x468]
test eax, eax
jne 0x4b4def
call fcn.005966c0
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0xc
call fcn.00401070
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x4b4e05
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.0041eae0
mov ecx, dword [ebp - 0xac]
cmp dword [ecx - 8], 5
jle 0x4b4e59
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x4b4e43
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.0041eae0
mov eax, dword [ebp - 0x64]
mov byte [ebp - 0x108], 1
test eax, eax
jne 0x4b4e6a
lea eax, [ebp - 0x60]
mov ecx, 0x6a1fe8
test ecx, ecx
je 0x4b5052
test eax, eax
je 0x4b5052
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.00402060
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0x2b
call fcn.00401070
push esi
push 0x6a1fe8
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x28], esi
mov word [ebp - 0x2c], si
call fcn.00402980
mov eax, dword [ebp - 0x48]
mov byte [ebp - 4], 0x2c
cmp eax, esi
jne 0x4b4ec9
lea eax, [ebp - 0x44]
mov esi, dword [ebp - 0x28]
push eax
call fcn.005c7292
lea ebx, [eax + esi + 2]
lea esi, [ebx + ebx]
push esi
call fcn.005dfcbc
mov edi, eax
add esp, 8
test edi, edi
mov dword [ebp - 0xb8], edi
je 0x4b4f38
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 0x4b4f0a
lea eax, [ebp - 0x44]
mov ecx, dword [ebp - 0x30]
test ecx, ecx
jne 0x4b4f14
lea ecx, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0xb8]
push ecx
push ebx
push eax
call fcn.005c7222
mov ecx, dword [ebp - 0xb8]
push ecx
call fcn.005c7292
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 0x4b504d
mov edi, dword [ebp + 0x10]
test edi, edi
je 0x4b5052
mov ecx, dword [ebp - 0x50]
mov eax, dword [ecx + 0x468]
test eax, eax
jne 0x4b4f6d
call fcn.005966c0
mov edx, 0x6a1fe8
mov byte [ebp - 0x108], 1
test edx, edx
je 0x4b5052
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.00402060
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0x2d
call fcn.00401070
push esi
push 0x6a1fe8
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x34], esi
mov word [ebp - 0x38], si
call fcn.00402980
mov eax, dword [ebp - 0x30]
mov byte [ebp - 4], 0x2e
cmp eax, esi
jne 0x4b4fcb
lea eax, [ebp - 0x2c]
mov esi, dword [ebp - 0x34]
push eax
call fcn.005c7292
lea ebx, [eax + esi + 2]
lea esi, [ebx + ebx]
push esi
call fcn.005dfcbc
mov edi, eax
add esp, 8
test edi, edi
mov dword [ebp - 0xb8], edi
je 0x4b503a
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 0x4b500c
lea eax, [ebp - 0x2c]
mov ecx, dword [ebp - 0x3c]
test ecx, ecx
jne 0x4b5016
lea ecx, [ebp - 0x38]
push eax
mov eax, dword [ebp - 0xb8]
push ecx
push ebx
push eax
call fcn.005c7222
mov ecx, dword [ebp - 0xb8]
push ecx
call fcn.005c7292
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 + 0x468]
test eax, eax
jne 0x4b5091
mov ecx, esi
call fcn.005966c0
mov eax, dword [esi + 0x8c0]
test eax, eax
je 0x4b507d
push esi
mov ecx, 0x6d1198
call fcn.004335a0
jmp 0x4b5091
test esi, esi
je 0x4b5091
mov ecx, esi
call fcn.0058cb20
push esi
call fcn.005dfce5
add esp, 4
mov al, byte [ebp - 0x56]
test al, al
je 0x4b50d2
mov eax, dword [ebp + 8]
lea edx, [ebp - 0x150]
push edx
push eax
mov ecx, dword [ebp - 0x54]
call fcn.005b9830
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0xb
call fcn.005e38b9
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 9
call fcn.005e38b9
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x80]
jmp 0x4b36de
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.005b9830
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.005e38b9
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 9
call fcn.005e38b9
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x80]
jmp 0x4b36de