Function at 0x41e100
Capabilities:
Contain obfuscated stackstrings
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4fc1ce
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xf24
push ebx
push esi
push edi
mov edi, ecx
xor ebx, ebx
mov dword [ebp - 0x10], esp
push ebx
lea ecx, [ebp - 0xf30]
mov dword [ebp - 0x1c], edi
call fcn.0047bff0
mov eax, dword [edi + 0x6c]
mov cx, word [eax + 0x12a]
mov ax, word [eax + 0x128]
mov word [ebp - 0xf2e], cx
lea ecx, [ebp - 0x24]
mov word [ebp - 0xf30], ax
call sub.MFC42.DLL_AFX_EXCEPTION_LINK::AFX_EXCEPTION_LINK
mov dword [ebp - 4], ebx
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 1
call sub.MFC42.DLL_CString::CString_3
mov eax, dword [edi + 0x6c]
lea edx, [ebp - 0x14]
mov byte [ebp - 4], 2
mov ecx, dword [eax + 0x28]
push ecx
push str.F_DEV_ID_ld
push edx
call sub.MFC42.DLL_CString::Format
mov eax, dword [ebp - 0x14]
add esp, 0xc
mov ecx, edi
push eax
call fcn.0041ccc0
cmp eax, ebx
jne 0x41e1aa
mov ecx, dword [ebp + 8]
push 0xe2
call fcn.00456190
jmp 0x41e958
mov ecx, dword [edi + 0x74]
push ecx
lea ecx, [ebp - 0x304]
call fcn.004cafc0
mov edx, dword [edi + 0x6c]
lea ecx, [ebp - 0x2f8]
mov byte [ebp - 4], 3
mov eax, dword [edx + 0x28]
push eax
push str.F_DEV_ID_ld
push ecx
call sub.MFC42.DLL_CString::Format
add esp, 0xc
lea ecx, [ebp - 0x304]
push ebx
push ebx
push 0xffffffffffffffff
call sub.MFC42.DLL_CRecordset::Open
mov edx, dword [edi + 0x74]
lea ecx, [ebp - 0x1ac]
push edx
call fcn.004d0740
push str.F_STU_ID0
lea ecx, [ebp - 0x1a0]
mov byte [ebp - 4], 4
call fcn.004c8322
push ebx
push ebx
push 0xffffffffffffffff
lea ecx, [ebp - 0x1ac]
call sub.MFC42.DLL_CRecordset::Open
cmp dword [ebp - 0x23c], ebx
jne 0x41e2af
mov eax, dword [ebp - 0x1ec]
lea ecx, [ebp - 0x1a0]
push eax
push str.F_PAT_ID_ld
push ecx
call sub.MFC42.DLL_CString::Format
add esp, 0xc
lea ecx, [ebp - 0x1ac]
call sub.MFC42.DLL_CRecordset::Requery
cmp dword [ebp - 0xe4], ebx
jne 0x41e297
mov edx, dword [ebp - 0x94]
lea eax, [ebp - 0x14]
push edx
push str.DELETE_FROM_T_SERIES_WHERE_F_STU_ID_ld
push eax
call sub.MFC42.DLL_CString::Format
mov ecx, dword [ebp - 0x14]
add esp, 0xc
push ecx
mov ecx, dword [edi + 0x74]
call sub.MFC42.DLL_CDatabase::ExecuteSQL
lea ecx, [ebp - 0x1ac]
call sub.MFC42.DLL_CRecordset::Delete
mov edx, dword [ebp - 0x1ac]
push 1
push 1
lea ecx, [ebp - 0x1ac]
call dword [edx + 0x1c]
jmp 0x41e24b
mov eax, dword [ebp - 0x304]
push 1
push 1
lea ecx, [ebp - 0x304]
call dword [eax + 0x1c]
jmp 0x41e219
lea ecx, [ebp - 0x1ac]
call sub.MFC42.DLL_CRecordset::Close
lea ecx, [ebp - 0x304]
call sub.MFC42.DLL_CRecordset::Close
mov ecx, dword [edi + 0x6c]
lea eax, [ebp - 0x14]
mov edx, dword [ecx + 0x28]
push edx
push str.DELETE_FROM_T_PATIENT_WHERE_F_DEV_ID_ld
push eax
call sub.MFC42.DLL_CString::Format
mov ecx, dword [ebp - 0x14]
add esp, 0xc
push ecx
mov ecx, dword [edi + 0x74]
call sub.MFC42.DLL_CDatabase::ExecuteSQL
push ebx
push ebx
push 0xffffffffffffffff
lea ecx, [ebp - 0x304]
call sub.MFC42.DLL_CRecordset::Open
push ebx
push ebx
push 0xffffffffffffffff
lea ecx, [ebp - 0x1ac]
call sub.MFC42.DLL_CRecordset::Open
mov eax, dword [edi + 0x88]
mov ecx, dword [eax + 0x14]
cmp ebx, ecx
jae 0x41e99a
mov edx, ecx
cmp ebx, edx
jb 0x41e322
xor eax, eax
jmp 0x41e369
mov esi, dword [eax + 0xc]
test esi, esi
je 0x41e33e
mov ecx, dword [eax + 0x10]
inc ecx
cmp ecx, ebx
jne 0x41e33e
mov edx, dword [esi + 8]
mov dword [eax + 0x10], ecx
mov dword [eax + 0xc], edx
mov eax, edx
jmp 0x41e369
mov ecx, edx
shr ecx, 1
cmp ebx, ecx
jae 0x41e354
mov ecx, dword [eax + 4]
lea edx, [ebx + 1]
dec edx
je 0x41e361
mov ecx, dword [ecx + 8]
jmp 0x41e34c
mov ecx, dword [eax + 8]
sub edx, ebx
dec edx
je 0x41e361
mov ecx, dword [ecx + 4]
jmp 0x41e359
mov dword [eax + 0xc], ecx
mov dword [eax + 0x10], ebx
mov eax, ecx
mov esi, dword [eax]
test esi, esi
je 0x41e994
push 1
push esi
lea ecx, [ebp - 0xf30]
call fcn.0047cb80
test eax, eax
je 0x41e994
push esi
lea ecx, [ebp - 0xf30]
call fcn.0047c880
test eax, eax
je 0x41e994
lea ecx, [ebp - 0xf30]
call fcn.0047cd90
mov ecx, 0x7e
mov esi, eax
lea edi, [ebp - 0x4fc]
rep movsd dword es:[edi], dword [esi]
lea ecx, [ebp - 0xf30]
call fcn.0047cda0
mov ecx, 0xc7
mov esi, eax
lea edi, [ebp - 0x818]
rep movsd dword es:[edi], dword [esi]
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::CString_3
lea edx, [ebp - 0x810]
lea ecx, [ebp - 0x18]
push edx
mov byte [ebp - 4], 5
call fcn.004c8322
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::TrimRight
mov edi, dword [ebp - 0x18]
mov eax, dword [edi - 8]
test eax, eax
je 0x41e421
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [ebp - 0x4f4]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [ebp - 0x1c]
lea eax, [ebp - 0x4fc]
push eax
mov ecx, dword [esi + 0x6c]
mov edx, dword [ecx + 0x28]
lea ecx, [ebp - 0x304]
mov dword [ebp - 0x4f8], edx
call fcn.004c92e0
test eax, eax
jne 0x41e69a
mov ecx, dword [ebp - 0x1f0]
push ecx
push 0x2a9
push str.E:Prg40QueueManagerProCmdDICOMDevList.cpp
push eax
mov ecx, 0x54b128
call fcn.004966c0
lea ecx, [ebp - 0x1f0]
call sub.MFC42.DLL_CString::Empty
mov ecx, dword [ebp + 8]
push 0x104
call fcn.00456190
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 4
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x1e
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x1d
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0x1c
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x1b
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x1a
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x19
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x18
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x17
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x16
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x15
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x14
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0x13
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0x12
call sub.MFC42.DLL_CString::CString
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x60]
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x10
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0xf
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0xe
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0xd
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0xc
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0xb
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0xa
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 9
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 8
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 7
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 6
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 4], 3
call fcn.004c9210
lea ecx, [ebp - 0x1b0]
mov byte [ebp - 4], 0x2c
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1b4]
mov byte [ebp - 4], 0x2b
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 4], 0x2a
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 4], 0x29
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1c0]
mov byte [ebp - 4], 0x28
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1c4]
mov byte [ebp - 4], 0x27
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1c8]
mov byte [ebp - 4], 0x26
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 4], 0x25
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1d0]
mov byte [ebp - 4], 0x24
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1d4]
mov byte [ebp - 4], 0x23
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1d8]
mov byte [ebp - 4], 0x22
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1dc]
mov byte [ebp - 4], 0x21
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1e0]
mov byte [ebp - 4], 0x20
call sub.MFC42.DLL_CString::CString
mov byte [ebp - 4], 0x1f
jmp 0x41e93e
mov edx, dword [ebp - 0x4fc]
mov eax, dword [esi + 0x6c]
mov dword [ebp - 0x818], edx
mov edi, dword [eax + 0x114]
mov eax, dword [edi - 8]
test eax, eax
je 0x41e6d9
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [ebp - 0x6f2]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0x818]
push ecx
lea ecx, [ebp - 0x1ac]
call fcn.004c92e0
test eax, eax
jne 0x41e985
mov edx, dword [ebp - 0x98]
mov ecx, 0x54b128
push edx
push 0x2b8
push str.E:Prg40QueueManagerProCmdDICOMDevList.cpp
push eax
call fcn.004966c0
lea ecx, [ebp - 0x98]
call sub.MFC42.DLL_CString::Empty
mov ecx, dword [ebp + 8]
push 0x104
call fcn.00456190
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 4
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x45
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x44
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0x43
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x42
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x41
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x40
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x3f
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x3e
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x3d
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x3c
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x3b
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0x3a
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0x39
call sub.MFC42.DLL_CString::CString
mov byte [ebp - 4], 0x38
lea ecx, [ebp - 0x60]
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x37
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x36
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x35
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x34
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x33
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0x32
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x31
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x30
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0x2f
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x2e
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 0x2d
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 4], 3
call fcn.004c9210
lea ecx, [ebp - 0x1b0]
mov byte [ebp - 4], 0x53
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1b4]
mov byte [ebp - 4], 0x52
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 4], 0x51
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 4], 0x50
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1c0]
mov byte [ebp - 4], 0x4f
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1c4]
mov byte [ebp - 4], 0x4e
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1c8]
mov byte [ebp - 4], 0x4d
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 4], 0x4c
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1d0]
mov byte [ebp - 4], 0x4b
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1d4]
mov byte [ebp - 4], 0x4a
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1d8]
mov byte [ebp - 4], 0x49
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1dc]
mov byte [ebp - 4], 0x48
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1e0]
mov byte [ebp - 4], 0x47
call sub.MFC42.DLL_CString::CString
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x1e4]
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x304]
mov byte [ebp - 4], 2
call fcn.004c9210
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 1
call sub.MFC42.DLL_CString::CString
mov dword [ebp - 4], 0xffffffff
call sub.MFC42.DLL_AfxTryCleanup
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 4
call sub.MFC42.DLL_CString::CString
mov edi, dword [ebp - 0x1c]
inc ebx
jmp 0x41e307
lea ecx, [ebp - 0x1ac]
call sub.MFC42.DLL_CRecordset::Close
lea ecx, [ebp - 0x304]
call sub.MFC42.DLL_CRecordset::Close
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x6c
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x6b
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0x6a
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x69
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x68
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0x67
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x66
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x65
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x64
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x63
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x62
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0x61
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0x60
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x5f
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x5e
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x5d
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x5c
call sub.MFC42.DLL_CString::CString
mov byte [ebp - 4], 0x5b
lea ecx, [ebp - 0x70]
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 0x5a
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0x59
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x58
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x57
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0x56
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x55
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 0x54
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 4], 3
call fcn.004c9210
lea ecx, [ebp - 0x304]
mov byte [ebp - 4], 2
call fcn.00403910
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 1
call sub.MFC42.DLL_CString::CString
mov dword [ebp - 4], 0xffffffff
call sub.MFC42.DLL_AfxTryCleanup
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov eax, 1
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 4