Function at 0x428870
Capabilities:
Get system information on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x74
lea eax, [esp + 0x1c]
push ebx
push esi
push edi
push 0
push 0x58
push eax
push 0x50
mov esi, ecx
call dword [sym.imp.ntdll.dll_NtQuerySystemInformation]
test eax, eax
js 0x4290e8
mov eax, dword [esp + 0x78]
mov ecx, 0x1000
add eax, dword [esp + 0x74]
add eax, dword [esp + 0x70]
add eax, dword [esp + 0x6c]
add eax, dword [esp + 0x68]
add eax, dword [esp + 0x64]
add eax, dword [esp + 0x60]
add eax, dword [esp + 0x5c]
mov edi, dword [esp + 0x58]
add edi, dword [esp + 0x54]
add edi, dword [esp + 0x50]
add edi, dword [esp + 0x4c]
add edi, dword [esp + 0x48]
add edi, dword [esp + 0x44]
add edi, dword [esp + 0x40]
add edi, dword [esp + 0x3c]
mov dword [esp + 0xc], eax
mov al, byte [0x5484ac]
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x28]
mul ecx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x534
push esi
mov ebx, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x428932
push ebx
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov al, byte [0x5484ac]
mov ecx, 0x1000
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x2c]
mul ecx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x535
push esi
mov ebx, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x428989
push ebx
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov al, byte [0x5484ac]
mov ecx, 0x1000
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x30]
mul ecx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x536
push esi
mov ebx, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x4289e0
push ebx
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov al, byte [0x5484ac]
mov ecx, 0x1000
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x34]
mul ecx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x537
push esi
mov ebx, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x428a37
push ebx
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov al, byte [0x5484ac]
mov ecx, 0x1000
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x38]
mul ecx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x546
push esi
mov ebx, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x428a8e
push ebx
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov cl, byte [0x5484ac]
mov eax, edi
mov ebx, 0x1000
mov dword [esp + 0x10], 0x10c
mul ebx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov byte [esp + 0x26], cl
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x539
push esi
mov edi, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x428ae4
push edi
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov al, byte [0x5484ac]
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x3c]
mul ebx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x542
push esi
mov edi, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x428b36
push edi
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov al, byte [0x5484ac]
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x40]
mul ebx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x543
push esi
mov edi, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x428b88
push edi
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov al, byte [0x5484ac]
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x44]
mul ebx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x544
push esi
mov edi, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x428bda
push edi
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov al, byte [0x5484ac]
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x48]
mul ebx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x545
push esi
mov edi, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x428c2c
push edi
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov al, byte [0x5484ac]
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x4c]
mul ebx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x554
push esi
mov edi, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x428c7e
push edi
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov al, byte [0x5484ac]
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x50]
mul ebx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x555
push esi
mov edi, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x428cd0
push edi
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov al, byte [0x5484ac]
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x54]
mul ebx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x556
push esi
mov edi, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x428d22
push edi
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov al, byte [0x5484ac]
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x58]
mul ebx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x557
push esi
mov edi, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x428d74
push edi
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esp + 0xc]
mov cl, byte [0x5484ac]
mul ebx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov byte [esp + 0x26], cl
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x547
push esi
mov edi, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x428dc7
push edi
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov al, byte [0x5484ac]
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x5c]
mul ebx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x548
push esi
mov edi, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x428e19
push edi
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov al, byte [0x5484ac]
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x60]
mul ebx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x549
push esi
mov edi, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x428e6b
push edi
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov al, byte [0x5484ac]
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x64]
mul ebx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x54a
push esi
mov edi, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x428ebd
push edi
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov al, byte [0x5484ac]
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x68]
mul ebx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x54b
push esi
mov edi, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x428f0f
push edi
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov al, byte [0x5484ac]
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x6c]
mul ebx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x54c
push esi
mov edi, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x428f61
push edi
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov al, byte [0x5484ac]
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x70]
mul ebx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x54d
push esi
mov edi, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x428fb3
push edi
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov al, byte [0x5484ac]
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x74]
mul ebx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x54e
push esi
mov edi, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x429005
push edi
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov al, byte [0x5484ac]
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x78]
mul ebx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x54f
push esi
mov edi, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x429057
push edi
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [sym.ProcessHacker.exe_WindowsVersion], 0x3e
jb 0x4290bd
mov al, byte [0x5484ac]
mov byte [esp + 0x1a], al
mov eax, dword [esp + 0x7c]
mul ebx
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x14]
push 1
push eax
mov dword [esp + 0x1c], 0x10c
mov dword [esp + 0x30], edx
call sym.ProcessHacker.exe_PhFormat
push eax
call sym.ProcessHacker.exe_PhAutoDereferenceObject
push 0x55d
push esi
mov edi, dword [eax + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x4293e8
push edi
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x55d
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x4293e8
push 0x5291b0
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x534
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x429108
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x535
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x429128
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x536
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x429148
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x537
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x429168
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x55d
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x429188
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x546
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x4291a8
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x539
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x4291c8
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x542
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x4291e8
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x543
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x429208
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x544
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x429228
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x545
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x429248
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x554
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x429268
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x555
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x429288
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x556
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x4292a8
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x557
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x4292c8
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x547
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x4292e8
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x548
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x429308
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x549
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x429328
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x54a
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x429348
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x54b
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x429368
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x54c
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x429388
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x54d
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x4293a8
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x54e
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x4293c8
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x54f
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x4293e8
push 0x5254a4
push 0
push 0xc
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret