Function at 0x44de40
Capabilities:
Open clipboard
Read file via mapping
Write clipboard data

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x824
mov eax, dword [0x542040]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, edx
push edi
mov edi, ecx
cmp esi, 0x1200
jg 0x44e18d
je case.0x44e1ae.4609
lea eax, [esi - 0x1100]
cmp eax, 9
ja case.0x44e2c7.4873
jmp dword [eax*4 + 0x44e2fc]
mov eax, dword [0x549e18]
xor ebx, ebx
push eax
push eax
push str.EDC4A979__d_404A__X_6BB9CDCE5510
cmp esi, 0x1100
lea eax, [ebp - 0xd8]
push 0x64
setne bl
push eax
add ebx, 0x100a
call fcn.00407ae0
add esp, 0x14
lea eax, [ebp - 0xd8]
push eax
push 0
push 0xf001f
call dword [sym.imp.KERNEL32.dll_OpenFileMappingW]
mov edi, eax
test edi, edi
je case.default.0x44e20d
push 0
push 0
push 0
push 6
push edi
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov esi, eax
test esi, esi
je 0x44defd
mov eax, dword [esi + 0x18]
test eax, eax
je 0x44def6
push 0
push 0
push ebx
push eax
call dword [sym.imp.USER32.dll_PostThreadMessageW]
push esi
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov al, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004dadd7
mov esp, ebp
pop ebp
ret
push dword [0x549f9c]
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x44df46
push dword [0x549f9c]
call dword [sym.imp.USER32.dll_SetForegroundWindow]
mov al, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004dadd7
mov esp, ebp
pop ebp
ret
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push 0x804
mov esi, eax
lea eax, [ebp - 0x80e]
push 0
push eax
call fcn.004ded20
movq xmm0, qword [0x520c94]
add esp, 0xc
xor eax, eax
mov dword [ebp - 0x820], 0x14cc0000
mov dword [ebp - 0x818], eax
mov dword [ebp - 0x814], eax
push edi
mov word [ebp - 0x810], ax
mov ax, word [0x520c9c]
push 0x4531d0
mov word [ebp - 0x802], ax
lea eax, [ebp - 0x820]
push edi
push eax
push esi
mov dword [ebp - 0x81c], 0x10101
movq qword [ebp - 0x80a], xmm0
call dword [sym.imp.USER32.dll_DialogBoxIndirectParamW]
mov al, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004dadd7
mov esp, ebp
pop ebp
ret
mov eax, dword [0x548f40]
cmp eax, dword [0x548f44]
je 0x44dfe6
mov dword [0x548f44], eax
mov esi, dword [0x548f38]
xor ecx, ecx
mov eax, dword [0x548f30]
test esi, esi
je 0x44e018
mov edx, dword [eax + ecx*4]
test edx, edx
je 0x44e013
lea eax, [edx + 8]
mov dword [edx], eax
xor edx, edx
mov word [eax], dx
mov esi, dword [0x548f38]
mov eax, dword [0x548f30]
inc ecx
cmp ecx, esi
jb 0x44dff7
test eax, eax
je 0x44e023
mov eax, dword [eax]
mov dword [0x548f2c], eax
push 3
push 0
push 0x102f
push dword [0x549e34]
call dword [sym.imp.USER32.dll_SendMessageW]
mov al, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004dadd7
mov esp, ebp
pop ebp
ret
push 3
push 0xffffffffffffffff
push 0x100c
push dword [0x549e34]
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, eax
test esi, esi
js case.default.0x44e20d
mov ecx, dword [0x548f44]
mov eax, 0x38e38e39
sub ecx, dword [0x548f40]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jge case.default.0x44e20d
mov ecx, esi
call fcn.0044fab0
mov al, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004dadd7
mov esp, ebp
pop ebp
ret
call fcn.0044ea70
mov al, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004dadd7
mov esp, ebp
pop ebp
ret
call fcn.0044eab0
mov al, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004dadd7
mov esp, ebp
pop ebp
ret
cmp dword [0x548fec], 0
je 0x44e0f7
cmp dword [0x548ff0], 7
mov esi, 0x548fdc
cmova esi, dword [0x548fdc]
jmp 0x44e0fc
mov esi, 0x51b3ac
push 3
push 0xffffffffffffffff
push 0x100c
push dword [0x549e34]
call dword [sym.imp.USER32.dll_SendMessageW]
push 1
mov ecx, esi
lea edx, [eax + 1]
call fcn.0044e830
add esp, 4
mov al, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004dadd7
mov esp, ebp
pop ebp
ret
cmp dword [0x548fec], 0
je 0x44e151
cmp dword [0x548ff0], 7
mov esi, 0x548fdc
cmova esi, dword [0x548fdc]
jmp 0x44e156
mov esi, 0x51b3ac
push 3
push 0xffffffffffffffff
push 0x100c
push dword [0x549e34]
call dword [sym.imp.USER32.dll_SendMessageW]
push 0
mov ecx, esi
lea edx, [eax - 1]
call fcn.0044e830
add esp, 4
mov al, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004dadd7
mov esp, ebp
pop ebp
ret
cmp esi, 0x1300
jg 0x44e2b5
je case.0x44e2c7.4865
lea eax, [esi - 0x1201]
cmp eax, 4
ja case.0x44e2c7.4873
jmp dword [eax*4 + 0x44e324]
push 3
push 0xffffffffffffffff
push 0x100c
push dword [0x549e34]
call dword [sym.imp.USER32.dll_SendMessageW]
mov edi, eax
test edi, edi
js case.default.0x44e20d
mov ecx, dword [0x548f44]
mov eax, 0x38e38e39
mov ebx, dword [0x548f40]
sub ecx, ebx
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jge case.default.0x44e20d
add esi, 0xffffee00
lea eax, [edi + edi*8]
cmp esi, 5
ja case.default.0x44e20d
jmp dword [esi*4 + 0x44e338]
mov esi, dword [ebx + eax*8 + 4]
jmp 0x44e236
mov esi, dword [ebx + eax*8 + 8]
jmp 0x44e236
mov esi, dword [ebx + eax*8 + 0xc]
jmp 0x44e236
mov esi, dword [ebx + eax*8 + 0x10]
jmp 0x44e236
mov esi, dword [ebx + eax*8 + 0x14]
jmp 0x44e236
mov esi, dword [ebx + eax*8 + 0x18]
test esi, esi
je case.default.0x44e20d
mov ecx, esi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x44e243
sub ecx, edx
sar ecx, 1
lea ebx, [ecx*2 + 2]
push ebx
push 0x42
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov edi, eax
test edi, edi
je case.default.0x44e20d
push edi
call dword [sym.imp.KERNEL32.dll_GlobalLock]
test eax, eax
je case.default.0x44e20d
push ebx
push esi
push eax
call fcn.004def30
add esp, 0xc
push edi
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
push 0
call dword [sym.imp.USER32.dll_OpenClipboard]
call dword [sym.imp.USER32.dll_EmptyClipboard]
push edi
push 0xd
call dword [sym.imp.USER32.dll_SetClipboardData]
call dword [sym.imp.USER32.dll_CloseClipboard]
mov al, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004dadd7
mov esp, ebp
pop ebp
ret
lea eax, [esi - 0x1301]
cmp eax, 0x27
ja case.0x44e2c7.4873
movzx eax, byte [eax + 0x44e358]
jmp dword [eax*4 + 0x44e350]
call fcn.0044e380
mov al, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004dadd7
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
xor al, al
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004dadd7
mov esp, ebp
pop ebp
ret