Function at 0x478030
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x32c
mov eax, dword [0x580280]
xor eax, ebp
mov dword [ebp - 0x44], eax
mov eax, dword [0x588718]
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x478e77
push 0xfffffffffffffff0
mov ecx, dword [0x588718]
push ecx
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov dword [ebp - 0xc], eax
push 0x80000
push 0x80000
push 0x1036
mov edx, dword [0x588718]
push edx
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0xc]
and eax, 0x100
je 0x4780e1
call fcn.00477d90
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x14]
shr ecx, 0x10
and ecx, 0xffff
movzx edx, cx
cmp edx, 5
jle 0x4780c8
push 0
push 0x7071
push 0x111
mov eax, dword [0x588714]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x4780e1
push 0
push 0x7051
push 0x111
mov ecx, dword [0x588714]
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 8], 0
lea edx, [ebp - 8]
push edx
mov eax, dword [0x588718]
push eax
call dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
mov ecx, dword [ebp - 8]
push ecx
push 0
push 0x38
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x478e60
mov dword [ebp - 0x34], 0
xor edx, edx
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], edx
push 0
lea eax, [ebp - 0x34]
push eax
push 0
push 0x30
call dword [sym.imp.USER32.dll_SystemParametersInfoW]
push 0
push 0
push 0x1033
mov ecx, dword [0x588718]
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x18], eax
mov edx, dword [ebp - 0x18]
shr edx, 0x10
and edx, 0xffff
movzx eax, dx
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x18]
and ecx, 0xffff
movzx edx, cx
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x20], 0
xor eax, eax
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp + 8]
push ecx
mov edx, dword [0x588718]
push edx
mov eax, dword [ebp - 4]
push eax
call fcn.004766e0
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0xffffffff
je 0x478e56
lea ecx, [ebp - 0x20]
push ecx
mov edx, dword [ebp - 0x38]
push edx
mov eax, dword [0x588718]
push eax
mov ecx, dword [ebp - 4]
push ecx
call fcn.004768f0
movzx edx, al
test edx, edx
je 0x478e56
mov dword [ebp - 0x40], 0
xor eax, eax
mov word [ebp - 0x250], ax
push 0x206
push 0
lea ecx, [ebp - 0x24e]
push ecx
call fcn.00486c20
add esp, 0xc
cmp dword [ebp + 0xc], 0
je 0x478492
mov edx, dword [ebp + 0xc]
movzx eax, word [edx]
test eax, eax
je 0x478492
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [0x588718]
push edx
mov eax, dword [ebp - 4]
push eax
call fcn.004766e0
mov dword [ebp - 0x254], eax
cmp dword [ebp - 0x254], 0xffffffff
je 0x478492
mov dword [ebp - 0x26c], 0
xor ecx, ecx
mov dword [ebp - 0x268], ecx
mov dword [ebp - 0x264], ecx
mov dword [ebp - 0x260], ecx
mov dword [ebp - 0x25c], 0
xor edx, edx
mov dword [ebp - 0x258], edx
lea eax, [ebp - 0x26c]
push eax
mov ecx, dword [ebp - 0x254]
push ecx
mov edx, dword [0x588718]
push edx
mov eax, dword [ebp - 4]
push eax
call fcn.00476b50
movzx ecx, al
test ecx, ecx
je 0x478492
lea edx, [ebp - 0x25c]
push edx
mov eax, dword [ebp - 0x254]
push eax
mov ecx, dword [0x588718]
push ecx
mov edx, dword [ebp - 4]
push edx
call fcn.004768f0
movzx eax, al
test eax, eax
je 0x478492
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x278], ecx
cmp dword [ebp - 0x278], 0
jle 0x478354
mov edx, dword [ebp - 0x260]
add edx, dword [ebp - 0x3c]
cmp edx, dword [ebp - 0x28]
jae 0x4782ed
mov eax, dword [ebp - 0x258]
add eax, dword [ebp - 0x3c]
mov dword [ebp - 0x258], eax
mov ecx, dword [ebp - 0x3c]
push ecx
push 0
lea edx, [ebp - 0x26c]
push edx
call dword [sym.imp.USER32.dll_OffsetRect]
jmp 0x478340
mov eax, dword [ebp - 0x25c]
add eax, dword [ebp - 0x24]
mov dword [ebp - 0x25c], eax
push 0
mov ecx, dword [ebp - 0x24]
push ecx
lea edx, [ebp - 0x26c]
push edx
call dword [sym.imp.USER32.dll_OffsetRect]
mov eax, dword [ebp - 0x268]
cmp eax, dword [ebp - 0x3c]
jbe 0x478340
mov ecx, dword [ebp - 0x258]
sub ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x258], ecx
mov edx, dword [ebp - 0x3c]
neg edx
push edx
push 0
lea eax, [ebp - 0x26c]
push eax
call dword [sym.imp.USER32.dll_OffsetRect]
jmp 0x47830f
mov ecx, dword [ebp - 0x278]
sub ecx, 1
mov dword [ebp - 0x278], ecx
jmp 0x4782ae
mov edx, dword [ebp - 0x254]
push edx
mov eax, dword [ebp - 0x38]
push eax
push str.iSource___d__iTarget___d_ok
call fcn.0044eab0
add esp, 0xc
mov eax, dword [ebp - 0x26c]
add eax, dword [ebp - 0x264]
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x274], eax
mov eax, dword [ebp - 0x268]
add eax, dword [ebp - 0x260]
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x270], eax
lea ecx, [ebp - 0x274]
push ecx
mov edx, dword [0x588718]
push edx
mov eax, dword [ebp - 4]
push eax
call fcn.00477f90
mov dword [ebp - 0x254], eax
cmp dword [ebp - 0x254], 0xffffffff
je 0x4783fd
mov ecx, dword [ebp - 0x2c]
and ecx, 0xffff
movzx edx, cx
mov eax, dword [ebp - 0x28]
and eax, 0xffff
movzx ecx, ax
shl ecx, 0x10
or edx, ecx
push edx
mov edx, dword [ebp - 0x254]
push edx
push 0x100f
mov eax, dword [0x588718]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x310], eax
jmp 0x478407
mov dword [ebp - 0x310], 0
mov ecx, dword [ebp - 0x25c]
and ecx, 0xffff
movzx edx, cx
mov eax, dword [ebp - 0x258]
and eax, 0xffff
movzx ecx, ax
shl ecx, 0x10
or edx, ecx
push edx
mov edx, dword [ebp - 0x38]
push edx
push 0x100f
mov eax, dword [0x588718]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x254], 0xffffffff
je 0x478488
mov ecx, dword [ebp - 0x20]
and ecx, 0xffff
movzx edx, cx
mov eax, dword [ebp - 0x1c]
and eax, 0xffff
movzx ecx, ax
shl ecx, 0x10
or edx, ecx
push edx
mov edx, dword [ebp - 0x254]
push edx
push 0x100f
mov eax, dword [0x588718]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x314], eax
jmp 0x478492
mov dword [ebp - 0x314], 0
cmp dword [ebp - 0x40], 0
jne 0x4786f1
lea ecx, [ebp - 0x250]
push ecx
push 0xa
call fcn.00477ed0
movzx edx, al
test edx, edx
je 0x4786f1
lea eax, [ebp - 0x250]
push eax
mov ecx, dword [0x588718]
push ecx
mov edx, dword [ebp - 4]
push edx
call fcn.004766e0
mov dword [ebp - 0x27c], eax
cmp dword [ebp - 0x27c], 0xffffffff
je 0x4786f1
mov dword [ebp - 0x294], 0
xor eax, eax
mov dword [ebp - 0x290], eax
mov dword [ebp - 0x28c], eax
mov dword [ebp - 0x288], eax
mov dword [ebp - 0x284], 0
xor ecx, ecx
mov dword [ebp - 0x280], ecx
lea edx, [ebp - 0x294]
push edx
mov eax, dword [ebp - 0x27c]
push eax
mov ecx, dword [0x588718]
push ecx
mov edx, dword [ebp - 4]
push edx
call fcn.00476b50
movzx eax, al
test eax, eax
je 0x4786f1
lea ecx, [ebp - 0x284]
push ecx
mov edx, dword [ebp - 0x27c]
push edx
mov eax, dword [0x588718]
push eax
mov ecx, dword [ebp - 4]
push ecx
call fcn.004768f0
movzx edx, al
test edx, edx
je 0x4786f1
mov eax, dword [ebp - 0x34]
add eax, dword [ebp - 0x24]
cmp dword [ebp - 0x284], eax
jae 0x4786f1
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x290]
lea eax, [edx + ecx*2]
cmp eax, dword [ebp - 0x28]
jae 0x4785a7
mov ecx, dword [ebp - 0x280]
add ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x280], ecx
mov edx, dword [ebp - 0x3c]
push edx
push 0
lea eax, [ebp - 0x294]
push eax
call dword [sym.imp.USER32.dll_OffsetRect]
jmp 0x4785cb
mov ecx, dword [ebp - 0x280]
sub ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x280], ecx
mov edx, dword [ebp - 0x3c]
neg edx
push edx
push 0
lea eax, [ebp - 0x294]
push eax
call dword [sym.imp.USER32.dll_OffsetRect]
mov eax, dword [ebp - 0x294]
add eax, dword [ebp - 0x28c]
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x29c], eax
mov eax, dword [ebp - 0x290]
add eax, dword [ebp - 0x288]
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x298], eax
lea ecx, [ebp - 0x29c]
push ecx
mov edx, dword [0x588718]
push edx
mov eax, dword [ebp - 4]
push eax
call fcn.00477f90
mov dword [ebp - 0x27c], eax
cmp dword [ebp - 0x27c], 0xffffffff
je 0x47865c
mov ecx, dword [ebp - 0x2c]
and ecx, 0xffff
movzx edx, cx
mov eax, dword [ebp - 0x28]
and eax, 0xffff
movzx ecx, ax
shl ecx, 0x10
or edx, ecx
push edx
mov edx, dword [ebp - 0x27c]
push edx
push 0x100f
mov eax, dword [0x588718]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x318], eax
jmp 0x478666
mov dword [ebp - 0x318], 0
mov ecx, dword [ebp - 0x284]
and ecx, 0xffff
movzx edx, cx
mov eax, dword [ebp - 0x280]
and eax, 0xffff
movzx ecx, ax
shl ecx, 0x10
or edx, ecx
push edx
mov edx, dword [ebp - 0x38]
push edx
push 0x100f
mov eax, dword [0x588718]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x27c], 0xffffffff
je 0x4786e7
mov ecx, dword [ebp - 0x20]
and ecx, 0xffff
movzx edx, cx
mov eax, dword [ebp - 0x1c]
and eax, 0xffff
movzx ecx, ax
shl ecx, 0x10
or edx, ecx
push edx
mov edx, dword [ebp - 0x27c]
push edx
push 0x100f
mov eax, dword [0x588718]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x31c], eax
jmp 0x4786f1
mov dword [ebp - 0x31c], 0
cmp dword [ebp - 0x40], 0
jne 0x47889f
call dword [sym.imp.KERNEL32.dll_GetVersion]
mov dword [ebp - 0x2a4], eax
mov ecx, dword [ebp - 0x2a4]
and ecx, 0xffff
movzx edx, cx
and edx, 0xff
movzx eax, dl
mov dword [ebp - 0x2a0], eax
mov ecx, dword [ebp - 0x2a4]
and ecx, 0xffff
movzx edx, cx
shr edx, 8
and edx, 0xff
movzx eax, dl
mov dword [ebp - 0x2a8], eax
mov ecx, dword [ebp - 0x2a8]
and ecx, 0xff
movzx edx, cl
mov eax, dword [ebp - 0x2a0]
and eax, 0xff
movzx ecx, al
shl ecx, 8
or edx, ecx
movzx edx, dx
cmp edx, 0x600
jg 0x47889f
lea eax, [ebp - 0x250]
push eax
push 1
call fcn.00477ed0
movzx ecx, al
test ecx, ecx
je 0x47889f
lea edx, [ebp - 0x250]
push edx
mov eax, dword [0x588718]
push eax
mov ecx, dword [ebp - 4]
push ecx
call fcn.004766e0
mov dword [ebp - 0x2ac], eax
cmp dword [ebp - 0x2ac], 0xffffffff
je 0x47889f
mov dword [ebp - 0x2b4], 0
xor edx, edx
mov dword [ebp - 0x2b0], edx
lea eax, [ebp - 0x2b4]
push eax
mov ecx, dword [ebp - 0x2ac]
push ecx
mov edx, dword [0x588718]
push edx
mov eax, dword [ebp - 4]
push eax
call fcn.004768f0
movzx ecx, al
test ecx, ecx
je 0x47889f
mov edx, dword [ebp - 0x2c]
and edx, 0xffff
movzx eax, dx
mov ecx, dword [ebp - 0x28]
and ecx, 0xffff
movzx edx, cx
shl edx, 0x10
or eax, edx
push eax
mov eax, dword [ebp - 0x2ac]
push eax
push 0x100f
mov ecx, dword [0x588718]
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov edx, dword [ebp - 0x2b4]
and edx, 0xffff
movzx eax, dx
mov ecx, dword [ebp - 0x2b0]
and ecx, 0xffff
movzx edx, cx
shl edx, 0x10
or eax, edx
push eax
mov eax, dword [ebp - 0x38]
push eax
push 0x100f
mov ecx, dword [0x588718]
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x40], eax
mov edx, dword [ebp - 0x20]
and edx, 0xffff
movzx eax, dx
mov ecx, dword [ebp - 0x1c]
and ecx, 0xffff
movzx edx, cx
shl edx, 0x10
or eax, edx
push eax
mov eax, dword [ebp - 0x2ac]
push eax
push 0x100f
mov ecx, dword [0x588718]
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [ebp - 0x40], 0
jne 0x478acf
lea edx, [ebp - 0x250]
push edx
push 0xa
call fcn.00477ed0
movzx eax, al
test eax, eax
je 0x478acf
lea ecx, [ebp - 0x250]
push ecx
mov edx, dword [0x588718]
push edx
mov eax, dword [ebp - 4]
push eax
call fcn.004766e0
mov dword [ebp - 0x2b8], eax
cmp dword [ebp - 0x2b8], 0xffffffff
je 0x478acf
mov dword [ebp - 0x2d0], 0
xor ecx, ecx
mov dword [ebp - 0x2cc], ecx
mov dword [ebp - 0x2c8], ecx
mov dword [ebp - 0x2c4], ecx
mov dword [ebp - 0x2c0], 0
xor edx, edx
mov dword [ebp - 0x2bc], edx
lea eax, [ebp - 0x2d0]
push eax
mov ecx, dword [ebp - 0x2b8]
push ecx
mov edx, dword [0x588718]
push edx
mov eax, dword [ebp - 4]
push eax
call fcn.00476b50
movzx ecx, al
test ecx, ecx
je 0x478acf
lea edx, [ebp - 0x2c0]
push edx
mov eax, dword [ebp - 0x2b8]
push eax
mov ecx, dword [0x588718]
push ecx
mov edx, dword [ebp - 4]
push edx
call fcn.004768f0
movzx eax, al
test eax, eax
je 0x478acf
mov ecx, dword [ebp - 0x34]
add ecx, dword [ebp - 0x24]
cmp dword [ebp - 0x2c0], ecx
jae 0x478acf
mov edx, dword [ebp - 0x2bc]
sub edx, dword [ebp - 0x3c]
mov dword [ebp - 0x2bc], edx
mov eax, dword [ebp - 0x3c]
neg eax
push eax
push 0
lea ecx, [ebp - 0x2d0]
push ecx
call dword [sym.imp.USER32.dll_OffsetRect]
mov eax, dword [ebp - 0x2d0]
add eax, dword [ebp - 0x2c8]
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2d8], eax
mov eax, dword [ebp - 0x2cc]
add eax, dword [ebp - 0x2c4]
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x2d4], eax
lea edx, [ebp - 0x2d8]
push edx
mov eax, dword [0x588718]
push eax
mov ecx, dword [ebp - 4]
push ecx
call fcn.00477f90
mov dword [ebp - 0x2b8], eax
cmp dword [ebp - 0x2b8], 0xffffffff
je 0x478a36
mov edx, dword [ebp - 0x2c]
and edx, 0xffff
movzx eax, dx
mov ecx, dword [ebp - 0x28]
and ecx, 0xffff
movzx edx, cx
shl edx, 0x10
or eax, edx
push eax
mov eax, dword [ebp - 0x2b8]
push eax
push 0x100f
mov ecx, dword [0x588718]
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x320], eax
jmp 0x478a40
mov dword [ebp - 0x320], 0
mov edx, dword [ebp - 0x2c0]
and edx, 0xffff
movzx eax, dx
mov ecx, dword [ebp - 0x2bc]
and ecx, 0xffff
movzx edx, cx
shl edx, 0x10
or eax, edx
push eax
mov eax, dword [ebp - 0x38]
push eax
push 0x100f
mov ecx, dword [0x588718]
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x2b8], 0xffffffff
je 0x478ac5
mov edx, dword [ebp - 0x20]
and edx, 0xffff
movzx eax, dx
mov ecx, dword [ebp - 0x1c]
and ecx, 0xffff
movzx edx, cx
shl edx, 0x10
or eax, edx
push eax
mov eax, dword [ebp - 0x2b8]
push eax
push 0x100f
mov ecx, dword [0x588718]
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x324], eax
jmp 0x478acf
mov dword [ebp - 0x324], 0
cmp dword [ebp - 0x40], 0
jne 0x478d47
mov edx, dword [ebp - 0x24]
shr edx, 1
add edx, dword [ebp - 0x34]
mov dword [ebp - 0x2e0], edx
mov dword [ebp - 0x2dc], 0
jmp 0x478b02
mov eax, dword [ebp - 0x2dc]
add eax, 1
mov dword [ebp - 0x2dc], eax
cmp dword [ebp - 0x40], 0
jne 0x478d47
mov ecx, dword [ebp - 0x2dc]
cmp ecx, dword [ebp - 0x28]
jge 0x478d47
lea edx, [ebp - 0x2e0]
push edx
mov eax, dword [0x588718]
push eax
mov ecx, dword [ebp - 4]
push ecx
call fcn.00477f90
mov dword [ebp - 0x2e4], eax
cmp dword [ebp - 0x2e4], 0xffffffff
je 0x478d42
mov dword [ebp - 0x2fc], 0
xor edx, edx
mov dword [ebp - 0x2f8], edx
mov dword [ebp - 0x2f4], edx
mov dword [ebp - 0x2f0], edx
mov dword [ebp - 0x2ec], 0
xor eax, eax
mov dword [ebp - 0x2e8], eax
lea ecx, [ebp - 0x2fc]
push ecx
mov edx, dword [ebp - 0x2e4]
push edx
mov eax, dword [0x588718]
push eax
mov ecx, dword [ebp - 4]
push ecx
call fcn.00476b50
movzx edx, al
test edx, edx
je 0x478d42
lea eax, [ebp - 0x2ec]
push eax
mov ecx, dword [ebp - 0x2e4]
push ecx
mov edx, dword [0x588718]
push edx
mov eax, dword [ebp - 4]
push eax
call fcn.004768f0
movzx ecx, al
test ecx, ecx
je 0x478d42
mov edx, dword [ebp - 0x3c]
shl edx, 2
push edx
push 0
lea eax, [ebp - 0x2fc]
push eax
call dword [sym.imp.USER32.dll_OffsetRect]
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x2e8]
lea eax, [edx + ecx*4]
mov dword [ebp - 0x2e8], eax
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x2dc]
lea eax, [edx + ecx*4]
mov dword [ebp - 0x2dc], eax
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x2f8]
lea eax, [edx + ecx*2]
cmp eax, dword [ebp - 0x28]
jbe 0x478c45
mov ecx, dword [ebp - 0x3c]
neg ecx
push ecx
push 0
lea edx, [ebp - 0x2fc]
push edx
call dword [sym.imp.USER32.dll_OffsetRect]
mov eax, dword [ebp - 0x2e8]
sub eax, dword [ebp - 0x3c]
mov dword [ebp - 0x2e8], eax
mov ecx, dword [ebp - 0x2dc]
sub ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x2dc], ecx
jmp 0x478bff
lea edx, [ebp - 0x2e0]
push edx
mov eax, dword [0x588718]
push eax
mov ecx, dword [ebp - 4]
push ecx
call fcn.00477f90
mov dword [ebp - 0x300], eax
cmp dword [ebp - 0x300], 0xffffffff
je 0x478ca9
mov edx, dword [ebp - 0x2c]
and edx, 0xffff
movzx eax, dx
mov ecx, dword [ebp - 0x28]
and ecx, 0xffff
movzx edx, cx
shl edx, 0x10
or eax, edx
push eax
mov eax, dword [ebp - 0x300]
push eax
push 0x100f
mov ecx, dword [0x588718]
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x328], eax
jmp 0x478cb3
mov dword [ebp - 0x328], 0
mov edx, dword [ebp - 0x2ec]
and edx, 0xffff
movzx eax, dx
mov ecx, dword [ebp - 0x2e8]
and ecx, 0xffff
movzx edx, cx
shl edx, 0x10
or eax, edx
push eax
mov eax, dword [ebp - 0x38]
push eax
push 0x100f
mov ecx, dword [0x588718]
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x300], 0xffffffff
je 0x478d38
mov edx, dword [ebp - 0x20]
and edx, 0xffff
movzx eax, dx
mov ecx, dword [ebp - 0x1c]
and ecx, 0xffff
movzx edx, cx
shl edx, 0x10
or eax, edx
push eax
mov eax, dword [ebp - 0x300]
push eax
push 0x100f
mov ecx, dword [0x588718]
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x32c], eax
jmp 0x478d42
mov dword [ebp - 0x32c], 0
jmp 0x478af3
cmp dword [ebp - 0x40], 0
jne 0x478e56
push 0x55abf4
mov edx, dword [0x588718]
push edx
mov eax, dword [ebp - 4]
push eax
call fcn.004766e0
mov dword [ebp - 0x304], eax
cmp dword [ebp - 0x304], 0xffffffff
je 0x478e56
mov dword [ebp - 0x30c], 0
xor ecx, ecx
mov dword [ebp - 0x308], ecx
lea edx, [ebp - 0x30c]
push edx
mov eax, dword [ebp - 0x304]
push eax
mov ecx, dword [0x588718]
push ecx
mov edx, dword [ebp - 4]
push edx
call fcn.004768f0
movzx eax, al
test eax, eax
je 0x478e56
mov ecx, dword [ebp - 0x2c]
and ecx, 0xffff
movzx edx, cx
mov eax, dword [ebp - 0x28]
and eax, 0xffff
movzx ecx, ax
shl ecx, 0x10
or edx, ecx
push edx
mov edx, dword [ebp - 0x304]
push edx
push 0x100f
mov eax, dword [0x588718]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp - 0x30c]
and ecx, 0xffff
movzx edx, cx
mov eax, dword [ebp - 0x308]
and eax, 0xffff
movzx ecx, ax
shl ecx, 0x10
or edx, ecx
push edx
mov edx, dword [ebp - 0x38]
push edx
push 0x100f
mov eax, dword [0x588718]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp - 0x20]
and ecx, 0xffff
movzx edx, cx
mov eax, dword [ebp - 0x1c]
and eax, 0xffff
movzx ecx, ax
shl ecx, 0x10
or edx, ecx
push edx
mov edx, dword [ebp - 0x304]
push edx
push 0x100f
mov eax, dword [0x588718]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, dword [ebp - 0x10]
push edx
push 0
push 0x1036
mov eax, dword [0x588718]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp - 0x44]
xor ecx, ebp
call fcn.00486c08
mov esp, ebp
pop ebp
ret