Function at 0x76311b95
Capabilities:
Read file via mapping

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x14
push esi
mov esi, dword [ebp + 8]
push edi
mov edi, dword [esi]
xor eax, eax
push edi
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 4], eax
mov dword [ebp + 8], edi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x76311bec
push ebx
push edi
call dword [sym.imp.USER32.dll_IsWindowUnicode]
mov ebx, eax
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 8]
neg ebx
sbb ebx, ebx
inc ebx
test byte [esi + 0x14c], 2
mov esi, dword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov dword [ebp - 8], eax
mov edi, 0x280
je 0x763119d8
test ebx, ebx
push 0
push dword [ebp + 0xc]
push eax
je 0x7631196a
call fcn.76310d60
test eax, eax
je 0x763119d8
push eax
push 0x2042
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
test eax, eax
mov dword [ebp - 0xc], eax
je 0x763119d8
push eax
call dword [sym.imp.KERNEL32.dll_GlobalLock]
test eax, eax
je 0x763119cf
push eax
push dword [ebp + 0xc]
push dword [ebp - 8]
call fcn.76310d60
push dword [ebp - 0xc]
mov dword [ebp - 0x10], 1
call esi
push dword [ebp - 0xc]
push 0x170
push edi
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendMessageA]
jmp 0x763119bb
call fcn.76310b3d
test eax, eax
je 0x763119d8
push eax
push 0x2042
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
test eax, eax
mov dword [ebp - 0xc], eax
je 0x763119d8
push eax
call dword [sym.imp.KERNEL32.dll_GlobalLock]
test eax, eax
je 0x763119cf
push eax
push dword [ebp + 0xc]
push dword [ebp - 8]
call fcn.76310b3d
push dword [ebp - 0xc]
mov dword [ebp - 0x10], 1
call esi
push dword [ebp - 0xc]
push 0x170
push edi
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
je 0x763119cf
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_GlobalFree]
xor eax, eax
jmp 0x76311beb
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_GlobalFree]
mov eax, dword [ebp - 8]
test ah, 8
je 0x76311b9e
test ah, 2
je 0x76311aae
test ebx, ebx
push 0
push dword [ebp + 0xc]
push eax
je 0x76311a4b
call fcn.7631117d
test eax, eax
je 0x76311aae
push eax
push 0x2042
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
test eax, eax
mov dword [ebp - 0xc], eax
je 0x76311aae
push eax
call dword [sym.imp.KERNEL32.dll_GlobalLock]
test eax, eax
je 0x76311aa5
push eax
push dword [ebp + 0xc]
push dword [ebp - 8]
call fcn.7631117d
push dword [ebp - 0xc]
call esi
push dword [ebp - 0xc]
push 0x180
push edi
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendMessageA]
jmp 0x76311a9d
call fcn.7631102d
test eax, eax
je 0x76311b0c
push eax
push 0x2042
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
test eax, eax
mov dword [ebp - 0xc], eax
je 0x76311b0c
push eax
call dword [sym.imp.KERNEL32.dll_GlobalLock]
test eax, eax
je 0x76311aa5
push eax
push dword [ebp + 0xc]
push dword [ebp - 8]
call fcn.7631102d
push dword [ebp - 0xc]
call esi
push dword [ebp - 0xc]
push 0x180
push edi
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
jne 0x76311b60
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_GlobalFree]
test ebx, ebx
je 0x76311b0c
push 0
push dword [ebp + 0xc]
call fcn.76311389
test eax, eax
je 0x763119c8
push eax
push 0x2042
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
test eax, eax
mov dword [ebp - 0xc], eax
je 0x76311b7b
push eax
call dword [sym.imp.KERNEL32.dll_GlobalLock]
test eax, eax
je 0x76311b72
push eax
push dword [ebp + 0xc]
call fcn.76311389
push dword [ebp - 0xc]
call esi
push dword [ebp - 0xc]
push 0x140
push edi
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendMessageA]
jmp 0x76311b5c
push 0
push dword [ebp + 0xc]
call fcn.76311341
test eax, eax
je 0x763119c8
push eax
push 0x2042
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
test eax, eax
mov dword [ebp - 0xc], eax
je 0x76311b8c
push eax
call dword [sym.imp.KERNEL32.dll_GlobalLock]
test eax, eax
je 0x76311b72
push eax
push dword [ebp + 0xc]
call fcn.76311341
push dword [ebp - 0xc]
call esi
push dword [ebp - 0xc]
push 0x140
push edi
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
je 0x76311b72
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_GlobalFree]
mov dword [ebp - 4], 1
jmp 0x76311bba
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_GlobalFree]
test ebx, ebx
je 0x76311b8c
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.76311453
jmp 0x76311b97
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.763113df
mov dword [ebp - 4], 1
cmp dword [ebp - 0x10], 0
jne 0x76311be8
cmp dword [ebp - 4], 0
jne 0x76311bc6
mov esi, dword [ebp + 0x10]
mov edi, dword [ebp + 0x14]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x14], 1
cmp dword [ebp - 0x10], 0
jne 0x76311be8
cmp dword [ebp - 4], 0
je 0x76311be8
mov eax, dword [ebp - 8]
test al, 8
je 0x76311be8
mov edx, dword [ebp + 0x10]
mov esi, dword [edx]
mov ecx, dword [ebp + 0x14]
mov dword [ecx], esi
mov edx, dword [edx + 4]
and eax, 0xffffe1ff
inc dword [ebp - 0x14]
mov dword [ecx + 4], edx
mov dword [ecx + 8], eax
mov eax, dword [ebp - 0x14]
pop ebx
pop edi
pop esi
leave
ret 0x10