Function at 0x426f70
Capabilities:
Open clipboard
Write clipboard data

Disassembly:
sub esp, 0x3c
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x4c]
push ebx
mov ebx, ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x494]
push ebp
mov ebp, dword [esp + 0x48]
push esi
mov dword [esp + 0x18], ecx
mov ecx, dword [ebx + 0x49c]
mov dword [esp + 0x1c], edx
mov edx, dword [ebx + 0x4a0]
mov dword [esp + 0x20], eax
mov eax, dword [ebx + 0x4a4]
push edi
push 0x38
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], ebp
mov dword [esp + 0x34], ecx
mov dword [esp + 0x2c], edx
mov dword [esp + 0x30], eax
call dword [0x460774]
mov ecx, 0xe
lea esi, [esp + 0x18]
mov edi, eax
push 0x5b4
rep movsd dword es:[edi], dword [esi]
lea ecx, [ebp + ebp*4]
push eax
shl ecx, 3
sub ecx, ebp
lea ebp, [ecx + ecx*8]
mov ecx, dword [ebx + 0x4e0]
shl ebp, 2
mov dword [esp + 0x68], ebp
add ebp, ecx
call dword [0x460770]
lea edi, [eax + 0x38]
mov ecx, 0x15f
mov esi, ebp
add esp, 0xc
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp + 0x3c]
mov ebx, 0x5b4
test ecx, ecx
je 0x427089
lea ecx, [ecx + ecx*2]
lea edx, [ecx*4 + 0x5b4]
push edx
push eax
call dword [0x460770]
mov ecx, dword [ebp + 0x3c]
mov esi, dword [ebp + 0x54]
lea edi, [eax + 0x5b4]
lea ecx, [ecx + ecx*2]
shl ecx, 2
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp + 0x3c]
lea edx, [ecx + ecx*2]
lea ebx, [edx*4 + 0x5b4]
lea ecx, [ebx + ecx*4]
push ecx
push eax
call dword [0x460770]
mov ecx, dword [ebp + 0x3c]
mov esi, dword [ebp + 0x58]
shl ecx, 2
mov edx, ecx
lea edi, [eax + ebx]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
add esp, 0x10
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp + 0x3c]
lea ebx, [ebx + ecx*4]
mov ecx, dword [ebp + 0x510]
test ecx, ecx
je 0x4270ca
lea edx, [ebx + ecx*8]
push edx
push eax
call dword [0x460770]
mov ecx, dword [ebp + 0x510]
mov esi, dword [ebp + 0x52c]
shl ecx, 3
mov edx, ecx
lea edi, [eax + ebx]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
add esp, 8
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp + 0x510]
lea ebx, [ebx + ecx*8]
mov ecx, dword [ebp + 0x514]
test ecx, ecx
je 0x427113
lea edx, [ecx + ecx*8]
lea ecx, [ebx + edx*2]
push ecx
push eax
call dword [0x460770]
mov ecx, dword [ebp + 0x514]
mov esi, dword [ebp + 0x530]
lea edi, [eax + ebx]
add esp, 8
lea ecx, [ecx + ecx*8]
shl ecx, 1
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp + 0x514]
lea ecx, [ecx + ecx*8]
lea ebx, [ebx + ecx*2]
mov ecx, dword [ebp + 0x518]
test ecx, ecx
je 0x42715d
lea edx, [ecx + ecx*2]
lea ecx, [ebx + edx*4]
push ecx
push eax
call dword [0x460770]
mov ecx, dword [ebp + 0x518]
mov esi, dword [ebp + 0x534]
lea edi, [eax + ebx]
add esp, 8
lea ecx, [ecx + ecx*2]
shl ecx, 2
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp + 0x518]
lea ecx, [ecx + ecx*2]
lea ebx, [ebx + ecx*4]
mov ecx, dword [ebp + 0x51c]
test ecx, ecx
je 0x4271a7
lea edx, [ecx + ecx*4]
lea ecx, [ebx + edx*4]
push ecx
push eax
call dword [0x460770]
mov ecx, dword [ebp + 0x51c]
mov esi, dword [ebp + 0x538]
lea edi, [eax + ebx]
add esp, 8
lea ecx, [ecx + ecx*4]
shl ecx, 2
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp + 0x51c]
lea ecx, [ecx + ecx*4]
lea ebx, [ebx + ecx*4]
mov ecx, dword [ebp + 0x524]
test ecx, ecx
je 0x4271ec
shl ecx, 4
add ecx, ebx
push ecx
push eax
call dword [0x460770]
mov ecx, dword [ebp + 0x524]
mov esi, dword [ebp + 0x53c]
shl ecx, 4
mov edx, ecx
lea edi, [eax + ebx]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
add esp, 8
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp + 0x524]
shl ecx, 4
add ebx, ecx
mov ecx, dword [ebp + 0x528]
test ecx, ecx
je 0x427231
shl ecx, 4
add ecx, ebx
push ecx
push eax
call dword [0x460770]
mov ecx, dword [ebp + 0x528]
mov esi, dword [ebp + 0x540]
shl ecx, 4
mov edx, ecx
lea edi, [eax + ebx]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
add esp, 8
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp + 0x528]
shl ecx, 4
add ebx, ecx
lea ebp, [ebx + 0xb4]
push ebp
push eax
call dword [0x460770]
mov ecx, dword [esp + 0x58]
lea edi, [eax + ebx]
add esp, 8
mov dword [esp + 0x54], 7
lea ecx, [ecx + ecx*4]
lea edx, [ecx + ecx*8]
mov ecx, dword [esp + 0x10]
mov ecx, dword [ecx + 0x4e4]
lea edx, [ecx + edx*4]
mov ecx, 0x2d
mov esi, edx
mov dword [esp + 0x58], edx
rep movsd dword es:[edi], dword [esi]
mov ebx, edx
mov ecx, dword [ebx]
test ecx, ecx
je 0x4272c5
lea edx, [ecx*8]
sub edx, ecx
lea ecx, [ebp + edx*2]
push ecx
push eax
call dword [0x460770]
mov edx, dword [ebx]
mov esi, dword [ebx + 0x38]
lea edi, [eax + ebp]
add esp, 8
lea ecx, [edx*8]
sub ecx, edx
shl ecx, 1
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebx]
lea edx, [ecx*8]
sub edx, ecx
lea ebp, [ebp + edx*2]
mov edx, dword [esp + 0x58]
mov ecx, dword [esp + 0x54]
add ebx, 4
dec ecx
mov dword [esp + 0x54], ecx
jne 0x427273
lea ebx, [edx + 0x58]
mov dword [esp + 0x58], 4
mov ecx, dword [ebx]
test ecx, ecx
je 0x427312
lea ecx, [ebp + ecx*4]
push ecx
push eax
call dword [0x460770]
mov ecx, dword [ebx]
mov esi, dword [ebx + 8]
shl ecx, 2
mov edx, ecx
lea edi, [eax + ebp]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
add esp, 8
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebx]
lea ebp, [ebp + ecx*4]
mov ecx, dword [ebx + 4]
test ecx, ecx
je 0x4273c6
lea edx, [ebp + ecx*4]
push edx
push eax
call dword [0x460770]
mov ecx, dword [ebx + 4]
mov esi, dword [ebx + 0xc]
shl ecx, 2
mov edx, ecx
lea edi, [eax + ebp]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
add esp, 8
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebx + 4]
xor esi, esi
test ecx, ecx
lea ebp, [ebp + ecx*4]
mov dword [esp + 0x54], esi
jle 0x4273c6
mov ecx, dword [ebx + 0xc]
jmp 0x427360
mov esi, dword [esp + 0x54]
mov ecx, dword [ecx + esi*4]
lea edx, [ecx*8]
sub edx, ecx
lea ecx, [ebp + edx*2]
push ecx
push eax
call dword [0x460770]
mov edx, dword [ebx + 0xc]
lea edi, [eax + ebp]
add esp, 8
mov edx, dword [edx + esi*4]
lea ecx, [edx*8]
sub ecx, edx
mov edx, dword [ebx + 0x10]
shl ecx, 1
mov esi, dword [edx + esi*4]
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebx + 0xc]
mov esi, dword [esp + 0x54]
mov edx, dword [ecx + esi*4]
lea edi, [edx*8]
sub edi, edx
mov edx, dword [ebx + 4]
inc esi
cmp esi, edx
lea ebp, [ebp + edi*2]
mov dword [esp + 0x54], esi
jl 0x42735c
mov ecx, dword [esp + 0x58]
add ebx, 0x18
dec ecx
mov dword [esp + 0x58], ecx
jne 0x4272de
mov esi, dword [esp + 0x50]
mov dword [esp + 0x58], 4
shl esi, 5
mov dword [esp + 0x50], esi
lea ebx, [ebp + 8]
push ebx
push eax
call dword [0x460770]
mov edi, dword [esp + 0x18]
mov ecx, esi
add esp, 8
add ecx, dword [edi + 0x4e8]
mov edx, dword [ecx]
mov dword [eax + ebp], edx
mov ecx, dword [ecx + 4]
mov dword [eax + ebp + 4], ecx
mov edx, dword [edi + 0x4e8]
add edx, esi
mov ebp, ebx
mov ecx, dword [edx]
test ecx, ecx
je 0x4275bc
mov ebx, dword [edx + 4]
lea edx, [ecx + ecx*8]
lea ecx, [ecx + edx*4]
lea edx, [ebp + ecx*4]
push edx
push eax
call dword [0x460770]
mov ecx, edi
lea edi, [eax + ebp]
add esp, 8
mov dword [esp + 0x54], 0
mov edx, dword [ecx + 0x4e8]
mov ecx, dword [esi + edx]
mov esi, ebx
lea edx, [ecx + ecx*8]
lea ecx, [ecx + edx*4]
shl ecx, 2
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + 0x4e8]
mov ecx, dword [esp + 0x50]
mov ecx, dword [ecx + edx]
test ecx, ecx
lea edx, [ecx + ecx*8]
lea edx, [ecx + edx*4]
lea ebp, [ebp + edx*4]
jle 0x4275b4
cmp dword [ebx], 3
jne 0x4274db
mov cx, word [ebx + 0x30]
test cx, cx
je 0x4274db
movsx ecx, cx
lea ecx, [ecx + ecx*4]
lea edx, [ebp + ecx*4]
push edx
push eax
call dword [0x460770]
movsx ecx, word [ebx + 0x30]
mov esi, dword [ebx + 0x34]
lea edi, [eax + ebp]
lea ecx, [ecx + ecx*4]
add esp, 8
shl ecx, 2
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
movsx ecx, word [ebx + 0x30]
lea ecx, [ecx + ecx*4]
lea ebp, [ebp + ecx*4]
mov ecx, dword [ebx + 0x38]
lea edx, [ecx + ecx*2]
lea ecx, [ebp + edx*4]
push ecx
push eax
call dword [0x460770]
mov ecx, dword [ebx + 0x38]
mov esi, dword [ebx + 0x3c]
lea edi, [eax + ebp]
lea ecx, [ecx + ecx*2]
shl ecx, 2
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebx + 0x38]
lea edx, [ecx + ecx*2]
lea ebp, [ebp + edx*4]
lea ecx, [ebp + ecx*4]
push ecx
push eax
call dword [0x460770]
mov ecx, dword [ebx + 0x38]
mov esi, dword [ebx + 0x40]
shl ecx, 2
mov edx, ecx
lea edi, [eax + ebp]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebx + 0x38]
lea ebp, [ebp + ecx*4]
mov ecx, dword [ebx + 0x44]
lea edx, [ecx*8]
sub edx, ecx
lea ecx, [ebp + edx*2]
push ecx
push eax
call dword [0x460770]
mov edx, dword [ebx + 0x44]
mov esi, dword [ebx + 0x48]
lea edi, [eax + ebp]
add esp, 0x18
lea ecx, [edx*8]
add ebx, 0x94
sub ecx, edx
shl ecx, 1
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebx - 0x50]
mov esi, dword [esp + 0x50]
lea edx, [ecx*8]
sub edx, ecx
mov ecx, dword [esp + 0x54]
inc ecx
lea ebp, [ebp + edx*2]
mov edx, dword [esp + 0x10]
mov dword [esp + 0x54], ecx
mov edx, dword [edx + 0x4e8]
cmp ecx, dword [esi + edx]
jl 0x42748f
mov esi, dword [esp + 0x50]
mov edi, dword [esp + 0x10]
mov ecx, dword [esp + 0x58]
add esi, 8
dec ecx
mov dword [esp + 0x50], esi
mov dword [esp + 0x58], ecx
jne 0x4273eb
mov ebx, dword [esp + 0x5c]
mov ecx, dword [edi + 0x4e0]
add ebx, ecx
mov ecx, dword [ebx + 0x510]
lea ecx, [ecx + ecx*8]
lea edx, [ebp + ecx*4]
push edx
push eax
call dword [0x460770]
mov ecx, dword [ebx + 0x510]
mov edx, dword [ebx + 0x50c]
mov esi, dword [edi + 0x558]
lea edi, [eax + ebp]
lea ecx, [ecx + ecx*8]
lea edx, [edx + edx*8]
shl ecx, 2
lea esi, [esi + edx*4]
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
add esp, 8
and ecx, 3
mov dword [esp + 0x50], eax
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebx + 0x510]
mov esi, dword [esp + 0x10]
lea edx, [ecx + ecx*8]
lea ebp, [ebp + edx*4]
mov edx, dword [esi + 0x494]
test edx, edx
je 0x4276b6
lea edx, [ecx*8]
sub edx, ecx
lea ecx, [ebp + edx*4]
push ecx
push eax
call dword [0x460770]
mov edx, dword [ebx + 0x510]
mov dword [esp + 0x58], eax
add esp, 8
lea ecx, [edx*8]
sub ecx, edx
mov edx, dword [ebx + 0x50c]
shl ecx, 2
lea edi, [edx*8]
sub edi, edx
mov edx, dword [esi + 0x55c]
lea esi, [edx + edi*4]
lea edi, [eax + ebp]
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [esp + 0x50]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebx + 0x510]
mov esi, dword [esp + 0x10]
lea edx, [ecx*8]
sub edx, ecx
lea ebp, [ebp + edx*4]
mov edx, dword [esi + 0x49c]
test edx, edx
je 0x42770e
lea ecx, [ebp + ecx*4]
push ecx
push eax
call dword [0x460770]
mov ecx, dword [ebx + 0x510]
mov edx, dword [ebx + 0x50c]
mov esi, dword [esi + 0x768]
mov dword [esp + 0x58], eax
shl ecx, 2
lea edi, [eax + ebp]
mov eax, ecx
lea esi, [esi + edx*4]
add esp, 8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [esp + 0x50]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebx + 0x510]
mov esi, dword [esp + 0x10]
lea ebp, [ebp + ecx*4]
mov edx, dword [esi + 0x4a0]
test edx, edx
je 0x427766
lea ecx, [ebp + ecx*8]
push ecx
push eax
call dword [0x460770]
mov ecx, dword [ebx + 0x510]
mov edx, dword [ebx + 0x50c]
mov esi, dword [esi + 0x76c]
mov dword [esp + 0x58], eax
shl ecx, 3
lea edi, [eax + ebp]
mov eax, ecx
lea esi, [esi + edx*8]
add esp, 8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [esp + 0x50]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebx + 0x510]
mov esi, dword [esp + 0x10]
lea ebp, [ebp + ecx*8]
mov edx, dword [esi + 0x4a4]
test edx, edx
je 0x4277b6
lea ecx, [ebp + ecx*8]
push ecx
push eax
call dword [0x460770]
mov ecx, dword [ebx + 0x510]
mov edx, dword [ebx + 0x50c]
mov esi, dword [esi + 0x770]
mov dword [esp + 0x58], eax
shl ecx, 3
lea edi, [eax + ebp]
mov eax, ecx
lea esi, [esi + edx*8]
add esp, 8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebx + 0x510]
lea ebp, [ebp + ecx*8]
push str.T3ED_TRACKBLOCK
call dword [sym.imp.USER32.dll_RegisterClipboardFormatA]
push 0
mov dword [esp + 0x58], eax
call dword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x427820
call dword [sym.imp.USER32.dll_EmptyClipboard]
push ebp
push 0x2000
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov esi, dword [esp + 0x50]
mov ecx, ebp
mov ebx, eax
mov edx, ecx
mov edi, ebx
push ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov eax, dword [esp + 0x54]
push ebx
push eax
call dword [sym.imp.USER32.dll_SetClipboardData]
call dword [sym.imp.USER32.dll_CloseClipboard]
pop edi
mov eax, ebp
pop esi
pop ebp
pop ebx
add esp, 0x3c
ret 0x10
pop edi
pop esi
pop ebp
or eax, 0xffffffff
pop ebx
add esp, 0x3c
ret 0x10