Function at 0x447e60
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push edi
xor edi, edi
push esi
mov esi, 0x459c00
push ebx
sub esp, 0x11c
lea ebx, [ebp - 0x108]
mov dword [esp], ebx
mov eax, dword [0x45cb90]
mov dword [esp + 8], eax
mov eax, 0x459c08
mov dword [esp + 4], eax
call sub.cygwin1.dll_sprintf
mov dword [esp + 4], ebx
xor eax, eax
xor ebx, ebx
mov dword [esp + 8], eax
mov eax, dword [0x45b598]
mov dword [esp], eax
call sub.cygX11_6.dll_XInternAtom
mov dword [0x45e0b0], eax
mov eax, dword [0x45b598]
mov dword [esp + 8], edi
mov edi, 0x459c10
mov dword [esp + 4], esi
xor esi, esi
mov dword [esp], eax
call sub.cygX11_6.dll_XInternAtom
mov dword [0x45e0c0], eax
mov eax, dword [0x45b598]
mov ecx, 0x459c18
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov ebx, 0x459c22
mov dword [esp], eax
call sub.cygX11_6.dll_XInternAtom
mov dword [0x45e080], eax
mov eax, 0x459c35
xor edx, edx
mov dword [esp + 4], eax
mov eax, dword [0x45b598]
mov dword [esp + 8], edx
mov dword [esp], eax
call sub.cygX11_6.dll_XInternAtom
mov dword [0x45e0a0], eax
xor eax, eax
mov dword [esp + 8], eax
mov eax, 0x459c3d
mov dword [esp + 4], eax
mov eax, dword [0x45b598]
mov dword [esp], eax
call sub.cygX11_6.dll_XInternAtom
mov dword [0x45e0a4], eax
xor eax, eax
mov dword [esp + 8], eax
mov eax, 0x459c46
mov dword [esp + 4], eax
mov eax, dword [0x45b598]
mov dword [esp], eax
call sub.cygX11_6.dll_XInternAtom
mov dword [0x45e0a8], eax
xor eax, eax
mov dword [esp + 8], eax
mov eax, dword [0x45b598]
mov dword [esp + 4], edi
lea edi, [ebp - 0x58]
mov dword [esp], eax
call sub.cygX11_6.dll_XInternAtom
mov dword [0x45e0ac], eax
mov eax, dword [0x45b598]
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
mov dword [esp], eax
call sub.cygX11_6.dll_XInternAtom
mov dword [0x45e070], eax
mov eax, dword [0x45e0b0]
mov dword [esp + 4], eax
mov eax, dword [0x45b598]
mov dword [esp], eax
call sub.cygX11_6.dll_XGetSelectionOwner
test eax, eax
mov ebx, eax
je 0x447fe1
mov ecx, dword [ebp + 8]
test ecx, ecx
je 0x4481c9
mov dword [ebp - 0x30], 0x20000
mov eax, 0x800
lea edi, [ebp - 0x58]
mov dword [esp + 8], eax
mov eax, dword [0x45b598]
mov dword [esp + 0xc], edi
mov dword [esp + 4], ebx
mov dword [esp], eax
call sub.cygX11_6.dll_XChangeWindowAttributes
mov dword [ebp - 0x30], 0x400000
mov eax, 0x800
mov esi, 0x1f
mov dword [esp + 8], eax
mov eax, dword [0x45ce60]
mov dword [esp + 0xc], edi
mov dword [esp + 4], eax
mov eax, dword [0x45b598]
mov dword [esp], eax
call sub.cygX11_6.dll_XChangeWindowAttributes
mov dword [esp + 0xc], esi
xor eax, eax
mov ecx, 0x43
mov dword [esp + 0x1c], eax
xor eax, eax
lea esi, [ebp - 0xb8]
mov dword [esp + 0x18], eax
mov eax, 2
mov dword [esp + 0x14], eax
mov eax, 8
mov dword [esp + 0x10], eax
mov eax, dword [0x45ce60]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov eax, dword [0x45b598]
mov dword [esp], eax
call sub.cygX11_6.dll_XChangeProperty
mov dword [esp + 0xc], esi
mov eax, dword [0x45ce60]
mov edx, 0x400000
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov eax, dword [0x45b598]
mov dword [esp], eax
call sub.cygX11_6.dll_XWindowEvent
mov dword [ebp - 0x30], 0
mov eax, 0x800
mov dword [esp + 8], eax
mov eax, dword [0x45ce60]
mov dword [esp + 0xc], edi
mov dword [esp + 4], eax
mov eax, dword [0x45b598]
mov dword [esp], eax
call sub.cygX11_6.dll_XChangeWindowAttributes
mov eax, dword [ebp - 0xa0]
mov dword [0x45e090], eax
mov dword [esp + 0xc], eax
mov eax, dword [0x45ce60]
mov dword [esp + 8], eax
mov eax, dword [0x45e0b0]
mov dword [esp + 4], eax
mov eax, dword [0x45b598]
mov dword [esp], eax
call sub.cygX11_6.dll_XSetSelectionOwner
mov eax, dword [0x45e0b0]
mov dword [esp + 4], eax
mov eax, dword [0x45b598]
mov dword [esp], eax
call sub.cygX11_6.dll_XGetSelectionOwner
cmp eax, dword [0x45ce60]
jne 0x4481f3
mov eax, 0x21
mov edx, dword [0x45ce58]
xor ecx, ecx
mov dword [ebp - 0xe8], eax
mov eax, dword [0x45e0c0]
mov dword [ebp - 0xd8], edx
mov dword [esp + 8], ecx
mov dword [ebp - 0xd4], eax
mov eax, 0x20
mov dword [ebp - 0xd0], eax
mov eax, dword [0x45e090]
mov dword [esp + 4], edx
mov dword [ebp - 0xcc], eax
mov eax, dword [0x45e0b0]
mov dword [ebp - 0xc8], eax
lea eax, [ebp - 0xe8]
mov dword [esp + 0x10], eax
mov eax, 0x20000
mov dword [esp + 0xc], eax
mov eax, dword [0x45b598]
mov dword [esp], eax
call sub.cygX11_6.dll_XSendEvent
test ebx, ebx
jne 0x4481a0
mov dword [esp + 0xc], edi
mov eax, 0x800
mov dword [esp + 8], eax
mov eax, dword [0x45ce60]
mov dword [ebp - 0x30], 0x200001
mov dword [esp + 4], eax
mov eax, dword [0x45b598]
mov dword [esp], eax
call sub.cygX11_6.dll_XChangeWindowAttributes
add esp, 0x11c
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp + 0xc], esi
mov eax, dword [0x45b598]
mov edx, 0x20000
mov dword [esp + 8], edx
mov dword [esp + 4], ebx
mov dword [esp], eax
call sub.cygX11_6.dll_XWindowEvent
cmp dword [ebp - 0xb8], 0x11
jne 0x4481a0
jmp 0x448165
mov edx, 0x459c50
mov dword [esp + 8], edx
mov dword [esp], 4
mov eax, str.SetupICCCM2
mov dword [esp + 4], eax
call fcn.0041f170
mov dword [esp], 1
call sub.cygwin1.dll_exit
mov eax, str.failed_to_acquire_selection_ownership
mov dword [esp + 8], eax
jmp 0x4481d2