Function at 0x49b980
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4c32fc
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x7e4
mov eax, dword [0x4dd040]
push ebx
push esi
push edi
mov dword [ebp - 0x14], eax
xor ebx, ebx
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x1f0], ecx
xor eax, eax
jmp 0x49b9c0
mov cl, byte [eax + 0x513e70]
mov byte [ebp + eax - 0x5c], cl
inc eax
test cl, cl
jne 0x49b9c0
push ebx
call dword [sym.imp.ole32.dll_CoInitialize]
mov esi, dword [sym.imp.OLEAUT32.dll_VariantClear]
lea eax, [ebp - 0x1dc]
push eax
call esi
lea ecx, [ebp - 0x1ec]
push ecx
mov dword [ebp - 4], ebx
call esi
lea edx, [ebp - 0x280]
push edx
call esi
lea eax, [ebp - 0x450]
push eax
call esi
lea ecx, [ebp - 0x270]
push ecx
call esi
lea edx, [ebp - 0x2d0]
push edx
call esi
lea eax, [ebp - 0x750]
push eax
call esi
lea ecx, [ebp - 0x730]
push ecx
call esi
lea edx, [ebp - 0x710]
push edx
call esi
lea eax, [ebp - 0x5f0]
push eax
call esi
mov dword [ebp - 0x194], ebx
mov dword [ebp - 0x174], ebx
mov dword [ebp - 0x180], ebx
mov dword [ebp - 0x178], ebx
mov dword [ebp - 0x17c], ebx
mov edi, dword [sym.imp.ole32.dll_CoCreateInstance]
lea ecx, [ebp - 0x184]
push ecx
push 0x4c7074
push 0x17
push ebx
push 0x4c7094
mov byte [ebp - 4], 0xe
call edi
cmp eax, ebx
mov ebx, dword [sym.imp.ole32.dll_OleRun]
jl 0x49bab9
mov edx, dword [ebp - 0x184]
push edx
call ebx
mov esi, eax
test esi, esi
jl 0x49baa9
mov eax, dword [ebp - 0x184]
mov ecx, dword [eax]
lea edx, [ebp - 0x194]
push edx
push 0x4c6ec8
push eax
call dword [ecx]
mov esi, eax
mov eax, dword [ebp - 0x184]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
test esi, esi
jge 0x49bac3
mov dword [ebp - 0x194], 0
mov eax, dword [ebp - 0x174]
test eax, eax
je 0x49bad3
mov edx, dword [eax]
push eax
call dword [edx + 8]
lea eax, [ebp - 0x184]
push eax
push 0x4c7074
push 0x17
push 0
push 0x4c7084
call edi
test eax, eax
jl 0x49bb26
mov ecx, dword [ebp - 0x184]
push ecx
call ebx
mov esi, eax
test esi, esi
jl 0x49bb16
mov eax, dword [ebp - 0x184]
mov edx, dword [eax]
lea ecx, [ebp - 0x174]
push ecx
push 0x4c6ed8
push eax
call dword [edx]
mov esi, eax
mov eax, dword [ebp - 0x184]
mov edx, dword [eax]
push eax
call dword [edx + 8]
test esi, esi
jge 0x49bb30
mov dword [ebp - 0x174], 0
mov eax, dword [ebp - 0x180]
test eax, eax
je 0x49bb40
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea edx, [ebp - 0x184]
push edx
push 0x4c7074
push 0x17
push 0
push 0x4c7084
call edi
test eax, eax
jl 0x49bb93
mov eax, dword [ebp - 0x184]
push eax
call ebx
mov esi, eax
test esi, esi
jl 0x49bb83
mov eax, dword [ebp - 0x184]
mov ecx, dword [eax]
lea edx, [ebp - 0x180]
push edx
push 0x4c6ed8
push eax
call dword [ecx]
mov esi, eax
mov eax, dword [ebp - 0x184]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
test esi, esi
jge 0x49bb9d
mov dword [ebp - 0x180], 0
mov eax, dword [ebp - 0x178]
test eax, eax
je 0x49bbad
mov edx, dword [eax]
push eax
call dword [edx + 8]
lea eax, [ebp - 0x184]
push eax
push 0x4c7074
push 0x17
push 0
push 0x4c7084
call edi
test eax, eax
jl 0x49bc00
mov ecx, dword [ebp - 0x184]
push ecx
call ebx
mov esi, eax
test esi, esi
jl 0x49bbf0
mov eax, dword [ebp - 0x184]
mov edx, dword [eax]
lea ecx, [ebp - 0x178]
push ecx
push 0x4c6ed8
push eax
call dword [edx]
mov esi, eax
mov eax, dword [ebp - 0x184]
mov edx, dword [eax]
push eax
call dword [edx + 8]
test esi, esi
jge 0x49bc0a
mov dword [ebp - 0x178], 0
mov eax, dword [ebp - 0x17c]
test eax, eax
je 0x49bc1a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea edx, [ebp - 0x184]
push edx
push 0x4c7074
push 0x17
push 0
push 0x4c7084
call edi
test eax, eax
jl 0x49bc6d
mov eax, dword [ebp - 0x184]
push eax
call ebx
mov esi, eax
test esi, esi
jl 0x49bc5d
mov eax, dword [ebp - 0x184]
mov ecx, dword [eax]
lea edx, [ebp - 0x17c]
push edx
push 0x4c6ed8
push eax
call dword [ecx]
mov esi, eax
mov eax, dword [ebp - 0x184]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
test esi, esi
jge 0x49bc77
mov dword [ebp - 0x17c], 0
xor esi, esi
mov dword [ebp - 0x1a0], esi
mov dword [ebp - 0x198], esi
mov dword [ebp - 0x1c8], esi
lea edx, [ebp - 0x184]
push edx
push 0x4c7074
push 0x17
push esi
push 0x4c7094
mov byte [ebp - 4], 0x11
call edi
cmp eax, esi
jl 0x49bce1
mov eax, dword [ebp - 0x184]
push eax
call ebx
mov esi, eax
test esi, esi
jl 0x49bcd1
mov eax, dword [ebp - 0x184]
mov ecx, dword [eax]
lea edx, [ebp - 0x1a0]
push edx
push 0x4c6ec8
push eax
call dword [ecx]
mov esi, eax
mov eax, dword [ebp - 0x184]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
test esi, esi
jge 0x49bceb
mov dword [ebp - 0x1a0], 0
mov eax, dword [ebp - 0x198]
test eax, eax
je 0x49bcfb
mov edx, dword [eax]
push eax
call dword [edx + 8]
lea eax, [ebp - 0x184]
push eax
push 0x4c7074
push 0x17
push 0
push 0x4c7084
call edi
test eax, eax
jl 0x49bd4e
mov ecx, dword [ebp - 0x184]
push ecx
call ebx
mov esi, eax
test esi, esi
jl 0x49bd3e
mov eax, dword [ebp - 0x184]
mov edx, dword [eax]
lea ecx, [ebp - 0x198]
push ecx
push 0x4c6ed8
push eax
call dword [edx]
mov esi, eax
mov eax, dword [ebp - 0x184]
mov edx, dword [eax]
push eax
call dword [edx + 8]
test esi, esi
jge 0x49bd58
mov dword [ebp - 0x198], 0
mov eax, dword [ebp - 0x1c8]
test eax, eax
je 0x49bd68
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea edx, [ebp - 0x184]
push edx
push 0x4c7074
push 0x17
push 0
push 0x4c7084
call edi
test eax, eax
jl 0x49bdbb
mov eax, dword [ebp - 0x184]
push eax
call ebx
mov esi, eax
test esi, esi
jl 0x49bdab
mov eax, dword [ebp - 0x184]
mov ecx, dword [eax]
lea edx, [ebp - 0x1c8]
push edx
push 0x4c6ed8
push eax
call dword [ecx]
mov esi, eax
mov eax, dword [ebp - 0x184]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
test esi, esi
jge 0x49bdc5
mov dword [ebp - 0x1c8], 0
push 0xffffffffffffffff
push ecx
mov ecx, esp
mov dword [ebp - 0x1a4], esp
push 0x4c6e60
mov byte [ebp - 4], 0x12
call fcn.00404ae0
push ecx
mov ecx, esp
mov dword [ebp - 0x188], esp
push 0x4c6e60
mov byte [ebp - 4], 0x13
call fcn.00404ae0
push ecx
mov ecx, esp
mov dword [ebp - 0x1cc], esp
push str.ProviderSQLOLEDB_SERVER_DATABASEHcardServer_UIDserver_PWDserver
mov byte [ebp - 4], 0x14
call fcn.00404ae0
mov eax, dword [ebp - 0x194]
xor edi, edi
cmp eax, edi
mov byte [ebp - 4], 0x15
jne 0x49be26
push 0x80004003
call fcn.004b50d0
mov ecx, dword [ebp - 0x194]
mov byte [ebp - 4], 0x12
call fcn.00405310
mov eax, dword [ebp - 0x194]
cmp eax, edi
mov word [ebp - 0x200], 9
mov dword [ebp - 0x1f8], eax
jne 0x49be5a
push 0x80004003
call fcn.004b50d0
jmp 0x49be60
mov edx, dword [eax]
push eax
call dword [edx + 4]
push str.Select_Account_AccountType_ProtocolType_EventNumber_Causation_Byname_from_tAlter_Mail
mov byte [ebp - 4], 0x16
mov word [ebp - 0x210], 8
call fcn.004b5150
mov dword [ebp - 0x208], eax
cmp dword [ebp - 0x174], edi
mov byte [ebp - 4], 0x17
jne 0x49be93
push 0x80004003
call fcn.004b50d0
push 1
push 3
push 2
lea eax, [ebp - 0x200]
push eax
lea ecx, [ebp - 0x210]
push ecx
mov ecx, dword [ebp - 0x174]
call fcn.00403d40
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea edx, [ebp - 0x210]
push edx
mov byte [ebp - 4], 0x16
call esi
cmp eax, edi
jge 0x49becf
push eax
call fcn.004b50d0
lea eax, [ebp - 0x200]
push eax
mov byte [ebp - 4], 0x12
call esi
cmp eax, edi
jge 0x49bee6
push eax
call fcn.004b50d0
mov eax, dword [ebp - 0x174]
cmp eax, edi
jne 0x49bf00
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x174]
mov ecx, dword [eax]
lea edx, [ebp - 0x190]
push edx
push eax
mov esi, eax
mov dword [ebp - 0x190], edi
call dword [ecx + 0x50]
cmp eax, edi
jge 0x49bf25
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
cmp word [ebp - 0x190], di
jne 0x49caed
mov eax, dword [ebp - 0x174]
cmp eax, edi
mov ebx, dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
jne 0x49bf52
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x174]
mov ecx, dword [eax]
lea edx, [ebp - 0x19c]
push edx
push eax
mov esi, eax
mov dword [ebp - 0x19c], edi
call dword [ecx + 0x50]
cmp eax, edi
jge 0x49bf77
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
cmp word [ebp - 0x19c], di
jne 0x49caed
push str.Account
mov word [ebp - 0x210], 8
call fcn.004b5150
mov dword [ebp - 0x208], eax
cmp dword [ebp - 0x174], edi
mov byte [ebp - 4], 0x18
jne 0x49bfb3
push 0x80004003
call fcn.004b50d0
lea eax, [ebp - 0x210]
push eax
lea ecx, [ebp - 0x580]
push ecx
mov ecx, dword [ebp - 0x174]
call fcn.00403e70
push eax
lea edx, [ebp - 0x1dc]
push edx
mov byte [ebp - 4], 0x19
call ebx
cmp eax, edi
jge 0x49bfe4
push eax
call fcn.004b50d0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x580]
push eax
mov byte [ebp - 4], 0x18
call esi
cmp eax, edi
jge 0x49c001
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x210]
push ecx
mov byte [ebp - 4], 0x12
call esi
cmp eax, edi
jge 0x49c018
push eax
call fcn.004b50d0
lea edx, [ebp - 0x1dc]
push edx
lea ecx, [ebp - 0x18c]
call fcn.00405240
mov esi, dword [eax]
cmp esi, edi
mov byte [ebp - 4], 0x1a
je 0x49c049
cmp dword [esi + 4], edi
jne 0x49c044
mov eax, dword [esi]
push eax
call fcn.004b52b0
mov dword [esi + 4], eax
mov esi, dword [esi + 4]
jmp 0x49c04b
xor esi, esi
mov ecx, esi
lea edx, [ebp - 0x170]
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x49c053
mov esi, dword [ebp - 0x18c]
cmp esi, edi
mov byte [ebp - 4], 0x12
je 0x49c0a9
lea ecx, [esi + 8]
push ecx
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x49c0a3
cmp esi, edi
je 0x49c0a3
mov eax, dword [esi]
cmp eax, edi
je 0x49c08a
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esi + 4]
cmp eax, edi
je 0x49c09a
push eax
call sub.MFC71.DLL_operator_delete_1
add esp, 4
push esi
call sub.MFC71.DLL_operator_delete
add esp, 4
mov dword [ebp - 0x18c], edi
lea edx, [ebp - 0x170]
push edx
call fcn.00403590
add esp, 4
push 0x4c9228
mov word [ebp - 0x200], 8
call fcn.004b5150
mov dword [ebp - 0x1f8], eax
cmp dword [ebp - 0x174], edi
mov byte [ebp - 4], 0x1b
jne 0x49c0e7
push 0x80004003
call fcn.004b50d0
lea eax, [ebp - 0x200]
push eax
lea ecx, [ebp - 0x5b0]
push ecx
mov ecx, dword [ebp - 0x174]
call fcn.00403e70
push eax
lea edx, [ebp - 0x1ec]
push edx
mov byte [ebp - 4], 0x1c
call ebx
cmp eax, edi
jge 0x49c118
push eax
call fcn.004b50d0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x5b0]
push eax
mov byte [ebp - 4], 0x1b
call esi
cmp eax, edi
jge 0x49c135
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x200]
push ecx
mov byte [ebp - 4], 0x12
call esi
cmp eax, edi
jge 0x49c14c
push eax
call fcn.004b50d0
movsx edi, word [ebp - 0x1e4]
push str.ProtocolType
mov word [ebp - 0x2c0], 8
call fcn.004b5150
mov dword [ebp - 0x2b8], eax
mov eax, dword [ebp - 0x174]
test eax, eax
mov byte [ebp - 4], 0x1d
jne 0x49c184
push 0x80004003
call fcn.004b50d0
mov ecx, dword [ebp - 0x174]
lea edx, [ebp - 0x2c0]
push edx
lea eax, [ebp - 0x590]
push eax
call fcn.00403e70
push eax
lea ecx, [ebp - 0x280]
push ecx
mov byte [ebp - 4], 0x1e
call ebx
test eax, eax
jge 0x49c1b5
push eax
call fcn.004b50d0
lea edx, [ebp - 0x590]
push edx
mov byte [ebp - 4], 0x1d
call esi
test eax, eax
jge 0x49c1cc
push eax
call fcn.004b50d0
lea eax, [ebp - 0x2c0]
push eax
mov byte [ebp - 4], 0x12
call esi
test eax, eax
jge 0x49c1e3
push eax
call fcn.004b50d0
movsx esi, word [ebp - 0x278]
push str.SELECT__FROM_tMail
lea ecx, [ebp - 0x190]
call section..text
push str._where
lea ecx, [ebp - 0x190]
mov byte [ebp - 4], 0x1f
call fcn.00401050
cmp edi, 1
lea ecx, [ebp - 0x190]
jne 0x49c22c
push str.FromAccount_like__
call fcn.00401050
lea ecx, [ebp - 0x170]
push ecx
jmp 0x49c23d
push str.ToAccount_like__
call fcn.00401050
lea edx, [ebp - 0x170]
push edx
lea ecx, [ebp - 0x190]
call fcn.00401050
push 0x4cb390
lea ecx, [ebp - 0x190]
call fcn.00401050
lea ecx, [ebp - 0x190]
push str._and
call fcn.00401050
cmp esi, 3
lea ecx, [ebp - 0x190]
jne 0x49c27a
push str._ProtocolType3_
jmp 0x49c27f
push str._ProtocolType4_
call fcn.00401050
mov eax, dword [ebp - 0x194]
test eax, eax
mov word [ebp - 0x220], 9
mov dword [ebp - 0x218], eax
jne 0x49c2a9
push 0x80004003
call fcn.004b50d0
jmp 0x49c2af
mov ecx, dword [eax]
push eax
call dword [ecx + 4]
mov edx, dword [ebp - 0x190]
push edx
mov byte [ebp - 4], 0x20
mov word [ebp - 0x250], 8
call fcn.004b5150
mov dword [ebp - 0x248], eax
mov eax, dword [ebp - 0x180]
test eax, eax
mov byte [ebp - 4], 0x21
jne 0x49c2ec
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x180]
mov edi, dword [ebp - 0x220]
push 1
mov ecx, dword [eax]
push 3
push 2
sub esp, 0x10
mov edx, esp
mov dword [edx], edi
mov edi, dword [ebp - 0x21c]
mov dword [edx + 4], edi
mov edi, dword [ebp - 0x218]
mov dword [edx + 8], edi
mov edi, dword [ebp - 0x214]
mov dword [edx + 0xc], edi
mov edi, dword [ebp - 0x250]
sub esp, 0x10
mov edx, esp
mov dword [edx], edi
mov edi, dword [ebp - 0x24c]
mov dword [edx + 4], edi
mov edi, dword [ebp - 0x248]
mov dword [edx + 8], edi
mov edi, dword [ebp - 0x244]
push eax
mov esi, eax
mov dword [edx + 0xc], edi
call dword [ecx + 0xa0]
test eax, eax
jge 0x49c35d
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x250]
push eax
mov byte [ebp - 4], 0x20
call esi
test eax, eax
jge 0x49c37a
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x220]
push ecx
mov byte [ebp - 4], 0x1f
call esi
test eax, eax
jge 0x49c391
push eax
call fcn.004b50d0
mov eax, dword [ebp - 0x180]
test eax, eax
jne 0x49c3ab
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x180]
mov edx, dword [eax]
lea ecx, [ebp - 0x19c]
push ecx
push eax
mov esi, eax
mov dword [ebp - 0x19c], 0
call dword [edx + 0x50]
test eax, eax
jge 0x49c3d4
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
cmp word [ebp - 0x19c], 0
jne 0x49c968
mov eax, dword [ebp - 0x180]
xor ebx, ebx
cmp eax, ebx
mov edi, 0x16
jne 0x49c403
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x180]
mov edx, dword [eax]
lea ecx, [ebp - 0x19c]
push ecx
push eax
mov esi, eax
mov dword [ebp - 0x19c], ebx
call dword [edx + 0x50]
cmp eax, ebx
jge 0x49c428
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
cmp word [ebp - 0x19c], bx
jne 0x49c96f
push str.flag
mov word [ebp - 0x260], 8
call fcn.004b5150
mov dword [ebp - 0x258], eax
mov word [ebp - 0x240], di
mov dword [ebp - 0x238], 1
mov eax, dword [ebp - 0x180]
cmp eax, ebx
mov byte [ebp - 4], 0x23
jne 0x49c47d
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x180]
mov edi, dword [ebp - 0x240]
mov edx, dword [eax]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edi
mov edi, dword [ebp - 0x23c]
mov dword [ecx + 4], edi
mov edi, dword [ebp - 0x238]
mov dword [ecx + 8], edi
mov edi, dword [ebp - 0x234]
mov dword [ecx + 0xc], edi
mov edi, dword [ebp - 0x260]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edi
mov edi, dword [ebp - 0x25c]
mov dword [ecx + 4], edi
mov edi, dword [ebp - 0x258]
mov dword [ecx + 8], edi
mov edi, dword [ebp - 0x254]
push eax
mov esi, eax
mov dword [ecx + 0xc], edi
call dword [edx + 0x100]
cmp eax, ebx
jge 0x49c4e8
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea edx, [ebp - 0x240]
push edx
mov byte [ebp - 4], 0x22
call esi
cmp eax, ebx
jge 0x49c505
push eax
call fcn.004b50d0
lea eax, [ebp - 0x260]
push eax
mov byte [ebp - 4], 0x1f
call esi
cmp eax, ebx
jge 0x49c51c
push eax
call fcn.004b50d0
mov esi, 8
push str.EventNumber
mov word [ebp - 0x2b0], si
call fcn.004b5150
mov dword [ebp - 0x2a8], eax
push str.EventNumber
mov byte [ebp - 4], 0x24
mov word [ebp - 0x230], si
call fcn.004b5150
mov dword [ebp - 0x228], eax
cmp dword [ebp - 0x174], ebx
mov byte [ebp - 4], 0x25
jne 0x49c569
push 0x80004003
call fcn.004b50d0
lea ecx, [ebp - 0x2b0]
push ecx
mov ecx, dword [ebp - 0x174]
lea edx, [ebp - 0x570]
push edx
call fcn.00403e70
mov esi, eax
mov eax, dword [ebp - 0x180]
cmp eax, ebx
mov byte [ebp - 4], 0x26
jne 0x49c5a2
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x180]
mov ebx, dword [esi]
mov ecx, dword [eax]
sub esp, 0x10
mov edx, esp
mov dword [edx], ebx
mov ebx, dword [esi + 4]
mov dword [edx + 4], ebx
mov ebx, dword [esi + 8]
mov esi, dword [esi + 0xc]
mov dword [edx + 8], ebx
mov dword [edx + 0xc], esi
mov esi, dword [ebp - 0x230]
sub esp, 0x10
mov edx, esp
mov dword [edx], esi
mov esi, dword [ebp - 0x22c]
mov dword [edx + 4], esi
mov esi, dword [ebp - 0x228]
mov dword [edx + 8], esi
mov esi, dword [ebp - 0x224]
push eax
mov edi, eax
mov dword [edx + 0xc], esi
call dword [ecx + 0x100]
test eax, eax
jge 0x49c600
push 0x4c6e40
push edi
push eax
call fcn.004b50e0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x570]
push eax
mov byte [ebp - 4], 0x25
call esi
test eax, eax
jge 0x49c61d
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x230]
push ecx
mov byte [ebp - 4], 0x24
call esi
test eax, eax
jge 0x49c634
push eax
call fcn.004b50d0
lea edx, [ebp - 0x2b0]
push edx
mov byte [ebp - 4], 0x1f
call esi
test eax, eax
jge 0x49c64b
push eax
call fcn.004b50d0
mov esi, 8
push str.Causation
mov word [ebp - 0x2a0], si
call fcn.004b5150
mov dword [ebp - 0x298], eax
push str.Causation
mov byte [ebp - 4], 0x27
mov word [ebp - 0x1c4], si
call fcn.004b5150
mov dword [ebp - 0x1bc], eax
mov eax, dword [ebp - 0x174]
test eax, eax
mov byte [ebp - 4], 0x28
jne 0x49c69a
push 0x80004003
call fcn.004b50d0
lea eax, [ebp - 0x2a0]
push eax
lea ecx, [ebp - 0x5a0]
push ecx
mov ecx, dword [ebp - 0x174]
call fcn.00403e70
mov esi, eax
mov eax, dword [ebp - 0x180]
test eax, eax
mov byte [ebp - 4], 0x29
jne 0x49c6d3
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x180]
mov ebx, dword [esi]
mov edx, dword [eax]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], ebx
mov ebx, dword [esi + 4]
mov dword [ecx + 4], ebx
mov ebx, dword [esi + 8]
mov esi, dword [esi + 0xc]
mov dword [ecx + 8], ebx
mov dword [ecx + 0xc], esi
mov esi, dword [ebp - 0x1c4]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], esi
mov esi, dword [ebp - 0x1c0]
mov dword [ecx + 4], esi
mov esi, dword [ebp - 0x1bc]
mov dword [ecx + 8], esi
mov esi, dword [ebp - 0x1b8]
push eax
mov edi, eax
mov dword [ecx + 0xc], esi
call dword [edx + 0x100]
test eax, eax
jge 0x49c731
push 0x4c6e40
push edi
push eax
call fcn.004b50e0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea edx, [ebp - 0x5a0]
push edx
mov byte [ebp - 4], 0x28
call esi
test eax, eax
jge 0x49c74e
push eax
call fcn.004b50d0
lea eax, [ebp - 0x1c4]
push eax
mov byte [ebp - 4], 0x27
call esi
test eax, eax
jge 0x49c765
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x2a0]
push ecx
mov byte [ebp - 4], 0x1f
call esi
test eax, eax
jge 0x49c77c
push eax
call fcn.004b50d0
mov esi, 8
push str.Byname
mov word [ebp - 0x290], si
call fcn.004b5150
mov dword [ebp - 0x288], eax
push str.Byname
mov byte [ebp - 4], 0x2a
mov word [ebp - 0x1b4], si
call fcn.004b5150
mov dword [ebp - 0x1ac], eax
mov eax, dword [ebp - 0x174]
test eax, eax
mov byte [ebp - 4], 0x2b
jne 0x49c7cb
push 0x80004003
call fcn.004b50d0
mov ecx, dword [ebp - 0x174]
lea edx, [ebp - 0x290]
push edx
lea eax, [ebp - 0x560]
push eax
call fcn.00403e70
mov esi, eax
mov eax, dword [ebp - 0x180]
test eax, eax
mov byte [ebp - 4], 0x2c
jne 0x49c804
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x180]
mov ebx, dword [esi]
mov ecx, dword [eax]
sub esp, 0x10
mov edx, esp
mov dword [edx], ebx
mov ebx, dword [esi + 4]
mov dword [edx + 4], ebx
mov ebx, dword [esi + 8]
mov esi, dword [esi + 0xc]
mov dword [edx + 8], ebx
mov dword [edx + 0xc], esi
mov esi, dword [ebp - 0x1b4]
sub esp, 0x10
mov edx, esp
mov dword [edx], esi
mov esi, dword [ebp - 0x1b0]
mov dword [edx + 4], esi
mov esi, dword [ebp - 0x1ac]
mov dword [edx + 8], esi
mov esi, dword [ebp - 0x1a8]
push eax
mov edi, eax
mov dword [edx + 0xc], esi
call dword [ecx + 0x100]
test eax, eax
jge 0x49c862
push 0x4c6e40
push edi
push eax
call fcn.004b50e0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x560]
push eax
mov byte [ebp - 4], 0x2b
call esi
test eax, eax
jge 0x49c87f
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x1b4]
push ecx
mov byte [ebp - 4], 0x2a
call esi
test eax, eax
jge 0x49c896
push eax
call fcn.004b50d0
lea edx, [ebp - 0x290]
push edx
mov byte [ebp - 4], 0x1f
call esi
test eax, eax
jge 0x49c8ad
push eax
call fcn.004b50d0
mov eax, dword [ebp - 0x180]
test eax, eax
jne 0x49c8c7
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x180]
mov ecx, dword [0x4dd058]
mov edx, dword [0x4dd05c]
mov esi, dword [0x4dd060]
mov edi, dword [eax]
sub esp, 0x10
mov ebx, esp
mov dword [ebx], ecx
mov dword [ebx + 4], edx
mov dword [ebx + 8], esi
mov esi, dword [0x4dd064]
mov dword [ebx + 0xc], esi
sub esp, 0x10
mov ebx, esp
mov dword [ebx], ecx
mov ecx, dword [0x4dd060]
mov dword [ebx + 4], edx
mov dword [ebx + 8], ecx
push eax
mov dword [ebp - 0x188], eax
mov dword [ebx + 0xc], esi
call dword [edi + 0xac]
test eax, eax
jge 0x49c92a
mov edx, dword [ebp - 0x188]
push 0x4c6e40
push edx
push eax
call fcn.004b50e0
mov eax, dword [ebp - 0x180]
test eax, eax
jne 0x49c944
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x180]
mov ecx, dword [eax]
push eax
mov esi, eax
call dword [ecx + 0x90]
test eax, eax
jge 0x49c3e2
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
jmp 0x49c3e2
xor ebx, ebx
mov edi, 0x16
mov eax, dword [ebp - 0x180]
cmp eax, ebx
jne 0x49c989
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x180]
mov edx, dword [eax]
lea ecx, [ebp - 0x19c]
push ecx
push eax
mov esi, eax
mov dword [ebp - 0x19c], ebx
call dword [edx + 0xdc]
cmp eax, ebx
jge 0x49c9b1
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
cmp dword [ebp - 0x19c], ebx
je 0x49c9ee
mov eax, dword [ebp - 0x180]
cmp eax, ebx
jne 0x49c9d3
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x180]
mov edx, dword [eax]
push eax
mov esi, eax
call dword [edx + 0x80]
cmp eax, ebx
jge 0x49c9ee
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
cmp word [ebp - 0x2d0], di
je 0x49ca15
lea eax, [ebp - 0x2d0]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp eax, ebx
jge 0x49ca0e
push eax
call fcn.004b50d0
mov word [ebp - 0x2d0], di
cmp word [ebp - 0x1dc], di
mov dword [ebp - 0x2c8], ebx
je 0x49ca42
lea ecx, [ebp - 0x1dc]
push ecx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp eax, ebx
jge 0x49ca3b
push eax
call fcn.004b50d0
mov word [ebp - 0x1dc], di
cmp word [ebp - 0x1ec], di
mov dword [ebp - 0x1d4], ebx
je 0x49ca6f
lea edx, [ebp - 0x1ec]
push edx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp eax, ebx
jge 0x49ca68
push eax
call fcn.004b50d0
mov word [ebp - 0x1ec], di
cmp word [ebp - 0x280], di
mov dword [ebp - 0x1e4], ebx
je 0x49ca9c
lea eax, [ebp - 0x280]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp eax, ebx
jge 0x49ca95
push eax
call fcn.004b50d0
mov word [ebp - 0x280], di
mov eax, dword [ebp - 0x174]
cmp eax, ebx
mov dword [ebp - 0x278], ebx
jne 0x49cabc
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x174]
mov ecx, dword [eax]
push eax
mov esi, eax
call dword [ecx + 0x90]
cmp eax, ebx
jge 0x49cad7
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
lea ecx, [ebp - 0x190]
mov byte [ebp - 4], 0x12
call fcn.00401150
xor edi, edi
jmp 0x49bf32
mov eax, dword [ebp - 0x174]
cmp eax, edi
jne 0x49cb07
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x174]
mov edx, dword [eax]
lea ecx, [ebp - 0x18c]
push ecx
push eax
mov esi, eax
mov dword [ebp - 0x18c], edi
call dword [edx + 0xdc]
cmp eax, edi
jge 0x49cb2f
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
cmp dword [ebp - 0x18c], edi
je 0x49cb6c
mov eax, dword [ebp - 0x174]
cmp eax, edi
jne 0x49cb51
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x174]
mov edx, dword [eax]
push eax
mov esi, eax
call dword [edx + 0x80]
cmp eax, edi
jge 0x49cb6c
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
mov eax, dword [ebp - 0x194]
cmp eax, edi
mov word [ebp - 0x1c4], 9
mov dword [ebp - 0x1bc], eax
jne 0x49cb91
push 0x80004003
call fcn.004b50d0
jmp 0x49cb97
mov ecx, dword [eax]
push eax
call dword [ecx + 4]
mov bl, 0x2d
push str.SELECT__FROM_tMail
mov byte [ebp - 4], bl
mov word [ebp - 0x1b4], 8
call fcn.004b5150
mov dword [ebp - 0x1ac], eax
mov eax, dword [ebp - 0x174]
test eax, eax
mov byte [ebp - 4], 0x2e
jne 0x49cbd3
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x174]
mov edi, dword [ebp - 0x1c4]
push 1
mov edx, dword [eax]
push 3
push 2
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edi
mov edi, dword [ebp - 0x1c0]
mov dword [ecx + 4], edi
mov edi, dword [ebp - 0x1bc]
mov dword [ecx + 8], edi
mov edi, dword [ebp - 0x1b8]
mov dword [ecx + 0xc], edi
mov edi, dword [ebp - 0x1b4]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edi
mov edi, dword [ebp - 0x1b0]
mov dword [ecx + 4], edi
mov edi, dword [ebp - 0x1ac]
mov dword [ecx + 8], edi
mov edi, dword [ebp - 0x1a8]
push eax
mov esi, eax
mov dword [ecx + 0xc], edi
call dword [edx + 0xa0]
xor edi, edi
cmp eax, edi
jge 0x49cc46
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea edx, [ebp - 0x1b4]
push edx
mov byte [ebp - 4], bl
call esi
cmp eax, edi
jge 0x49cc62
push eax
call fcn.004b50d0
lea eax, [ebp - 0x1c4]
push eax
mov byte [ebp - 4], 0x12
call esi
cmp eax, edi
jge 0x49cc80
push eax
call fcn.004b50d0
lea esp, [esp]
mov eax, dword [ebp - 0x174]
cmp eax, edi
jne 0x49cc9a
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x174]
mov ecx, dword [eax]
lea edx, [ebp - 0x18c]
push edx
push eax
mov esi, eax
mov dword [ebp - 0x18c], edi
call dword [ecx + 0x50]
cmp eax, edi
jge 0x49ccbf
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
cmp word [ebp - 0x18c], di
jne 0x49fa07
mov ebx, 8
push str.sClientIP
mov word [ebp - 0x5d0], bx
call fcn.004b5150
mov dword [ebp - 0x5c8], eax
cmp dword [ebp - 0x174], edi
mov byte [ebp - 4], 0x2f
jne 0x49ccfe
push 0x80004003
call fcn.004b50d0
lea eax, [ebp - 0x5d0]
push eax
lea ecx, [ebp - 0x7e0]
push ecx
mov ecx, dword [ebp - 0x174]
call fcn.00403e70
push eax
lea edx, [ebp - 0x1dc]
push edx
mov byte [ebp - 4], 0x30
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
cmp eax, edi
jge 0x49cd33
push eax
call fcn.004b50d0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x7e0]
push eax
mov byte [ebp - 4], 0x2f
call esi
cmp eax, edi
jge 0x49cd50
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x5d0]
push ecx
mov byte [ebp - 4], 0x12
call esi
cmp eax, edi
jge 0x49cd67
push eax
call fcn.004b50d0
lea edx, [ebp - 0x1dc]
push edx
lea ecx, [ebp - 0x19c]
call fcn.00405240
mov esi, dword [eax]
cmp esi, edi
mov byte [ebp - 4], 0x31
je 0x49cd98
cmp dword [esi + 4], edi
jne 0x49cd93
mov eax, dword [esi]
push eax
call fcn.004b52b0
mov dword [esi + 4], eax
mov esi, dword [esi + 4]
jmp 0x49cd9a
xor esi, esi
mov ecx, esi
lea edx, [ebp - 0x48]
nop
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x49cda0
mov esi, dword [ebp - 0x19c]
cmp esi, edi
mov byte [ebp - 4], 0x12
je 0x49cdf6
lea ecx, [esi + 8]
push ecx
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x49cdf0
cmp esi, edi
je 0x49cdf0
mov eax, dword [esi]
cmp eax, edi
je 0x49cdd7
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esi + 4]
cmp eax, edi
je 0x49cde7
push eax
call sub.MFC71.DLL_operator_delete_1
add esp, 4
push esi
call sub.MFC71.DLL_operator_delete
add esp, 4
mov dword [ebp - 0x19c], edi
lea edx, [ebp - 0x48]
push edx
call fcn.00403590
add esp, 4
push str.sInstDate
mov word [ebp - 0x640], bx
call fcn.004b5150
mov dword [ebp - 0x638], eax
cmp dword [ebp - 0x174], edi
mov byte [ebp - 4], 0x32
jne 0x49ce2f
push 0x80004003
call fcn.004b50d0
lea eax, [ebp - 0x640]
push eax
lea ecx, [ebp - 0x770]
push ecx
mov ecx, dword [ebp - 0x174]
call fcn.00403e70
push eax
lea edx, [ebp - 0x1ec]
push edx
mov byte [ebp - 4], 0x33
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
cmp eax, edi
jge 0x49ce64
push eax
call fcn.004b50d0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x770]
push eax
mov byte [ebp - 4], 0x32
call esi
cmp eax, edi
jge 0x49ce81
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x640]
push ecx
mov byte [ebp - 4], 0x12
call esi
cmp eax, edi
jge 0x49ce98
push eax
call fcn.004b50d0
lea edx, [ebp - 0x1ec]
push edx
lea ecx, [ebp - 0x1cc]
call fcn.00405240
mov esi, dword [eax]
cmp esi, edi
mov byte [ebp - 4], 0x34
je 0x49cec9
cmp dword [esi + 4], edi
jne 0x49cec4
mov eax, dword [esi]
push eax
call fcn.004b52b0
mov dword [esi + 4], eax
mov esi, dword [esi + 4]
jmp 0x49cecb
xor esi, esi
mov ecx, esi
lea edx, [ebp - 0x34]
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x49ced0
mov esi, dword [ebp - 0x1cc]
cmp esi, edi
mov byte [ebp - 4], 0x12
je 0x49cf26
lea ecx, [esi + 8]
push ecx
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x49cf20
cmp esi, edi
je 0x49cf20
mov eax, dword [esi]
cmp eax, edi
je 0x49cf07
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esi + 4]
cmp eax, edi
je 0x49cf17
push eax
call sub.MFC71.DLL_operator_delete_1
add esp, 4
push esi
call sub.MFC71.DLL_operator_delete
add esp, 4
mov dword [ebp - 0x1cc], edi
lea edx, [ebp - 0x34]
push edx
call fcn.00403590
add esp, 4
push str.sClientDate
mov word [ebp - 0x600], bx
call fcn.004b5150
mov dword [ebp - 0x5f8], eax
cmp dword [ebp - 0x174], edi
mov byte [ebp - 4], 0x35
jne 0x49cf5f
push 0x80004003
call fcn.004b50d0
lea eax, [ebp - 0x600]
push eax
lea ecx, [ebp - 0x790]
push ecx
mov ecx, dword [ebp - 0x174]
call fcn.00403e70
push eax
lea edx, [ebp - 0x270]
push edx
mov byte [ebp - 4], 0x36
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
cmp eax, edi
jge 0x49cf94
push eax
call fcn.004b50d0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x790]
push eax
mov byte [ebp - 4], 0x35
call esi
cmp eax, edi
jge 0x49cfb1
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x600]
push ecx
mov byte [ebp - 4], 0x12
call esi
cmp eax, edi
jge 0x49cfc8
push eax
call fcn.004b50d0
lea edx, [ebp - 0x270]
push edx
lea ecx, [ebp - 0x188]
call fcn.00405240
mov esi, dword [eax]
cmp esi, edi
mov byte [ebp - 4], 0x37
je 0x49cff9
cmp dword [esi + 4], edi
jne 0x49cff4
mov eax, dword [esi]
push eax
call fcn.004b52b0
mov dword [esi + 4], eax
mov esi, dword [esi + 4]
jmp 0x49cffb
xor esi, esi
mov ecx, esi
lea edx, [ebp - 0x70]
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x49d000
mov esi, dword [ebp - 0x188]
cmp esi, edi
mov byte [ebp - 4], 0x12
je 0x49d056
lea ecx, [esi + 8]
push ecx
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x49d050
cmp esi, edi
je 0x49d050
mov eax, dword [esi]
cmp eax, edi
je 0x49d037
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esi + 4]
cmp eax, edi
je 0x49d047
push eax
call sub.MFC71.DLL_operator_delete_1
add esp, 4
push esi
call sub.MFC71.DLL_operator_delete
add esp, 4
mov dword [ebp - 0x188], edi
lea edx, [ebp - 0x70]
push edx
call fcn.00403590
add esp, 4
push str.flag
mov word [ebp - 0x680], bx
call fcn.004b5150
mov dword [ebp - 0x678], eax
cmp dword [ebp - 0x174], edi
mov byte [ebp - 4], 0x38
jne 0x49d08f
push 0x80004003
call fcn.004b50d0
lea eax, [ebp - 0x680]
push eax
lea ecx, [ebp - 0x7b0]
push ecx
mov ecx, dword [ebp - 0x174]
call fcn.00403e70
push eax
lea edx, [ebp - 0x2d0]
push edx
mov byte [ebp - 4], 0x39
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
cmp eax, edi
jge 0x49d0c4
push eax
call fcn.004b50d0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x7b0]
push eax
mov byte [ebp - 4], 0x38
call esi
cmp eax, edi
jge 0x49d0e1
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x680]
push ecx
mov byte [ebp - 4], 0x12
call esi
cmp eax, edi
jge 0x49d0f8
push eax
call fcn.004b50d0
movsx edx, word [ebp - 0x2c8]
push str.ProtocolType
mov dword [ebp - 0x1a4], edx
mov word [ebp - 0x620], bx
call fcn.004b5150
mov dword [ebp - 0x618], eax
cmp dword [ebp - 0x174], edi
mov byte [ebp - 4], 0x3a
jne 0x49d132
push 0x80004003
call fcn.004b50d0
lea eax, [ebp - 0x620]
push eax
lea ecx, [ebp - 0x7d0]
push ecx
mov ecx, dword [ebp - 0x174]
call fcn.00403e70
push eax
lea edx, [ebp - 0x5f0]
push edx
mov byte [ebp - 4], 0x3b
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
cmp eax, edi
jge 0x49d167
push eax
call fcn.004b50d0
lea eax, [ebp - 0x7d0]
push eax
mov byte [ebp - 4], 0x3a
call esi
cmp eax, edi
jge 0x49d17e
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x620]
push ecx
mov byte [ebp - 4], 0x12
call esi
cmp eax, edi
jge 0x49d195
push eax
call fcn.004b50d0
movsx eax, word [ebp - 0x5e8]
cmp eax, 3
jne 0x49d1bc
mov dx, word [0x4c6cac]
mov al, byte [0x4c6cae]
mov word [ebp - 0x190], dx
mov byte [ebp - 0x18e], al
jmp 0x49d1d6
mov cx, word [0x4c6cb0]
mov dl, byte [0x4c6cb2]
mov word [ebp - 0x190], cx
mov byte [ebp - 0x18e], dl
lea eax, [ebp - 0x34]
push eax
lea ecx, [ebp - 0x48]
push ecx
mov ecx, dword [ebp - 0x1f0]
call fcn.00404bc0
mov ecx, 0x4dd170
lea edx, [ebp - 0x20]
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x49d1f1
mov eax, dword [0x4dd184]
push 0xa
lea edx, [ebp - 0x184]
push edx
push eax
call dword [sym.imp.MSVCR71.dll__itoa]
mov eax, dword [ebp - 0x17c]
add esp, 0xc
cmp eax, edi
jne 0x49d22d
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x17c]
mov ecx, dword [eax]
lea edx, [ebp - 0x18c]
push edx
push eax
mov esi, eax
mov dword [ebp - 0x18c], edi
call dword [ecx + 0xdc]
cmp eax, edi
jge 0x49d255
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
cmp dword [ebp - 0x18c], edi
je 0x49d292
mov eax, dword [ebp - 0x17c]
cmp eax, edi
jne 0x49d277
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x17c]
mov ecx, dword [eax]
push eax
mov esi, eax
call dword [ecx + 0x80]
cmp eax, edi
jge 0x49d292
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
mov eax, dword [ebp - 0x194]
cmp eax, edi
mov word [ebp - 0x1c4], 9
mov dword [ebp - 0x1bc], eax
jne 0x49d2b7
push 0x80004003
call fcn.004b50d0
jmp 0x49d2bd
mov edx, dword [eax]
push eax
call dword [edx + 4]
push str.SELECT_top_0__FROM_tMail_history
mov byte [ebp - 4], 0x3c
mov word [ebp - 0x1b4], bx
call fcn.004b5150
mov dword [ebp - 0x1ac], eax
mov eax, dword [ebp - 0x17c]
cmp eax, edi
mov byte [ebp - 4], 0x3d
jne 0x49d2f6
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x17c]
mov ebx, dword [ebp - 0x1c4]
push 1
mov ecx, dword [eax]
push 3
push 2
sub esp, 0x10
mov edx, esp
mov dword [edx], ebx
mov ebx, dword [ebp - 0x1c0]
mov dword [edx + 4], ebx
mov ebx, dword [ebp - 0x1bc]
mov dword [edx + 8], ebx
mov ebx, dword [ebp - 0x1b8]
mov dword [edx + 0xc], ebx
mov ebx, dword [ebp - 0x1b4]
sub esp, 0x10
mov edx, esp
mov dword [edx], ebx
mov ebx, dword [ebp - 0x1b0]
mov dword [edx + 4], ebx
mov ebx, dword [ebp - 0x1ac]
mov dword [edx + 8], ebx
mov ebx, dword [ebp - 0x1a8]
push eax
mov esi, eax
mov dword [edx + 0xc], ebx
call dword [ecx + 0xa0]
cmp eax, edi
jge 0x49d367
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x1b4]
push eax
mov byte [ebp - 4], 0x3c
call esi
cmp eax, edi
jge 0x49d384
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x1c4]
push ecx
mov byte [ebp - 4], 0x12
call esi
cmp eax, edi
jge 0x49d39b
push eax
call fcn.004b50d0
mov eax, dword [ebp - 0x17c]
cmp eax, edi
jne 0x49d3b5
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x17c]
mov ecx, dword [0x4dd058]
mov edx, dword [0x4dd05c]
mov esi, dword [0x4dd060]
mov edi, dword [eax]
sub esp, 0x10
mov ebx, esp
mov dword [ebx], ecx
mov dword [ebx + 4], edx
mov dword [ebx + 8], esi
mov esi, dword [0x4dd064]
mov dword [ebx + 0xc], esi
sub esp, 0x10
mov ebx, esp
mov dword [ebx], ecx
mov dword [ebx + 4], edx
mov edx, dword [0x4dd060]
mov dword [ebx + 8], edx
push eax
mov dword [ebp - 0x18c], eax
mov dword [ebx + 0xc], esi
call dword [edi + 0x78]
test eax, eax
jge 0x49d415
mov ecx, dword [ebp - 0x18c]
push 0x4c6e40
push ecx
push eax
call fcn.004b50e0
mov esi, 8
push str.sClientDate
mov word [ebp - 0x660], si
call fcn.004b5150
mov dword [ebp - 0x658], eax
push str.sClientDate
mov byte [ebp - 4], 0x3e
mov word [ebp - 0x230], si
call fcn.004b5150
mov dword [ebp - 0x228], eax
mov eax, dword [ebp - 0x174]
test eax, eax
mov byte [ebp - 4], 0x3f
jne 0x49d464
push 0x80004003
call fcn.004b50d0
mov ecx, dword [ebp - 0x174]
lea edx, [ebp - 0x660]
push edx
lea eax, [ebp - 0x7f0]
push eax
call fcn.00403e70
mov esi, eax
mov eax, dword [ebp - 0x17c]
test eax, eax
mov byte [ebp - 4], 0x40
jne 0x49d49d
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x17c]
mov ebx, dword [esi]
mov ecx, dword [eax]
sub esp, 0x10
mov edx, esp
mov dword [edx], ebx
mov ebx, dword [esi + 4]
mov dword [edx + 4], ebx
mov ebx, dword [esi + 8]
mov esi, dword [esi + 0xc]
mov dword [edx + 8], ebx
mov dword [edx + 0xc], esi
mov esi, dword [ebp - 0x230]
sub esp, 0x10
mov edx, esp
mov dword [edx], esi
mov esi, dword [ebp - 0x22c]
mov dword [edx + 4], esi
mov esi, dword [ebp - 0x228]
mov dword [edx + 8], esi
mov esi, dword [ebp - 0x224]
push eax
mov edi, eax
mov dword [edx + 0xc], esi
call dword [ecx + 0x100]
test eax, eax
jge 0x49d4fb
push 0x4c6e40
push edi
push eax
call fcn.004b50e0
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x7f0]
push eax
mov byte [ebp - 4], 0x3f
call edi
test eax, eax
jge 0x49d518
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x230]
push ecx
mov byte [ebp - 4], 0x3e
call edi
test eax, eax
jge 0x49d52f
push eax
call fcn.004b50d0
lea edx, [ebp - 0x660]
push edx
mov byte [ebp - 4], 0x12
call edi
test eax, eax
jge 0x49d546
push eax
call fcn.004b50d0
mov esi, 8
push str.FromAccount
mov word [ebp - 0x5c0], si
call fcn.004b5150
mov dword [ebp - 0x5b8], eax
push str.FromAccount
mov byte [ebp - 4], 0x41
mov word [ebp - 0x260], si
call fcn.004b5150
mov dword [ebp - 0x258], eax
mov eax, dword [ebp - 0x174]
test eax, eax
mov byte [ebp - 4], 0x42
jne 0x49d595
push 0x80004003
call fcn.004b50d0
lea eax, [ebp - 0x5c0]
push eax
lea ecx, [ebp - 0x6c0]
push ecx
mov ecx, dword [ebp - 0x174]
call fcn.00403e70
mov esi, eax
mov eax, dword [ebp - 0x17c]
test eax, eax
mov byte [ebp - 4], 0x43
jne 0x49d5ce
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x17c]
mov ebx, dword [esi]
mov edx, dword [eax]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], ebx
mov ebx, dword [esi + 4]
mov dword [ecx + 4], ebx
mov ebx, dword [esi + 8]
mov esi, dword [esi + 0xc]
mov dword [ecx + 8], ebx
mov dword [ecx + 0xc], esi
mov esi, dword [ebp - 0x260]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], esi
mov esi, dword [ebp - 0x25c]
mov dword [ecx + 4], esi
mov esi, dword [ebp - 0x258]
mov dword [ecx + 8], esi
mov esi, dword [ebp - 0x254]
push eax
mov dword [ebp - 0x18c], eax
mov dword [ecx + 0xc], esi
call dword [edx + 0x100]
test eax, eax
jge 0x49d636
mov edx, dword [ebp - 0x18c]
push 0x4c6e40
push edx
push eax
call fcn.004b50e0
lea eax, [ebp - 0x6c0]
push eax
mov byte [ebp - 4], 0x42
call edi
test eax, eax
jge 0x49d64d
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x260]
push ecx
mov byte [ebp - 4], 0x41
call edi
test eax, eax
jge 0x49d664
push eax
call fcn.004b50d0
lea edx, [ebp - 0x5c0]
push edx
mov byte [ebp - 4], 0x12
call edi
test eax, eax
jge 0x49d67b
push eax
call fcn.004b50d0
mov esi, 8
push str.ToAccount
mov word [ebp - 0x630], si
call fcn.004b5150
mov dword [ebp - 0x628], eax
push str.ToAccount
mov byte [ebp - 4], 0x44
mov word [ebp - 0x240], si
call fcn.004b5150
mov dword [ebp - 0x238], eax
mov eax, dword [ebp - 0x174]
test eax, eax
mov byte [ebp - 4], 0x45
jne 0x49d6ca
push 0x80004003
call fcn.004b50d0
lea eax, [ebp - 0x630]
push eax
lea ecx, [ebp - 0x760]
push ecx
mov ecx, dword [ebp - 0x174]
call fcn.00403e70
mov esi, eax
mov eax, dword [ebp - 0x17c]
test eax, eax
mov byte [ebp - 4], 0x46
jne 0x49d703
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x17c]
mov ebx, dword [esi]
mov edx, dword [eax]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], ebx
mov ebx, dword [esi + 4]
mov dword [ecx + 4], ebx
mov ebx, dword [esi + 8]
mov esi, dword [esi + 0xc]
mov dword [ecx + 8], ebx
mov dword [ecx + 0xc], esi
mov esi, dword [ebp - 0x240]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], esi
mov esi, dword [ebp - 0x23c]
mov dword [ecx + 4], esi
mov esi, dword [ebp - 0x238]
mov dword [ecx + 8], esi
mov esi, dword [ebp - 0x234]
push eax
mov edi, eax
mov dword [ecx + 0xc], esi
call dword [edx + 0x100]
test eax, eax
jge 0x49d761
push 0x4c6e40
push edi
push eax
call fcn.004b50e0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea edx, [ebp - 0x760]
push edx
mov byte [ebp - 4], 0x45
call esi
test eax, eax
jge 0x49d77e
push eax
call fcn.004b50d0
lea eax, [ebp - 0x240]
push eax
mov byte [ebp - 4], 0x44
call esi
test eax, eax
jge 0x49d795
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x630]
push ecx
mov byte [ebp - 4], 0x12
call esi
test eax, eax
jge 0x49d7ac
push eax
call fcn.004b50d0
mov esi, 8
push str.sInstDate
mov word [ebp - 0x650], si
call fcn.004b5150
mov dword [ebp - 0x648], eax
push str.sInstDate
mov byte [ebp - 4], 0x47
mov word [ebp - 0x220], si
call fcn.004b5150
mov dword [ebp - 0x218], eax
mov eax, dword [ebp - 0x174]
test eax, eax
mov byte [ebp - 4], 0x48
jne 0x49d7fb
push 0x80004003
call fcn.004b50d0
mov ecx, dword [ebp - 0x174]
lea edx, [ebp - 0x650]
push edx
lea eax, [ebp - 0x6e0]
push eax
call fcn.00403e70
mov esi, eax
mov eax, dword [ebp - 0x17c]
test eax, eax
mov byte [ebp - 4], 0x49
jne 0x49d834
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x17c]
mov ebx, dword [esi]
mov ecx, dword [eax]
sub esp, 0x10
mov edx, esp
mov dword [edx], ebx
mov ebx, dword [esi + 4]
mov dword [edx + 4], ebx
mov ebx, dword [esi + 8]
mov esi, dword [esi + 0xc]
mov dword [edx + 8], ebx
mov dword [edx + 0xc], esi
mov esi, dword [ebp - 0x220]
sub esp, 0x10
mov edx, esp
mov dword [edx], esi
mov esi, dword [ebp - 0x21c]
mov dword [edx + 4], esi
mov esi, dword [ebp - 0x218]
mov dword [edx + 8], esi
mov esi, dword [ebp - 0x214]
push eax
mov edi, eax
mov dword [edx + 0xc], esi
call dword [ecx + 0x100]
test eax, eax
jge 0x49d892
push 0x4c6e40
push edi
push eax
call fcn.004b50e0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x6e0]
push eax
mov byte [ebp - 4], 0x48
call esi
test eax, eax
jge 0x49d8af
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x220]
push ecx
mov byte [ebp - 4], 0x47
call esi
test eax, eax
jge 0x49d8c6
push eax
call fcn.004b50d0
lea edx, [ebp - 0x650]
push edx
mov byte [ebp - 4], 0x12
call esi
test eax, eax
jge 0x49d8dd
push eax
call fcn.004b50d0
mov esi, 8
push str.sClientIP
mov word [ebp - 0x670], si
call fcn.004b5150
mov dword [ebp - 0x668], eax
push str.sClientIP
mov byte [ebp - 4], 0x4a
mov word [ebp - 0x250], si
call fcn.004b5150
mov dword [ebp - 0x248], eax
mov eax, dword [ebp - 0x174]
test eax, eax
mov byte [ebp - 4], 0x4b
jne 0x49d92c
push 0x80004003
call fcn.004b50d0
lea eax, [ebp - 0x670]
push eax
lea ecx, [ebp - 0x6a0]
push ecx
mov ecx, dword [ebp - 0x174]
call fcn.00403e70
mov esi, eax
mov eax, dword [ebp - 0x17c]
test eax, eax
mov byte [ebp - 4], 0x4c
jne 0x49d965
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x17c]
mov ebx, dword [esi]
mov edx, dword [eax]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], ebx
mov ebx, dword [esi + 4]
mov dword [ecx + 4], ebx
mov ebx, dword [esi + 8]
mov esi, dword [esi + 0xc]
mov dword [ecx + 8], ebx
mov dword [ecx + 0xc], esi
mov esi, dword [ebp - 0x250]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], esi
mov esi, dword [ebp - 0x24c]
mov dword [ecx + 4], esi
mov esi, dword [ebp - 0x248]
mov dword [ecx + 8], esi
mov esi, dword [ebp - 0x244]
push eax
mov edi, eax
mov dword [ecx + 0xc], esi
call dword [edx + 0x100]
test eax, eax
jge 0x49d9c3
push 0x4c6e40
push edi
push eax
call fcn.004b50e0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea edx, [ebp - 0x6a0]
push edx
mov byte [ebp - 4], 0x4b
call esi
test eax, eax
jge 0x49d9e0
push eax
call fcn.004b50d0
lea eax, [ebp - 0x250]
push eax
mov byte [ebp - 4], 0x4a
call esi
test eax, eax
jge 0x49d9f7
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x670]
push ecx
mov byte [ebp - 4], 0x12
call esi
test eax, eax
jge 0x49da0e
push eax
call fcn.004b50d0
mov esi, 8
push 0x4c7d84
mov word [ebp - 0x390], si
call fcn.004b5150
mov dword [ebp - 0x388], eax
lea edx, [ebp - 0x20]
mov bl, 0x4d
push edx
mov byte [ebp - 4], bl
mov word [ebp - 0x520], si
call fcn.004b5150
mov dword [ebp - 0x518], eax
mov eax, dword [ebp - 0x17c]
test eax, eax
mov byte [ebp - 4], 0x4e
jne 0x49da63
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x17c]
mov edi, dword [ebp - 0x520]
mov ecx, dword [eax]
sub esp, 0x10
mov edx, esp
mov dword [edx], edi
mov edi, dword [ebp - 0x51c]
mov dword [edx + 4], edi
mov edi, dword [ebp - 0x518]
mov dword [edx + 8], edi
mov edi, dword [ebp - 0x514]
mov dword [edx + 0xc], edi
mov edi, dword [ebp - 0x390]
sub esp, 0x10
mov edx, esp
mov dword [edx], edi
mov edi, dword [ebp - 0x38c]
mov dword [edx + 4], edi
mov edi, dword [ebp - 0x388]
mov dword [edx + 8], edi
mov edi, dword [ebp - 0x384]
push eax
mov esi, eax
mov dword [edx + 0xc], edi
call dword [ecx + 0x100]
test eax, eax
jge 0x49dace
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x520]
push eax
mov byte [ebp - 4], bl
call esi
test eax, eax
jge 0x49daea
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x390]
push ecx
mov byte [ebp - 4], 0x12
call esi
test eax, eax
jge 0x49db01
push eax
call fcn.004b50d0
mov esi, 8
push str.Certificate
mov word [ebp - 0x3d0], si
call fcn.004b5150
mov dword [ebp - 0x3c8], eax
lea edx, [ebp - 0x184]
mov bl, 0x4f
push edx
mov byte [ebp - 4], bl
mov word [ebp - 0x3b0], si
call fcn.004b5150
mov dword [ebp - 0x3a8], eax
mov eax, dword [ebp - 0x17c]
test eax, eax
mov byte [ebp - 4], 0x50
jne 0x49db59
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x17c]
mov edi, dword [ebp - 0x3b0]
mov ecx, dword [eax]
sub esp, 0x10
mov edx, esp
mov dword [edx], edi
mov edi, dword [ebp - 0x3ac]
mov dword [edx + 4], edi
mov edi, dword [ebp - 0x3a8]
mov dword [edx + 8], edi
mov edi, dword [ebp - 0x3a4]
mov dword [edx + 0xc], edi
mov edi, dword [ebp - 0x3d0]
sub esp, 0x10
mov edx, esp
mov dword [edx], edi
mov edi, dword [ebp - 0x3cc]
mov dword [edx + 4], edi
mov edi, dword [ebp - 0x3c8]
mov dword [edx + 8], edi
mov edi, dword [ebp - 0x3c4]
push eax
mov esi, eax
mov dword [edx + 0xc], edi
call dword [ecx + 0x100]
test eax, eax
jge 0x49dbc4
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x3b0]
push eax
mov byte [ebp - 4], bl
call esi
test eax, eax
jge 0x49dbe0
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x3d0]
push ecx
mov byte [ebp - 4], 0x12
call esi
test eax, eax
jge 0x49dbf7
push eax
call fcn.004b50d0
mov esi, 8
push str.CertificateNo
mov word [ebp - 0x410], si
call fcn.004b5150
mov dword [ebp - 0x408], eax
mov bl, 0x51
push 0x4dd188
mov byte [ebp - 4], bl
mov word [ebp - 0x3f0], si
call fcn.004b5150
mov dword [ebp - 0x3e8], eax
mov eax, dword [ebp - 0x17c]
test eax, eax
mov byte [ebp - 4], 0x52
jne 0x49dc4d
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x17c]
mov edi, dword [ebp - 0x3f0]
mov edx, dword [eax]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edi
mov edi, dword [ebp - 0x3ec]
mov dword [ecx + 4], edi
mov edi, dword [ebp - 0x3e8]
mov dword [ecx + 8], edi
mov edi, dword [ebp - 0x3e4]
mov dword [ecx + 0xc], edi
mov edi, dword [ebp - 0x410]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edi
mov edi, dword [ebp - 0x40c]
mov dword [ecx + 4], edi
mov edi, dword [ebp - 0x408]
mov dword [ecx + 8], edi
mov edi, dword [ebp - 0x404]
push eax
mov esi, eax
mov dword [ecx + 0xc], edi
call dword [edx + 0x100]
test eax, eax
jge 0x49dcb8
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
lea edx, [ebp - 0x3f0]
mov byte [ebp - 4], bl
mov ebx, dword [sym.imp.OLEAUT32.dll_VariantCopy]
push edx
call ebx
test eax, eax
jge 0x49dcd4
push eax
call fcn.004b50d0
lea eax, [ebp - 0x410]
push eax
mov byte [ebp - 4], 0x12
call ebx
test eax, eax
jge 0x49dceb
push eax
call fcn.004b50d0
push str.Sendflag
mov word [ebp - 0x510], 8
call fcn.004b5150
mov dword [ebp - 0x508], eax
mov word [ebp - 0x430], 0x16
mov dword [ebp - 0x428], 0
mov eax, dword [ebp - 0x17c]
test eax, eax
mov byte [ebp - 4], 0x54
jne 0x49dd35
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x17c]
mov edi, dword [ebp - 0x430]
mov ecx, dword [eax]
sub esp, 0x10
mov edx, esp
mov dword [edx], edi
mov edi, dword [ebp - 0x42c]
mov dword [edx + 4], edi
mov edi, dword [ebp - 0x428]
mov dword [edx + 8], edi
mov edi, dword [ebp - 0x424]
mov dword [edx + 0xc], edi
mov edi, dword [ebp - 0x510]
sub esp, 0x10
mov edx, esp
mov dword [edx], edi
mov edi, dword [ebp - 0x50c]
mov dword [edx + 4], edi
mov edi, dword [ebp - 0x508]
mov dword [edx + 8], edi
mov edi, dword [ebp - 0x504]
push eax
mov esi, eax
mov dword [edx + 0xc], edi
call dword [ecx + 0x100]
test eax, eax
jge 0x49dda0
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
lea eax, [ebp - 0x430]
push eax
mov byte [ebp - 4], 0x53
call ebx
test eax, eax
jge 0x49ddb7
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x510]
push ecx
mov byte [ebp - 4], 0x12
call ebx
test eax, eax
jge 0x49ddce
push eax
call fcn.004b50d0
mov esi, 8
push str.Name
mov word [ebp - 0x550], si
call fcn.004b5150
mov dword [ebp - 0x548], eax
mov bl, 0x55
push 0x4dd19c
mov byte [ebp - 4], bl
mov word [ebp - 0x530], si
call fcn.004b5150
mov dword [ebp - 0x528], eax
mov eax, dword [ebp - 0x17c]
test eax, eax
mov byte [ebp - 4], 0x56
jne 0x49de24
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x17c]
mov edi, dword [ebp - 0x530]
mov edx, dword [eax]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edi
mov edi, dword [ebp - 0x52c]
mov dword [ecx + 4], edi
mov edi, dword [ebp - 0x528]
mov dword [ecx + 8], edi
mov edi, dword [ebp - 0x524]
mov dword [ecx + 0xc], edi
mov edi, dword [ebp - 0x550]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edi
mov edi, dword [ebp - 0x54c]
mov dword [ecx + 4], edi
mov edi, dword [ebp - 0x548]
mov dword [ecx + 8], edi
mov edi, dword [ebp - 0x544]
push eax
mov esi, eax
mov dword [ecx + 0xc], edi
call dword [edx + 0x100]
test eax, eax
jge 0x49de8f
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea edx, [ebp - 0x530]
push edx
mov byte [ebp - 4], bl
call esi
test eax, eax
jge 0x49deab
push eax
call fcn.004b50d0
lea eax, [ebp - 0x550]
push eax
mov byte [ebp - 4], 0x12
call esi
test eax, eax
jge 0x49dec2
push eax
call fcn.004b50d0
mov esi, 8
push str.ProtocolType
mov word [ebp - 0x300], si
call fcn.004b5150
mov dword [ebp - 0x2f8], eax
lea ecx, [ebp - 0x190]
mov bl, 0x57
push ecx
mov byte [ebp - 4], bl
mov word [ebp - 0x4a0], si
call fcn.004b5150
mov dword [ebp - 0x498], eax
mov eax, dword [ebp - 0x17c]
test eax, eax
mov byte [ebp - 4], 0x58
jne 0x49df1a
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x17c]
mov edi, dword [ebp - 0x4a0]
mov edx, dword [eax]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edi
mov edi, dword [ebp - 0x49c]
mov dword [ecx + 4], edi
mov edi, dword [ebp - 0x498]
mov dword [ecx + 8], edi
mov edi, dword [ebp - 0x494]
mov dword [ecx + 0xc], edi
mov edi, dword [ebp - 0x300]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edi
mov edi, dword [ebp - 0x2fc]
mov dword [ecx + 4], edi
mov edi, dword [ebp - 0x2f8]
mov dword [ecx + 8], edi
mov edi, dword [ebp - 0x2f4]
push eax
mov esi, eax
mov dword [ecx + 0xc], edi
call dword [edx + 0x100]
test eax, eax
jge 0x49df85
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea edx, [ebp - 0x4a0]
push edx
mov byte [ebp - 4], bl
call esi
test eax, eax
jge 0x49dfa1
mov eax, dword [ebp - 0x17c]
cmp eax, edi
jne 0x49fa21
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x17c]
mov edx, dword [eax]
lea ecx, [ebp - 0x188]
push ecx
push eax
mov esi, eax
mov dword [ebp - 0x188], edi
call dword [edx + 0xdc]
cmp eax, edi
jge 0x49fa49
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
cmp dword [ebp - 0x188], edi
je 0x49fa86
mov eax, dword [ebp - 0x17c]
cmp eax, edi
jne 0x49fa6b
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x17c]
mov edx, dword [eax]
push eax
mov esi, eax
call dword [edx + 0x80]
cmp eax, edi
jge 0x49fa86
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
mov eax, dword [ebp - 0x174]
cmp eax, edi
jne 0x49faa0
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x174]
mov ecx, dword [eax]
lea edx, [ebp - 0x188]
push edx
push eax
mov esi, eax
mov dword [ebp - 0x188], edi
call dword [ecx + 0xdc]
cmp eax, edi
jge 0x49fac8
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
cmp dword [ebp - 0x188], edi
je 0x49fb05
mov eax, dword [ebp - 0x174]
cmp eax, edi
jne 0x49faea
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x174]
mov ecx, dword [eax]
push eax
mov esi, eax
call dword [ecx + 0x80]
cmp eax, edi
jge 0x49fb05
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
mov eax, dword [ebp - 0x194]
cmp eax, edi
jne 0x49fb1f
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x194]
mov edx, dword [eax]
lea ecx, [ebp - 0x188]
push ecx
push eax
mov esi, eax
mov dword [ebp - 0x188], edi
call dword [edx + 0x88]
cmp eax, edi
jge 0x49fb47
push 0x4c6e30
push esi
push eax
call fcn.004b50e0
cmp dword [ebp - 0x188], edi
je 0x49fb81
mov eax, dword [ebp - 0x194]
cmp eax, edi
jne 0x49fb69
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x194]
mov edx, dword [eax]
push eax
mov esi, eax
call dword [edx + 0x3c]
cmp eax, edi
jge 0x49fb81
push 0x4c6e30
push esi
push eax
call fcn.004b50e0
mov eax, dword [ebp - 0x1a0]
cmp eax, edi
jne 0x49fb9b
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x1a0]
mov ecx, dword [eax]
lea edx, [ebp - 0x188]
push edx
push eax
mov esi, eax
mov dword [ebp - 0x188], edi
call dword [ecx + 0x88]
cmp eax, edi
jge 0x49fbc3
push 0x4c6e30
push esi
push eax
call fcn.004b50e0
cmp dword [ebp - 0x188], edi
je 0x49fbfd
mov eax, dword [ebp - 0x1a0]
cmp eax, edi
jne 0x49fbe5
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x1a0]
mov ecx, dword [eax]
push eax
mov esi, eax
call dword [ecx + 0x3c]
cmp eax, edi
jge 0x49fbfd
push 0x4c6e30
push esi
push eax
call fcn.004b50e0
mov eax, dword [ebp - 0x198]
cmp eax, edi
jne 0x49fc17
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x198]
mov edx, dword [eax]
lea ecx, [ebp - 0x188]
push ecx
push eax
mov esi, eax
mov dword [ebp - 0x188], edi
call dword [edx + 0xdc]
cmp eax, edi
jge 0x49fc3f
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
cmp dword [ebp - 0x188], edi
je 0x49fc7c
mov eax, dword [ebp - 0x198]
cmp eax, edi
jne 0x49fc61
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x198]
mov edx, dword [eax]
push eax
mov esi, eax
call dword [edx + 0x80]
cmp eax, edi
jge 0x49fc7c
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
mov eax, dword [ebp - 0x180]
cmp eax, edi
jne 0x49fc96
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x180]
mov ecx, dword [eax]
lea edx, [ebp - 0x188]
push edx
push eax
mov esi, eax
mov dword [ebp - 0x188], edi
call dword [ecx + 0xdc]
cmp eax, edi
jge 0x49fcbe
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
cmp dword [ebp - 0x188], edi
je 0x49fcfb
mov eax, dword [ebp - 0x180]
cmp eax, edi
jne 0x49fce0
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x180]
mov ecx, dword [eax]
push eax
mov esi, eax
call dword [ecx + 0x80]
cmp eax, edi
jge 0x49fcfb
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
mov eax, dword [ebp - 0x178]
cmp eax, edi
jne 0x49fd15
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x178]
mov edx, dword [eax]
lea ecx, [ebp - 0x188]
push ecx
push eax
mov esi, eax
mov dword [ebp - 0x188], edi
call dword [edx + 0xdc]
cmp eax, edi
jge 0x49fd3d
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
cmp dword [ebp - 0x188], edi
je 0x49fd7a
mov eax, dword [ebp - 0x178]
cmp eax, edi
jne 0x49fd5f
push 0x80004003
call fcn.004b50d0
mov eax, dword [ebp - 0x178]
mov edx, dword [eax]
push eax
mov esi, eax
call dword [edx + 0x80]
cmp eax, edi
jge 0x49fd7a
push 0x4c6e40
push esi
push eax
call fcn.004b50e0
mov eax, dword [ebp - 0x174]
cmp eax, edi
je 0x49fd90
mov dword [ebp - 0x174], edi
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x180]
cmp eax, edi
je 0x49fda6
mov dword [ebp - 0x180], edi
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov eax, dword [ebp - 0x178]
cmp eax, edi
je 0x49fdbc
mov dword [ebp - 0x178], edi
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x194]
cmp eax, edi
je 0x49fdd2
mov dword [ebp - 0x194], edi
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov eax, dword [ebp - 0x1a0]
cmp eax, edi
je 0x49fde8
mov dword [ebp - 0x1a0], edi
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x198]
cmp eax, edi
je 0x49fdfe
mov dword [ebp - 0x198], edi
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov eax, dword [ebp - 0x17c]
cmp eax, edi
je 0x49fe14
mov dword [ebp - 0x17c], edi
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov ebx, dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov esi, 0x16
cmp word [ebp - 0x1dc], si
je 0x49fe42
lea edx, [ebp - 0x1dc]
push edx
call ebx
cmp eax, edi
jge 0x49fe3b
push eax
call fcn.004b50d0
mov word [ebp - 0x1dc], si
cmp word [ebp - 0x1ec], si
mov dword [ebp - 0x1d4], edi
je 0x49fe6b
lea eax, [ebp - 0x1ec]
push eax
call ebx
cmp eax, edi
jge 0x49fe64
push eax
call fcn.004b50d0
mov word [ebp - 0x1ec], si
cmp word [ebp - 0x270], si
mov dword [ebp - 0x1e4], edi
je 0x49fe94
lea ecx, [ebp - 0x270]
push ecx
call ebx
cmp eax, edi
jge 0x49fe8d
push eax
call fcn.004b50d0
mov word [ebp - 0x270], si
cmp word [ebp - 0x280], si
mov dword [ebp - 0x268], edi
je 0x49febd
lea edx, [ebp - 0x280]
push edx
call ebx
cmp eax, edi
jge 0x49feb6
push eax
call fcn.004b50d0
mov word [ebp - 0x280], si
cmp word [ebp - 0x450], si
mov dword [ebp - 0x278], edi
je 0x49fee6
lea eax, [ebp - 0x450]
push eax
call ebx
cmp eax, edi
jge 0x49fedf
push eax
call fcn.004b50d0
mov word [ebp - 0x450], si
mov dword [ebp - 0x448], edi
mov eax, dword [ebp - 0x1c8]
test eax, eax
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov dword [ebp - 4], 0x10
je 0x49ff09
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x198]
test eax, eax
mov byte [ebp - 4], 0xf
je 0x49ff1d
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov eax, dword [ebp - 0x1a0]
test eax, eax
mov byte [ebp - 4], 0xe
je 0x49ff31
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x17c]
test eax, eax
mov byte [ebp - 4], 0xd
je 0x49ff45
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov eax, dword [ebp - 0x178]
test eax, eax
mov byte [ebp - 4], 0xc
je 0x49ff59
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x180]
test eax, eax
mov byte [ebp - 4], 0xb
je 0x49ff6d
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov eax, dword [ebp - 0x174]
test eax, eax
mov byte [ebp - 4], 0xa
je 0x49ff81
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x194]
test eax, eax
mov byte [ebp - 4], 9
je 0x49ff95
mov edx, dword [eax]
push eax
call dword [edx + 8]
lea eax, [ebp - 0x5f0]
push eax
mov byte [ebp - 4], 8
call esi
test eax, eax
jge 0x49ffac
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x710]
push ecx
mov byte [ebp - 4], 7
call esi
test eax, eax
jge 0x49ffc3
push eax
call fcn.004b50d0
lea edx, [ebp - 0x730]
push edx
mov byte [ebp - 4], 6
call esi
test eax, eax
jge 0x49ffda
push eax
call fcn.004b50d0
lea eax, [ebp - 0x750]
push eax
mov byte [ebp - 4], 5
call esi
test eax, eax
jge 0x49fff1
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x2d0]
push ecx
mov byte [ebp - 4], 4
call esi
test eax, eax
jge 0x4a0008
push eax
call fcn.004b50d0
lea edx, [ebp - 0x270]
push edx
mov byte [ebp - 4], 3
call esi
test eax, eax
jge 0x4a001f
push eax
call fcn.004b50d0
lea eax, [ebp - 0x450]
push eax
mov byte [ebp - 4], 2
call esi
test eax, eax
jge 0x4a0036
push eax
call fcn.004b50d0
lea ecx, [ebp - 0x280]
push ecx
mov byte [ebp - 4], 1
call esi
test eax, eax
jge 0x4a004d
push eax
call fcn.004b50d0
lea edx, [ebp - 0x1ec]
push edx
mov byte [ebp - 4], 0
call esi
test eax, eax
jge 0x4a0064
push eax
call fcn.004b50d0
lea eax, [ebp - 0x1dc]
push eax
mov dword [ebp - 4], 0xffffffff
call esi
test eax, eax
jge 0x4a007e
push eax
call fcn.004b50d0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x14]
call fcn.004b4b61
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret