Function at 0x4b16b0
Capabilities:
Copy file
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5feec8
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 0x4b1e96
xor ebx, ebx
xor edx, edx
mov dword [ebp - 0x50], ebx
cmp edx, dword [ecx + 0x51c]
jge 0x4b176f
mov eax, dword [ecx + 0x518]
mov ecx, dword [ebp + 8]
lea esi, [edx*8]
add eax, esi
cmp dword [eax], ecx
jne 0x4b1869
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 0x4b173e
add ecx, 8
jmp 0x4b1732
mov esi, dword [ebp - 0x18]
test eax, eax
je 0x4b1760
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.005c5be0
add esp, 0xc
mov eax, dword [esi + 0x51c]
dec eax
xor edi, edi
mov dword [esi + 0x51c], eax
cmp ebx, edi
jne 0x4b1881
mov eax, dword [0x6ca27c]
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.0041a850
mov eax, dword [0x6ca27c]
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.0041a850
mov eax, dword [0x6ca27c]
mov dword [ebp - 0x2fc], 0x61b6e4
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.005b5970
test al, al
je 0x4b185a
mov eax, dword [ebp - 0x2e4]
cmp eax, edi
je 0x4b185a
push eax
mov ecx, esi
call fcn.004bf850
mov ebx, eax
cmp ebx, edi
mov dword [ebp - 0x50], ebx
jne 0x4b1872
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x2fc]
jmp 0x4b1e91
mov ecx, dword [ebp - 0x18]
inc edx
jmp 0x4b16f1
lea ecx, [ebp - 0x2fc]
mov byte [ebp - 4], 0
call fcn.0046c810
mov dword [ebx + 8], edi
mov eax, dword [0x6ca27c]
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.0041a850
lea ecx, [ebp - 0xdc]
call fcn.0041a850
mov eax, dword [0x6ca27c]
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.0041a850
mov eax, dword [0x6ca27c]
mov dword [ebp - 0x150], 0x61b6e4
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.005b5970
test al, al
je 0x4b1e87
mov al, byte [esi + 0x4ac]
mov byte [ebp - 0x57], 0
test al, al
mov byte [ebp - 0x11], 0
jne 0x4b1976
mov cl, byte [esi + 0x4ad]
test cl, cl
je 0x4b1a65
mov cl, byte [esi + 0x4af]
test cl, cl
je 0x4b1a65
mov ecx, dword [ebx + 0xa24]
cmp ecx, 0x7573
je 0x4b1988
cmp ecx, edi
jne 0x4b19ae
test al, al
je 0x4b19ae
mov al, byte [ebp - 0x10e]
test al, al
je 0x4b19ae
mov al, byte [ebx + 0x32a]
test al, al
je 0x4b19ae
mov al, byte [ebp - 0x106]
test al, al
je 0x4b19ae
mov byte [ebp - 0x57], 1
cmp ecx, 0x7573
jne 0x4b1a65
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 0x4b1a21
push eax
mov byte [ebp - 4], 3
call fcn.005dd5b6
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.005dd58d
mov edx, eax
add esp, 4
cmp edx, edi
mov dword [ebx + 0xdc], edx
je 0x4b1a65
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 0x4b1ab4
cmp dword [ebx + 0x8bc], 3
jne 0x4b1ab4
mov eax, dword [ebx + 0x478]
mov ecx, dword [ebx + 0x47c]
mov edx, eax
or edx, ecx
je 0x4b1ab4
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x144], ecx
mov edx, dword [ebx + 0x40]
cmp edx, edi
je 0x4b1ade
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x4b1ade
push edx
lea eax, [ebp - 0xa8]
push 0x69ffbc
push eax
call fcn.005d9fbb
add esp, 0xc
mov ecx, dword [0x6ca27c]
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.00564270
mov eax, dword [ebp - 0x100]
mov ecx, dword [ebp - 0x68]
push eax
push ecx
call fcn.005c62fc
add esp, 8
test eax, eax
je 0x4b1b2f
mov edx, dword [ebp - 0x68]
lea eax, [ebp - 0xac]
push edx
push 0x69ffbc
push eax
call fcn.005d9fbb
add esp, 0xc
mov esi, dword [ebp - 0x18]
mov al, byte [esi + 0x504]
test al, al
jne 0x4b1b86
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 [0x6ca27c]
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 0x4b1bef
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 0x4b1bf5
cmp al, dl
je 0x4b1bf5
mov byte [ebp - 0x58], 0
jmp 0x4b1bfd
mov al, byte [ebp - 0x113]
cmp al, 2
je 0x4b1c05
cmp al, 1
je 0x4b1c05
mov esi, dword [ebp - 0x18]
xor dl, dl
mov byte [ebp - 0x55], dl
test edi, edi
je 0x4b1f1b
cmp edi, 0x7563
je 0x4b1f1b
cmp edi, 0x7540
jne 0x4b1c5b
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 0x4b1c4f
mov byte [ebp - 0x112], 3
jmp 0x4b1cfb
mov byte [ebp - 0x113], 1
jmp 0x4b1cfb
cmp al, 2
setne al
dec eax
and al, 0xfd
add eax, 6
cmp ecx, 0x7565
mov byte [ebp - 0x113], al
jne 0x4b1c7d
mov byte [ebp - 0x111], 2
jmp 0x4b1c8f
cmp ecx, 0x7566
setne cl
add ecx, 3
mov byte [ebp - 0x111], cl
test dl, dl
je 0x4b1cbf
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 0x4b1ccf
mov byte [ebp - 0x112], 6
mov ecx, dword [ebp + 8]
test ecx, ecx
jne 0x4b1cfb
cmp al, 6
jne 0x4b1cfb
mov eax, dword [ebx + 0xa34]
test eax, eax
jne 0x4b1cfb
mov eax, dword [0x6cf96c]
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 0x4b1d4e
cmp byte [ebp - 0x112], 3
je 0x4b1d23
mov ecx, ebx
call fcn.00593fa0
mov eax, dword [ebx + 0x8c0]
test eax, eax
je 0x4b1d3a
push ebx
mov ecx, 0x6ceea8
call fcn.00432260
jmp 0x4b1d4e
test ebx, ebx
je 0x4b1d4e
mov ecx, ebx
call fcn.0058a770
push ebx
call fcn.005dd5b6
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.005954f0
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x4b1d76
lea eax, [ebp - 0x44]
push 0x5c
push eax
call fcn.005c4a9a
add esp, 8
test eax, eax
je 0x4b1d8a
add eax, 2
jmp 0x4b1d94
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x4b1d94
lea eax, [ebp - 0x44]
mov ebx, dword [ebp + 8]
test ebx, ebx
sete cl
push ecx
push eax
mov ecx, esi
call fcn.004b40b0
cmp edi, 0x7540
je 0x4b1ea9
test eax, eax
je 0x4b1ddd
lea edx, [ebp - 0x150]
mov ecx, esi
push edx
call fcn.004b8120
test eax, eax
je 0x4b1ddd
lea eax, [ebp - 0x150]
mov ecx, esi
push eax
call fcn.004b8390
test eax, eax
jne 0x4b1ea9
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.005b7100
mov eax, dword [ebp - 0x144]
test eax, eax
jl 0x4b1e24
jg 0x4b1e12
mov ecx, dword [ebp - 0x148]
test ecx, ecx
jbe 0x4b1e24
mov edx, dword [ebp - 0x148]
push 1
push edi
push eax
push edx
mov ecx, esi
call fcn.005b8a80
mov al, byte [ebp - 0x111]
test al, al
je 0x4b1e3f
mov eax, dword [ebp - 0x111]
push 1
push edi
push eax
mov ecx, esi
call fcn.005b8bd0
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.005e118c
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 5
call fcn.00401070
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 2
call fcn.005e118c
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x150]
call fcn.0046c810
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.005b7100
mov eax, dword [ebp - 0x144]
test eax, eax
jl 0x4b1ee9
jg 0x4b1ed7
mov ecx, dword [ebp - 0x148]
test ecx, ecx
jbe 0x4b1ee9
push 1
push edi
push eax
mov eax, dword [ebp - 0x148]
push eax
mov ecx, esi
call fcn.005b8a80
mov al, byte [ebp - 0x111]
test al, al
je 0x4b1f04
mov ecx, dword [ebp - 0x111]
push 1
push edi
push ecx
mov ecx, esi
call fcn.005b8bd0
mov edx, dword [ebx + 0x414]
push edi
push 0x1426
push 0x111
push edx
jmp 0x4b1e51
mov eax, dword [ebp + 8]
test eax, eax
jne 0x4b1f29
mov byte [esi + 0x479], 1
mov al, byte [ebp - 0x106]
mov byte [ebp - 0x113], 4
test al, al
je 0x4b1f3e
mov byte [ebp - 0x49], 1
test dl, dl
je 0x4b1f68
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 0x4b1f80
mov al, byte [ebp - 0x107]
mov byte [ebp - 0x56], 1
test al, al
je 0x4b1f84
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 0x4b1fa6
cmp al, 3
je 0x4b1fa6
cmp al, 4
jne 0x4b1faf
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.005b7100
mov eax, dword [ebp - 0x144]
test eax, eax
jl 0x4b1ff2
jg 0x4b1fe0
mov ecx, dword [ebp - 0x148]
test ecx, ecx
jbe 0x4b1ff2
push 1
push esi
push eax
mov eax, dword [ebp - 0x148]
push eax
mov ecx, edi
call fcn.005b8a80
test bl, bl
je 0x4b2007
mov ecx, dword [ebp - 0x111]
push 1
push esi
push ecx
mov ecx, edi
call fcn.005b8bd0
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 0x4b203e
mov edx, dword [ebp - 0xf4]
lea ecx, [ebp - 0x80]
push edx
call fcn.00401f60
mov edi, dword [ebp - 0x50]
xor ebx, ebx
jmp 0x4b220c
mov edi, dword [ebp - 0x50]
cmp dword [edi + 0xcc], ecx
je 0x4b2068
cmp dword [edi + 0x5c], ecx
je 0x4b2068
mov eax, dword [edi + 0x54]
cmp eax, ecx
jne 0x4b2058
lea eax, [edi + 0x58]
push eax
lea ecx, [ebp - 0x80]
call fcn.00401f60
xor ebx, ebx
jmp 0x4b220c
mov al, byte [ebp - 0x102]
test al, al
mov eax, dword [ebp - 0xf4]
je 0x4b209e
push eax
lea ecx, [ebp - 0x80]
call fcn.00401f60
mov eax, dword [ebp - 0x80]
test eax, eax
jne 0x4b208b
lea eax, [ebp - 0x7c]
mov ecx, dword [ebp - 0x88]
push eax
call fcn.005a2080
xor ebx, ebx
jmp 0x4b220c
cmp eax, ecx
jne 0x4b20a8
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.004b0340
mov esi, eax
cmp esi, ebx
jle 0x4b220c
mov eax, dword [0x6ca27c]
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.0041a850
mov eax, dword [0x6ca27c]
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.0041a850
mov eax, dword [0x6ca27c]
mov dword [ebp - 0x234], 0x61b6e4
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.005b5970
test al, al
je 0x4b21fd
mov edx, dword [ebp - 0x22c]
mov eax, dword [ebp - 0x148]
cmp edx, eax
jne 0x4b21fd
mov eax, dword [ebp - 0x228]
mov ecx, dword [ebp - 0x144]
cmp eax, ecx
jne 0x4b21fd
mov eax, dword [ebp - 0xe8]
cmp eax, ebx
mov ecx, eax
jne 0x4b21c2
lea ecx, [ebp - 0xe4]
mov eax, dword [ebp - 0x1cc]
cmp eax, ebx
jne 0x4b21d2
lea eax, [ebp - 0x1c8]
push ecx
push eax
call fcn.005c722c
add esp, 8
test eax, eax
jne 0x4b21fd
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x130], esi
mov al, byte [ecx + 0x28f]
test al, al
je 0x4b21fd
mov dword [ebp - 0x6c], ebx
mov byte [ebp - 0x110], 0
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], 9
call fcn.0046c810
mov eax, dword [ebp - 0x80]
cmp eax, ebx
jne 0x4b2216
lea eax, [ebp - 0x7c]
push 0x5c
push eax
call fcn.005c4a9a
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4b222c
add ebx, 2
jmp 0x4b2238
mov eax, dword [ebp - 0x80]
test eax, eax
mov ebx, eax
jne 0x4b2238
lea ebx, [ebp - 0x7c]
push 0x2e
push ebx
call fcn.005c4a9a
mov esi, eax
add esp, 8
test esi, esi
je 0x4b22b6
push 0x6a6314
push esi
call fcn.005c722c
add esp, 8
test eax, eax
je 0x4b226d
push 0x6a7c00
push esi
call fcn.005c722c
add esp, 8
test eax, eax
jne 0x4b22b6
mov al, byte [ebp - 0x55]
mov byte [ebp - 0x105], 1
test al, al
jne 0x4b2282
mov al, byte [ebp - 0x49]
test al, al
jne 0x4b22a3
mov eax, dword [ebp + 8]
test eax, eax
je 0x4b229c
mov ecx, dword [ebp - 0x18]
lea edx, [ebp - 0x150]
push edx
call fcn.004b7e40
test eax, eax
je 0x4b22a3
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.005b7100
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
test eax, eax
jge 0x4b231c
mov eax, dword [edi + 0x468]
test eax, eax
jne 0x4b3846
mov ecx, edi
call fcn.00593fa0
mov eax, dword [edi + 0x8c0]
test eax, eax
je 0x4b22f8
push edi
mov ecx, 0x6ceea8
call fcn.00432260
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x80]
jmp 0x4b1e5e
test edi, edi
je 0x4b3846
mov ecx, edi
call fcn.0058a770
push edi
call fcn.005dd5b6
add esp, 4
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x80]
jmp 0x4b1e5e
mov edx, dword [0x6ca27c]
mov dword [ebp - 0x74], edx
test esi, esi
mov byte [ebp - 4], 0xb
jne 0x4b232f
mov esi, ebx
push esi
lea ecx, [ebp - 0x84]
call fcn.005e124c
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.004d6b60
mov dword [ebp - 0x11c], eax
mov al, byte [esi + 0x47a]
test al, al
jne 0x4b382b
mov edx, dword [ebp - 0x74]
lea eax, [ebp - 0xbc]
push edx
push 0x69ffbc
push eax
call fcn.005d9fbb
mov eax, dword [edi + 0xdc]
add esp, 0xc
test eax, eax
je 0x4b23a7
mov cl, byte [ebp - 0x11]
test cl, cl
jne 0x4b23a7
push eax
lea ecx, [ebp - 0xf8]
push 0x69ffbc
push ecx
call fcn.005d9fbb
add esp, 0xc
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x54]
lea edx, [ebp - 0x150]
push edx
push eax
call fcn.005b7100
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 0x11c]
push 1
push ecx
mov ecx, dword [ebp - 0x54]
push edx
call fcn.005b8690
mov eax, dword [ebp - 0x6c]
test eax, eax
je 0x4b2418
mov edx, dword [ebp + 8]
mov ecx, esi
test edx, edx
sete al
push eax
push ebx
call fcn.004b40b0
test eax, eax
mov dword [ebp - 0x6c], eax
je 0x4b2418
lea ecx, [ebp - 0x150]
push ecx
mov ecx, esi
call fcn.004b8120
test eax, eax
mov dword [ebp - 0x6c], eax
je 0x4b2418
lea edx, [ebp - 0x150]
mov ecx, esi
push edx
call fcn.004b8390
test eax, eax
mov dword [ebp - 0x6c], eax
jne 0x4b243a
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.005b7100
mov ebx, dword [sym.imp.USER32.dll_PostMessageA]
jmp 0x4b248c
mov al, byte [ebp - 0x58]
test al, al
je 0x4b246a
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 0x4b2470
mov ebx, dword [sym.imp.USER32.dll_PostMessageA]
mov al, byte [ebp - 0x49]
test al, al
je 0x4b248c
mov eax, dword [esi + 0x410]
push 0
push 0x1415
push 0x111
push eax
call ebx
mov al, byte [ebp - 0x113]
test al, al
je 0x4b2f41
mov eax, dword [ebp - 0x6c]
test eax, eax
je 0x4b2556
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 0x4b24d1
mov al, byte [ebp - 0x57]
test al, al
je 0x4b256d
cmp dword [edi + 0x8bc], 3
jne 0x4b256d
mov eax, dword [edi + 0xcc]
test eax, eax
jne 0x4b24f8
mov al, byte [ebp - 0x11]
test al, al
jne 0x4b24f8
push 0
mov ecx, edi
call fcn.00590620
mov byte [ebp - 0x112], 4
mov eax, dword [edi + 0x468]
test eax, eax
jne 0x4b2510
mov ecx, edi
call fcn.00593fa0
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.005b7100
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x111]
mov ecx, dword [ebp - 0x54]
push 1
push edx
push eax
call fcn.005b8bd0
mov ecx, dword [ebp + 8]
mov edx, dword [esi + 0x414]
push ecx
push 0x1426
push 0x111
push edx
jmp 0x4b256b
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 0x4b25ed
cmp al, 5
je 0x4b259d
mov dl, byte [esi + 0x290]
test dl, dl
je 0x4b25cc
mov edx, dword [ebp - 0x6c]
xor esi, esi
cmp edx, esi
je 0x4b25ce
jmp 0x4b259f
xor esi, esi
mov dl, byte [ebp - 0x49]
test dl, dl
je 0x4b25ce
mov edx, dword [edi + 0x470]
mov ebx, dword [edi + 0x474]
or edx, ebx
jne 0x4b25ce
mov edx, dword [edi + 0x478]
mov ebx, dword [edi + 0x47c]
or edx, ebx
jne 0x4b25ce
cmp ecx, esi
je 0x4b25ef
jmp 0x4b25ce
xor esi, esi
cmp al, 5
je 0x4b25e1
cmp dword [edi + 0x468], esi
jne 0x4b25e1
mov ecx, edi
call fcn.00593fa0
mov byte [ebp - 0x112], 1
jmp 0x4b2ea6
xor esi, esi
cmp al, 5
jne 0x4b2680
cmp dword [edi + 0xcc], esi
jne 0x4b260e
mov al, byte [ebp - 0x11]
test al, al
jne 0x4b260e
push esi
mov ecx, edi
call fcn.00590620
mov byte [ebp - 0x112], 4
mov eax, dword [edi + 0x468]
cmp eax, esi
jne 0x4b2626
mov ecx, edi
call fcn.00593fa0
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.005b7100
mov ecx, dword [ebp - 0x111]
push 1
push ebx
push ecx
mov ecx, esi
call fcn.005b8bd0
mov eax, dword [ebp - 0x6c]
test eax, eax
je 0x4b2e95
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 0x4b2e95
cmp al, 4
je 0x4b268b
mov byte [ebp - 0x112], 2
mov al, byte [ebp + 0xc]
test al, al
je 0x4b2d7c
mov al, byte [ebp - 0x11]
test al, al
jne 0x4b2d7c
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 0x4b27f2
push 9
push str.text_html
push eax
call fcn.005c6ee0
add esp, 0xc
test eax, eax
jne 0x4b27f2
mov esi, dword [edi + 0x50]
test esi, esi
je 0x4b296a
mov edx, 0x6a0048
test edx, edx
je 0x4b296a
test esi, esi
je 0x4b296a
mov eax, 0x6a7c00
test eax, eax
je 0x4b296a
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.00402890
push esi
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0xe
call fcn.0040d680
mov bl, 0xf
push 0x6a7c00
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], bl
call fcn.0040d680
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x10
call fcn.00401070
mov edi, dword [ebp - 0x24]
test edi, edi
jne 0x4b274d
lea edi, [ebp - 0x20]
mov esi, dword [ebp - 0x34]
lea ecx, [ebp - 0x48]
call fcn.00401f50
push eax
call fcn.005c4b4a
mov edx, eax
push edi
mov dword [ebp + 0xc], edx
call fcn.005c4b4a
mov ecx, dword [ebp + 0xc]
add esi, ecx
lea esi, [eax + esi + 3]
lea edi, [esi + esi]
push edi
call fcn.005dd58d
mov edx, eax
add esp, 0xc
test edx, edx
mov dword [ebp - 0x30], edx
je 0x4b27cf
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.00401f50
push eax
lea ecx, [ebp - 0x24]
call fcn.00401f50
push eax
lea ecx, [ebp - 0x3c]
call fcn.00401f50
push eax
mov eax, dword [ebp - 0x30]
push esi
push eax
call fcn.005c4ada
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.005c4b4a
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 0x4b2962
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x40], esi
mov word [ebp - 0x44], si
mov eax, dword [0x6cea74]
lea edx, [ebp - 0x48]
push 1
add eax, 0x694
push edx
push eax
mov ecx, edi
mov byte [ebp - 4], 0x11
call fcn.005954f0
mov eax, dword [ebp - 0x48]
cmp eax, esi
jne 0x4b2822
lea eax, [ebp - 0x44]
push 0x2e
push eax
call fcn.005c4a9a
mov edi, eax
xor ebx, ebx
add esp, 8
cmp edi, ebx
je 0x4b294c
mov ecx, dword [ebp - 0x50]
mov edx, 0x6a0048
test edx, edx
mov esi, dword [ecx + 0x50]
je 0x4b295b
cmp esi, ebx
je 0x4b295b
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.00402890
push esi
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x12
call fcn.0040d680
push edi
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 0x13
call fcn.0040d680
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x14
call fcn.00401070
mov edi, dword [ebp - 0x24]
cmp edi, ebx
jne 0x4b289b
lea edi, [ebp - 0x20]
mov esi, dword [ebp - 0x34]
lea ecx, [ebp - 0x160]
call fcn.00401f50
push eax
call fcn.005c4b4a
mov edx, eax
push edi
mov dword [ebp + 0xc], edx
call fcn.005c4b4a
mov ecx, dword [ebp + 0xc]
add esi, ecx
lea esi, [eax + esi + 3]
lea edi, [esi + esi]
push edi
call fcn.005dd58d
mov edx, eax
add esp, 0xc
cmp edx, ebx
mov dword [ebp - 0x30], edx
je 0x4b2923
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.00401f50
push eax
lea ecx, [ebp - 0x24]
call fcn.00401f50
push eax
lea ecx, [ebp - 0x3c]
call fcn.00401f50
push eax
mov eax, dword [ebp - 0x30]
push esi
push eax
call fcn.005c4ada
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.005c4b4a
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 0x4b295b
mov edx, dword [ebp - 0x50]
lea ecx, [ebp - 0x30]
mov eax, dword [edx + 0x50]
push eax
call fcn.00401f60
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 0x4b2974
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [edi + 0x50]
push eax
call fcn.005c7b7c
mov eax, dword [ebp - 0x30]
add esp, 8
test eax, eax
jne 0x4b298b
lea eax, [ebp - 0x2c]
push 0x5c
push eax
call fcn.005c4a9a
mov esi, eax
add esp, 8
test esi, esi
je 0x4b2c05
add esi, 2
cmp word [esi], 0
je 0x4b2c05
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 0x4b29ce
mov edi, eax
jmp 0x4b29d7
mov eax, dword [ebp - 0x18]
lea edi, [eax + 0x420]
mov edx, 0x6a0048
test edx, edx
je 0x4b2af6
xor ebx, ebx
cmp edi, ebx
je 0x4b2af8
cmp esi, ebx
je 0x4b2af8
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.00402890
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.00401f60
push esi
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 0x17
call fcn.0040d680
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x18
call fcn.00401070
mov esi, dword [ebp - 0x1c]
lea ecx, [ebp - 0x160]
call fcn.00401f50
push eax
call fcn.005c4b4a
add esp, 4
lea ecx, [ebp - 0x3c]
mov edi, eax
call fcn.00401f50
push eax
call fcn.005c4b4a
add esi, edi
lea esi, [eax + esi + 3]
lea edi, [esi + esi]
push edi
call fcn.005dd58d
mov edx, eax
add esp, 8
cmp edx, ebx
mov dword [ebp - 0x48], edx
je 0x4b2aca
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.00401f50
push eax
lea ecx, [ebp - 0x3c]
call fcn.00401f50
push eax
lea ecx, [ebp - 0x24]
call fcn.00401f50
push eax
mov eax, dword [ebp - 0x48]
push esi
push eax
call fcn.005c4ada
mov ecx, dword [ebp - 0x48]
push ecx
call fcn.005c4b4a
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 0x4b2af8
xor ebx, ebx
cmp ecx, ebx
jne 0x4b2aff
lea ecx, [ebp - 0x44]
mov eax, dword [ebp - 0x30]
cmp eax, ebx
jne 0x4b2b09
lea eax, [ebp - 0x2c]
push ecx
push eax
call fcn.005c7b7c
add esp, 8
test eax, eax
jne 0x4b2bf6
mov eax, dword [ebp - 0x48]
cmp eax, ebx
jne 0x4b2b25
lea eax, [ebp - 0x44]
mov edx, 0x69ffbc
test edx, edx
je 0x4b2bf6
cmp eax, ebx
je 0x4b2bf6
push eax
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x34], ebx
mov word [ebp - 0x38], bx
call fcn.00401f60
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x19
call fcn.00401070
push ebx
push 0x69ffbc
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x20], bx
call fcn.00402890
mov esi, dword [ebp - 0x1c]
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x1a
call fcn.00401f50
push eax
call fcn.005c4b4a
lea esi, [eax + esi + 2]
lea edi, [esi + esi]
push edi
call fcn.005dd58d
mov edx, eax
add esp, 8
cmp edx, ebx
mov dword [ebp - 0x30], edx
je 0x4b2bde
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.00401f50
push eax
lea ecx, [ebp - 0x24]
call fcn.00401f50
push eax
mov eax, dword [ebp - 0x30]
push esi
push eax
call fcn.005c4ada
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.005c4b4a
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 0x4b2c0f
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.0041d750
mov ecx, dword [ebp - 0xac]
cmp dword [ecx - 8], 5
jle 0x4b2c60
mov eax, dword [ebp - 0x30]
test eax, eax
jne 0x4b2c4a
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.0041d750
mov eax, dword [ebp - 0x30]
mov byte [ebp - 0x108], 1
test eax, eax
jne 0x4b2c71
lea eax, [ebp - 0x2c]
mov ecx, 0x69ffbc
test ecx, ecx
je 0x4b2d58
test eax, eax
je 0x4b2d58
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.00401f60
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 0x69ffbc
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x1c], eax
mov word [ebp - 0x20], ax
call fcn.00402890
mov esi, dword [ebp - 0x1c]
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x1c
call fcn.00401f50
push eax
call fcn.005c4b4a
lea esi, [eax + esi + 2]
lea edi, [esi + esi]
push edi
call fcn.005dd58d
mov edx, eax
add esp, 8
test edx, edx
mov dword [ebp - 0xb8], edx
je 0x4b2d3e
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.00401f50
push eax
lea ecx, [ebp - 0x24]
call fcn.00401f50
push eax
mov eax, dword [ebp - 0xb8]
push esi
push eax
call fcn.005c4ada
mov ecx, dword [ebp - 0xb8]
push ecx
call fcn.005c4b4a
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.005b7100
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0xc
call fcn.00401070
jmp 0x4b2e95
mov esi, dword [ebp + 0x10]
test esi, esi
je 0x4b2e95
mov al, byte [ebp - 0x11]
test al, al
jne 0x4b2e95
mov ecx, dword [edi + 0x50]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov edx, 0x69ffbc
mov byte [ebp - 0x108], 1
test edx, edx
je 0x4b2e82
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.00401f60
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 0x69ffbc
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x1c], eax
mov word [ebp - 0x20], ax
call fcn.00402890
mov esi, dword [ebp - 0x1c]
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x1e
call fcn.00401f50
push eax
call fcn.005c4b4a
lea esi, [eax + esi + 2]
lea edi, [esi + esi]
push edi
call fcn.005dd58d
mov edx, eax
add esp, 8
test edx, edx
mov dword [ebp - 0xb8], edx
je 0x4b2e68
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.00401f50
push eax
lea ecx, [ebp - 0x24]
call fcn.00401f50
push eax
mov eax, dword [ebp - 0xb8]
push esi
push eax
call fcn.005c4ada
mov ecx, dword [ebp - 0xb8]
push ecx
call fcn.005c4b4a
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.005b7100
mov eax, dword [edi + 0x468]
test eax, eax
jne 0x4b2ea6
mov ecx, edi
call fcn.00593fa0
mov esi, dword [ebp - 0x18]
mov eax, dword [esi + 0x4f8]
test eax, eax
je 0x4b2ec8
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 0x4b2ee7
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 0x4b2f31
mov ecx, edi
call fcn.00593fa0
mov eax, dword [edi + 0x8c0]
test eax, eax
je 0x4b2f1d
push edi
mov ecx, 0x6ceea8
call fcn.00432260
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x150]
push eax
push ecx
jmp 0x4b3823
test edi, edi
je 0x4b2f31
mov ecx, edi
call fcn.0058a770
push edi
call fcn.005dd5b6
add esp, 4
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x150]
push eax
push ecx
jmp 0x4b3823
mov eax, dword [ebp - 0x6c]
mov byte [ebp - 0x112], 2
test eax, eax
jne 0x4b2f66
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, 0x6a0048
test ecx, ecx
je 0x4b308f
test esi, esi
je 0x4b308f
mov edx, 0x6a7c00
test edx, edx
je 0x4b308f
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.00402890
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.00401f60
mov bl, 0x20
push 0x6a7c00
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], bl
call fcn.0040d680
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x21
call fcn.00401070
mov esi, dword [ebp - 0x34]
lea ecx, [ebp - 0x160]
call fcn.00401f50
push eax
call fcn.005c4b4a
add esp, 4
lea ecx, [ebp - 0x24]
mov edi, eax
call fcn.00401f50
push eax
call fcn.005c4b4a
add esi, edi
lea esi, [eax + esi + 3]
lea edi, [esi + esi]
push edi
call fcn.005dd58d
mov edx, eax
add esp, 8
test edx, edx
mov dword [ebp - 0x64], edx
je 0x4b3066
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.00401f50
push eax
lea ecx, [ebp - 0x24]
call fcn.00401f50
push eax
lea ecx, [ebp - 0x3c]
call fcn.00401f50
push eax
mov eax, dword [ebp - 0x64]
push esi
push eax
call fcn.005c4ada
mov ecx, dword [ebp - 0x64]
push ecx
call fcn.005c4b4a
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 0x4b312b
mov eax, dword [0x6a3f58]
test eax, eax
je 0x4b30c3
mov ecx, dword [ebp - 0x64]
test ecx, ecx
jne 0x4b30ad
lea ecx, [ebp - 0x60]
mov eax, dword [ebp - 0xf4]
test eax, eax
jne 0x4b30bd
lea eax, [ebp - 0xf0]
push 0
push ecx
push eax
jmp 0x4b313c
mov eax, dword [ebp - 0xf4]
test eax, eax
jne 0x4b30d3
lea eax, [ebp - 0xf0]
push eax
lea ecx, [ebp - 0x88]
call fcn.005e124c
mov eax, dword [ebp - 0x64]
mov byte [ebp - 4], 0x22
test eax, eax
jne 0x4b30ed
lea eax, [ebp - 0x60]
push eax
lea ecx, [ebp - 0x154]
call fcn.005e124c
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.005e118c
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0xc
call fcn.005e118c
jmp 0x4b3142
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x4b3135
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 0x4b3156
mov al, byte [ebp - 0x57]
test al, al
je 0x4b3161
mov eax, dword [ebp - 0x6c]
test eax, eax
jne 0x4b3289
mov al, byte [ebp - 0x56]
test al, al
jne 0x4b3289
test bl, bl
je 0x4b318d
mov eax, dword [ebp - 0xf4]
test eax, eax
jne 0x4b3180
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, 0x69ffbc
test ecx, ecx
je 0x4b3274
test eax, eax
je 0x4b3274
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.00401f60
mov bl, 0x23
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], bl
call fcn.00401070
push esi
push 0x69ffbc
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x1c], esi
mov word [ebp - 0x20], si
call fcn.00402890
mov eax, dword [ebp - 0x48]
mov byte [ebp - 4], 0x24
cmp eax, esi
jne 0x4b31f0
lea eax, [ebp - 0x44]
mov esi, dword [ebp - 0x1c]
push eax
call fcn.005c4b4a
lea esi, [eax + esi + 2]
lea edi, [esi + esi]
push edi
call fcn.005dd58d
mov edx, eax
add esp, 8
test edx, edx
mov dword [ebp - 0xdc], edx
je 0x4b325d
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.00401f50
push eax
lea ecx, [ebp - 0x24]
call fcn.00401f50
push eax
mov eax, dword [ebp - 0xdc]
push esi
push eax
call fcn.005c4ada
mov ecx, dword [ebp - 0xdc]
push ecx
call fcn.005c4b4a
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.005b7100
jmp 0x4b32e2
test bl, bl
jne 0x4b3296
push 0
mov ecx, edi
call fcn.00590620
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.005b7100
mov edx, dword [ebp - 0x111]
push 1
push edi
push edx
mov ecx, ebx
call fcn.005b8bd0
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 0x4b36d0
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x4b32f7
lea eax, [ebp - 0x60]
push 0x5c
push eax
call fcn.005c4a9a
mov esi, eax
add esp, 8
test esi, esi
je 0x4b357b
add esi, 2
cmp word [esi], 0
je 0x4b357b
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 0x4b333c
mov edi, eax
jmp 0x4b3342
add edi, 0x420
mov edx, 0x6a0048
test edx, edx
je 0x4b345b
cmp edi, ebx
je 0x4b345b
cmp esi, ebx
je 0x4b345b
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.00402890
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.00401f60
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.00401f60
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x28
call fcn.00401070
mov esi, dword [ebp - 0x28]
lea ecx, [ebp - 0x24]
call fcn.00401f50
push eax
call fcn.005c4b4a
add esp, 4
lea ecx, [ebp - 0x3c]
mov edi, eax
call fcn.00401f50
push eax
call fcn.005c4b4a
add esi, edi
lea esi, [eax + esi + 3]
lea edi, [esi + esi]
push edi
call fcn.005dd58d
mov edx, eax
add esp, 8
cmp edx, ebx
mov dword [ebp - 0x48], edx
je 0x4b3434
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.00401f50
push eax
lea ecx, [ebp - 0x3c]
call fcn.00401f50
push eax
lea ecx, [ebp - 0x30]
call fcn.00401f50
push eax
mov eax, dword [ebp - 0x48]
push esi
push eax
call fcn.005c4ada
mov ecx, dword [ebp - 0x48]
push ecx
call fcn.005c4b4a
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 0x4b3462
lea ecx, [ebp - 0x44]
mov eax, dword [ebp - 0x64]
cmp eax, ebx
jne 0x4b346c
lea eax, [ebp - 0x60]
push ecx
push eax
call fcn.005c7b7c
add esp, 8
test eax, eax
jne 0x4b356f
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x4b3488
lea eax, [ebp - 0x44]
mov edx, 0x69ffbc
test edx, edx
je 0x4b355d
test eax, eax
je 0x4b355d
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.00401f60
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x29
call fcn.00401070
push esi
push 0x69ffbc
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x1c], esi
mov word [ebp - 0x20], si
call fcn.00402890
mov eax, dword [ebp - 0x30]
mov byte [ebp - 4], 0x2a
cmp eax, esi
jne 0x4b34e4
lea eax, [ebp - 0x2c]
mov esi, dword [ebp - 0x1c]
push eax
call fcn.005c4b4a
lea ebx, [eax + esi + 2]
lea esi, [ebx + ebx]
push esi
call fcn.005dd58d
mov edi, eax
add esp, 8
test edi, edi
mov dword [ebp - 0x64], edi
je 0x4b3545
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 0x4b3522
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x24]
call fcn.00401f50
push eax
mov eax, dword [ebp - 0x64]
push ebx
push eax
call fcn.005c4ada
mov ecx, dword [ebp - 0x64]
push ecx
call fcn.005c4b4a
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 0x4b356f
call fcn.00593fa0
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0xc
call fcn.00401070
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x4b3585
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.0041d750
mov ecx, dword [ebp - 0xac]
cmp dword [ecx - 8], 5
jle 0x4b35d9
mov eax, dword [ebp - 0x64]
test eax, eax
jne 0x4b35c3
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.0041d750
mov eax, dword [ebp - 0x64]
mov byte [ebp - 0x108], 1
test eax, eax
jne 0x4b35ea
lea eax, [ebp - 0x60]
mov ecx, 0x69ffbc
test ecx, ecx
je 0x4b37d2
test eax, eax
je 0x4b37d2
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.00401f60
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0x2b
call fcn.00401070
push esi
push 0x69ffbc
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x28], esi
mov word [ebp - 0x2c], si
call fcn.00402890
mov eax, dword [ebp - 0x48]
mov byte [ebp - 4], 0x2c
cmp eax, esi
jne 0x4b3649
lea eax, [ebp - 0x44]
mov esi, dword [ebp - 0x28]
push eax
call fcn.005c4b4a
lea ebx, [eax + esi + 2]
lea esi, [ebx + ebx]
push esi
call fcn.005dd58d
mov edi, eax
add esp, 8
test edi, edi
mov dword [ebp - 0xb8], edi
je 0x4b36b8
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 0x4b368a
lea eax, [ebp - 0x44]
mov ecx, dword [ebp - 0x30]
test ecx, ecx
jne 0x4b3694
lea ecx, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0xb8]
push ecx
push ebx
push eax
call fcn.005c4ada
mov ecx, dword [ebp - 0xb8]
push ecx
call fcn.005c4b4a
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 0x4b37cd
mov edi, dword [ebp + 0x10]
test edi, edi
je 0x4b37d2
mov ecx, dword [ebp - 0x50]
mov eax, dword [ecx + 0x468]
test eax, eax
jne 0x4b36ed
call fcn.00593fa0
mov edx, 0x69ffbc
mov byte [ebp - 0x108], 1
test edx, edx
je 0x4b37d2
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.00401f60
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0x2d
call fcn.00401070
push esi
push 0x69ffbc
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x34], esi
mov word [ebp - 0x38], si
call fcn.00402890
mov eax, dword [ebp - 0x30]
mov byte [ebp - 4], 0x2e
cmp eax, esi
jne 0x4b374b
lea eax, [ebp - 0x2c]
mov esi, dword [ebp - 0x34]
push eax
call fcn.005c4b4a
lea ebx, [eax + esi + 2]
lea esi, [ebx + ebx]
push esi
call fcn.005dd58d
mov edi, eax
add esp, 8
test edi, edi
mov dword [ebp - 0xb8], edi
je 0x4b37ba
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 0x4b378c
lea eax, [ebp - 0x2c]
mov ecx, dword [ebp - 0x3c]
test ecx, ecx
jne 0x4b3796
lea ecx, [ebp - 0x38]
push eax
mov eax, dword [ebp - 0xb8]
push ecx
push ebx
push eax
call fcn.005c4ada
mov ecx, dword [ebp - 0xb8]
push ecx
call fcn.005c4b4a
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 0x4b3811
mov ecx, esi
call fcn.00593fa0
mov eax, dword [esi + 0x8c0]
test eax, eax
je 0x4b37fd
push esi
mov ecx, 0x6ceea8
call fcn.00432260
jmp 0x4b3811
test esi, esi
je 0x4b3811
mov ecx, esi
call fcn.0058a770
push esi
call fcn.005dd5b6
add esp, 4
mov al, byte [ebp - 0x56]
test al, al
je 0x4b3852
mov eax, dword [ebp + 8]
lea edx, [ebp - 0x150]
push edx
push eax
mov ecx, dword [ebp - 0x54]
call fcn.005b7100
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0xb
call fcn.005e118c
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 9
call fcn.005e118c
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x80]
jmp 0x4b1e5e
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.005b7100
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.005e118c
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 9
call fcn.005e118c
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x80]
jmp 0x4b1e5e