//00453998
//procedure sub_00453998(?:?; ?:?; ?:?);
//begin
{*
00453998 push ebp
00453999 mov ebp,esp
0045399B push ecx
0045399C push ebx
0045399D push esi
0045399E push edi
0045399F mov edi,ecx
004539A1 mov ebx,edx
004539A3 mov esi,eax
004539A5 cmp byte ptr [ebx+46],0
>004539A9 jne 00453A10
004539AB cmp byte ptr [ebp+8],0
>004539AF je 004539B6
004539B1 or eax,0FFFFFFFF
>004539B4 jmp 004539B8
004539B6 xor eax,eax
004539B8 push eax
004539B9 movzx eax,word ptr [ebx+24]
004539BD dec eax
004539BE mov ecx,eax
004539C0 add ecx,ecx
004539C2 add ecx,dword ptr [esi+0B8]; TGDSRecordSet.?fB8:dword
004539C8 mov edx,edi
004539CA mov eax,[013E2890]
004539CF call Marshal.WriteInt16
004539D4 cmp byte ptr [ebp+8],0
>004539D8 je 00453A1D
004539DA cmp byte ptr [ebx+44],0
>004539DE je 00453A1D
004539E0 mov edx,dword ptr [ebx+30]
004539E3 mov eax,edi
004539E5 call PtrOffset
004539EA mov edx,eax
004539EC xor ecx,ecx
004539EE mov eax,[013E2890]
004539F3 call Marshal.ReadIntPtr
004539F8 call GetGCHandleTarget
004539FD mov dword ptr [ebp-4],eax
00453A00 cmp dword ptr [ebp-4],0
>00453A04 je 00453A1D
00453A06 mov eax,dword ptr [ebp-4]
00453A09 mov edx,dword ptr [eax]
00453A0B call dword ptr [edx+34]
>00453A0E jmp 00453A1D
00453A10 push 0
00453A12 mov ecx,edi
00453A14 mov edx,ebx
00453A16 mov eax,esi
00453A18 call TData.PutChildField
00453A1D movzx eax,byte ptr [ebp+8]
00453A21 xor al,1
00453A23 push eax
00453A24 mov ecx,edi
00453A26 mov edx,ebx
00453A28 mov eax,esi
00453A2A call TCRRecordSet.SetEncrypted
00453A2F pop edi
00453A30 pop esi
00453A31 pop ebx
00453A32 pop ecx
00453A33 pop ebp
00453A34 ret 4
*}
//end;