Function at 0x401fb0
Capabilities:
Contain obfuscated stackstrings
Encode data using base64
Get hostname
Reference sql statements
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x40c071
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x570
push ebx
push esi
push edi
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x10], esp
call sub.MFC42.DLL_CString::CString
xor ebx, ebx
lea ecx, [ebp - 0xe8]
mov dword [ebp - 4], ebx
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 1
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 2
call sub.MFC42.DLL_CString::CString
push 0x410be8
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 3
call sub.MFC42.DLL_CString::CString_1
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 4
call sub.MFC42.DLL_CString::CString
lea eax, [ebp - 0x18c]
mov byte [ebp - 4], 5
push eax
push 0x461664
mov dword [ebp - 0x18c], 0x32
call dword [sym.imp.KERNEL32.dll_GetComputerNameA]
push 0x461664
call dword [sym.imp.MSVCRT.dll__strupr]
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea eax, [ebp - 0x57c]
mov edx, ecx
mov esi, edi
mov edi, 0x461664
push eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push 0x410878
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.00401f50
add esp, 0xc
lea ecx, [ebp - 0x57c]
push ecx
mov ecx, 0x461698
call fcn.0040ae56
mov dword [0x4616dc], ebx
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x14], ebx
mov word [ebp - 0x108], bx
push ebx
call dword [sym.imp.ole32.dll_CoInitialize]
lea edx, [ebp - 0x30]
push edx
call dword [sym.imp.OLEAUT32.dll_VariantClear]
mov eax, str.ADODB.Connection
mov byte [ebp - 4], 0xa
test eax, eax
je 0x40217c
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov esi, eax
inc esi
lea eax, [esi + esi]
add eax, 3
and al, 0xfc
call fcn.0040b250
mov edi, esp
push esi
push edi
push 0xffffffffffffffff
push str.ADODB.Connection
push ebx
push ebx
mov word [edi], bx
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
jne 0x402116
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
test eax, eax
je 0x402126
call esi
and eax, 0xffff
or eax, 0x80070000
jmp 0x402122
push 7
push ebx
push edi
lea ecx, [ebp - 0x40]
call fcn.00406270
cmp eax, ebx
jl 0x40217c
push ebx
push ecx
mov ecx, esp
mov dword [ebp - 0x5c], esp
push 0x410be8
call fcn.00406390
push ecx
mov byte [ebp - 4], 0xb
mov ecx, esp
mov dword [ebp - 0xe4], esp
push 0x410be8
call fcn.00406390
push ecx
mov byte [ebp - 4], 0xc
mov ecx, esp
mov dword [ebp - 0xd0], esp
push str.ProviderMicrosoft.Jet.OLEDB.4.0_Data_Source_d:DynamicsAPPConfigDB.mdb
call fcn.00406390
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 0xd
call fcn.00406250
mov ecx, eax
mov byte [ebp - 4], 0xa
call fcn.00406810
push str._SELECT_PortID_PortName_Parameter_ResponseTime_AssPortID_LogicNode_MasterPort_PortType_SockPort_MasterProtocol_
lea ecx, [ebp - 0x20]
mov dword [ebp - 4], 9
call fcn.0040ae56
push str.AssProtocol_FROM_Computer_Port_WHERE_Port.ProtocolID__36_and_Port.ComputerID__Computer.ComputerID
lea ecx, [ebp - 0x20]
call sub.MFC42.DLL_CString::operator_1
push str._and___ucase_ComputerName__
lea ecx, [ebp - 0x20]
call sub.MFC42.DLL_CString::operator_1
push 0x461664
lea ecx, [ebp - 0x20]
call sub.MFC42.DLL_CString::operator_1
push str.__order_by_PortID
lea ecx, [ebp - 0x20]
call sub.MFC42.DLL_CString::operator_1
lea edx, [ebp - 0x108]
push 1
push edx
lea ecx, [ebp - 0x20]
call fcn.00405f50
push ecx
mov ecx, esp
mov dword [ebp - 0x5c], esp
push eax
call fcn.00406390
lea eax, [ebp - 0x3c]
lea ecx, [ebp - 0x40]
push eax
mov byte [ebp - 4], 9
call fcn.00406250
mov ecx, eax
call fcn.00406740
mov ecx, dword [eax]
push ecx
lea ecx, [ebp - 0x14]
call fcn.00406350
mov eax, dword [ebp - 0x3c]
cmp eax, ebx
je 0x402210
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov eax, dword [ebp - 0x14]
cmp eax, ebx
jne 0x40222a
push 0x80004003
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
lea edx, [ebp - 0x1a]
push edx
push eax
mov esi, eax
call dword [ecx + 0x50]
cmp eax, ebx
jge 0x402246
push 0x410700
push esi
push eax
call fcn.0040b6ef
cmp word [ebp - 0x1a], bx
jne 0x403255
cmp dword [0x461710], 0x20
jge 0x403249
push str.PortID
mov word [ebp - 0x170], 8
call fcn.0040b610
cmp eax, ebx
mov dword [ebp - 0x168], eax
jne 0x40228d
mov eax, str.PortID
test eax, eax
je 0x40228d
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x12
cmp eax, ebx
jne 0x4022a2
push 0x80004003
call fcn.0040b6e1
lea ecx, [ebp - 0x170]
lea edx, [ebp - 0xf8]
push ecx
mov ecx, dword [ebp - 0x14]
push edx
call fcn.004069b0
mov esi, eax
cmp word [esi], 3
jne 0x40243a
mov esi, dword [esi + 8]
jmp 0x40246a
lea eax, [ebp - 0x78]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
push esi
push 3
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 0x14
call fcn.00406640
mov esi, dword [ebp - 0x70]
lea ecx, [ebp - 0x78]
push ecx
mov byte [ebp - 4], 0x13
call edi
cmp eax, ebx
jge 0x40246a
push eax
call fcn.0040b6e1
mov eax, dword [0x461710]
mov byte [ebp - 4], 0x12
lea edx, [eax + eax*4]
shl edx, 6
add edx, eax
shl edx, 5
add edx, eax
lea eax, [ebp - 0xf8]
push eax
mov dword [edx*4 + 0x461718], esi
call edi
cmp eax, ebx
jge 0x40249a
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x170]
mov byte [ebp - 4], 9
push ecx
call edi
cmp eax, ebx
jge 0x4024b1
push eax
call fcn.0040b6e1
mov eax, dword [0x461710]
push str.ResponseTime
mov word [ebp - 0x184], 8
lea edx, [eax + eax*4]
shl edx, 6
add edx, eax
shl edx, 5
add edx, eax
imul eax, eax, 0x768e8
mov ecx, dword [edx*4 + 0x461718]
mov dword [eax + 0x619040], ecx
call fcn.0040b610
cmp eax, ebx
mov dword [ebp - 0x17c], eax
jne 0x402506
mov edx, str.ResponseTime
test edx, edx
je 0x402506
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x15
cmp eax, ebx
jne 0x40251b
push 0x80004003
call fcn.0040b6e1
lea eax, [ebp - 0x184]
lea ecx, [ebp - 0x128]
push eax
push ecx
mov ecx, dword [ebp - 0x14]
call fcn.004069b0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
lea edx, [ebp - 0x30]
push eax
push edx
mov byte [ebp - 4], 0x16
call esi
cmp eax, ebx
jge 0x40254c
push eax
call fcn.0040b6e1
lea eax, [ebp - 0x128]
mov byte [ebp - 4], 0x15
push eax
call edi
cmp eax, ebx
jge 0x402563
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x184]
mov byte [ebp - 4], 9
push ecx
call edi
cmp eax, ebx
jge 0x40257a
push eax
call fcn.0040b6e1
cmp word [ebp - 0x30], 1
jne 0x402595
mov edx, dword [0x461710]
imul edx, edx, 0x768e8
mov dword [edx + 0x619058], ebx
jmp 0x4025a9
mov eax, dword [0x461710]
mov ecx, dword [ebp - 0x28]
imul eax, eax, 0x768e8
mov dword [eax + 0x619058], ecx
push str.SockPort
mov word [ebp - 0x1cc], 8
call fcn.0040b610
cmp eax, ebx
mov dword [ebp - 0x1c4], eax
jne 0x4025d9
mov edx, str.SockPort
test edx, edx
je 0x4025d9
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x17
cmp eax, ebx
jne 0x4025ee
push 0x80004003
call fcn.0040b6e1
lea eax, [ebp - 0x1cc]
lea ecx, [ebp - 0x138]
push eax
push ecx
mov ecx, dword [ebp - 0x14]
call fcn.004069b0
lea edx, [ebp - 0x30]
push eax
push edx
mov byte [ebp - 4], 0x18
call esi
cmp eax, ebx
jge 0x402619
push eax
call fcn.0040b6e1
lea eax, [ebp - 0x138]
mov byte [ebp - 4], 0x17
push eax
call edi
cmp eax, ebx
jge 0x402630
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 4], 9
push ecx
call edi
cmp eax, ebx
jge 0x402647
push eax
call fcn.0040b6e1
cmp word [ebp - 0x30], 1
jne 0x40266c
mov eax, dword [0x461710]
lea edx, [eax + eax*4]
shl edx, 6
add edx, eax
shl edx, 5
add edx, eax
mov dword [edx*4 + 0x466758], ebx
jmp 0x40275d
push str.SockPort
mov word [ebp - 0x1bc], 8
call fcn.0040b610
cmp eax, ebx
mov dword [ebp - 0x1b4], eax
jne 0x40269c
mov eax, str.SockPort
test eax, eax
je 0x40269c
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x19
cmp eax, ebx
jne 0x4026b1
push 0x80004003
call fcn.0040b6e1
lea ecx, [ebp - 0x1bc]
lea edx, [ebp - 0x118]
push ecx
mov ecx, dword [ebp - 0x14]
push edx
call fcn.004069b0
mov esi, eax
cmp word [esi], 3
jne 0x4026d4
mov esi, dword [esi + 8]
jmp 0x402710
lea eax, [ebp - 0x1e0]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
push esi
push 3
lea ecx, [ebp - 0x1e0]
mov byte [ebp - 4], 0x1b
call fcn.00406640
mov esi, dword [ebp - 0x1d8]
lea ecx, [ebp - 0x1e0]
push ecx
mov byte [ebp - 4], 0x1a
call edi
cmp eax, ebx
jge 0x402710
push eax
call fcn.0040b6e1
lea edx, [ebp - 0x118]
mov byte [ebp - 4], 0x19
push edx
call edi
cmp eax, ebx
jge 0x402727
push eax
call fcn.0040b6e1
lea eax, [ebp - 0x1bc]
mov byte [ebp - 4], 9
push eax
call edi
cmp eax, ebx
jge 0x40273e
push eax
call fcn.0040b6e1
mov eax, dword [0x461710]
lea ecx, [eax + eax*4]
shl ecx, 6
add ecx, eax
shl ecx, 5
add ecx, eax
mov dword [ecx*4 + 0x466758], esi
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
push str.PortType
mov word [ebp - 0x1ac], 8
call fcn.0040b610
cmp eax, ebx
mov dword [ebp - 0x1a4], eax
jne 0x40278d
mov edx, str.PortType
test edx, edx
je 0x40278d
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x1c
cmp eax, ebx
jne 0x4027a2
push 0x80004003
call fcn.0040b6e1
lea eax, [ebp - 0x1ac]
lea ecx, [ebp - 0x260]
push eax
push ecx
mov ecx, dword [ebp - 0x14]
call fcn.004069b0
lea edx, [ebp - 0x30]
push eax
push edx
mov byte [ebp - 4], 0x1d
call esi
cmp eax, ebx
jge 0x4027cd
push eax
call fcn.0040b6e1
lea eax, [ebp - 0x260]
mov byte [ebp - 4], 0x1c
push eax
call edi
cmp eax, ebx
jge 0x4027e4
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x1ac]
mov byte [ebp - 4], 9
push ecx
call edi
cmp eax, ebx
jge 0x4027fb
push eax
call fcn.0040b6e1
cmp word [ebp - 0x30], 1
jne 0x402820
mov eax, dword [0x461710]
lea edx, [eax + eax*4]
shl edx, 6
add edx, eax
shl edx, 5
add edx, eax
mov dword [edx*4 + 0x466758], ebx
jmp 0x40290f
push str.PortType
mov word [ebp - 0x19c], 8
call fcn.0040b610
cmp eax, ebx
mov dword [ebp - 0x194], eax
jne 0x402850
mov eax, str.PortType
test eax, eax
je 0x402850
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x1e
cmp eax, ebx
jne 0x402865
push 0x80004003
call fcn.0040b6e1
lea ecx, [ebp - 0x19c]
lea edx, [ebp - 0x250]
push ecx
mov ecx, dword [ebp - 0x14]
push edx
call fcn.004069b0
mov esi, eax
cmp word [esi], 3
jne 0x402888
mov esi, dword [esi + 8]
jmp 0x4028c4
lea eax, [ebp - 0x160]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
push esi
push 3
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 0x20
call fcn.00406640
mov esi, dword [ebp - 0x158]
lea ecx, [ebp - 0x160]
push ecx
mov byte [ebp - 4], 0x1f
call edi
cmp eax, ebx
jge 0x4028c4
push eax
call fcn.0040b6e1
lea edx, [ebp - 0x250]
mov byte [ebp - 4], 0x1e
push edx
call edi
cmp eax, ebx
jge 0x4028db
push eax
call fcn.0040b6e1
lea eax, [ebp - 0x19c]
mov byte [ebp - 4], 9
push eax
call edi
cmp eax, ebx
jge 0x4028f2
push eax
call fcn.0040b6e1
cmp esi, ebx
jne 0x40290f
mov eax, dword [0x461710]
lea ecx, [eax + eax*4]
shl ecx, 6
add ecx, eax
shl ecx, 5
add ecx, eax
mov dword [ecx*4 + 0x466758], ebx
push str.PortName
mov word [ebp - 0x148], 8
call fcn.0040b610
cmp eax, ebx
mov dword [ebp - 0x140], eax
jne 0x40293f
mov edx, str.PortName
test edx, edx
je 0x40293f
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x21
cmp eax, ebx
jne 0x402954
push 0x80004003
call fcn.0040b6e1
lea eax, [ebp - 0x148]
lea ecx, [ebp - 0x270]
push eax
push ecx
mov ecx, dword [ebp - 0x14]
call fcn.004069b0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
lea edx, [ebp - 0x30]
push eax
push edx
mov byte [ebp - 4], 0x22
call esi
cmp eax, ebx
jge 0x402985
push eax
call fcn.0040b6e1
lea eax, [ebp - 0x270]
mov byte [ebp - 4], 0x21
push eax
call edi
cmp eax, ebx
jge 0x40299c
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x148]
mov byte [ebp - 4], 9
push ecx
call edi
cmp eax, ebx
jge 0x4029b3
push eax
call fcn.0040b6e1
cmp word [ebp - 0x30], 1
jne 0x4029de
mov eax, dword [ebp - 0x14]
cmp eax, ebx
jne 0x4029ce
push 0x80004003
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
push eax
mov esi, eax
call dword [edx + 0x90]
jmp 0x403230
mov eax, dword [ebp - 0x28]
lea ecx, [ebp - 0x18]
push eax
call sub.MFC42.DLL_CString::operator_2
push 0x20
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::Remove
mov ecx, dword [ebp - 0x18]
push 0x410be8
push ecx
call dword [sym.imp.MSVCRT.dll__mbscmp]
add esp, 8
test eax, eax
jne 0x402a13
mov eax, dword [ebp - 0x14]
cmp eax, ebx
jne 0x4029ce
jmp 0x4029c1
lea eax, [ebp - 0x18]
push eax
mov eax, dword [0x461710]
lea ecx, [eax + eax*4]
shl ecx, 6
add ecx, eax
shl ecx, 5
add ecx, eax
lea ecx, [ecx*4 + 0x46171c]
call fcn.0040ae08
mov ecx, dword [0x461710]
lea eax, [ecx + ecx*4]
shl eax, 6
add eax, ecx
shl eax, 5
add eax, ecx
shl eax, 2
lea edx, [eax + 0x46171c]
lea ecx, [eax + 0x466760]
push edx
call fcn.0040ae08
push str.Parameter
mov word [ebp - 0xcc], 8
call fcn.0040b610
cmp eax, ebx
mov dword [ebp - 0xc4], eax
jne 0x402a8d
mov eax, str.Parameter
test eax, eax
je 0x402a8d
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x23
cmp eax, ebx
jne 0x402aa2
push 0x80004003
call fcn.0040b6e1
lea ecx, [ebp - 0xcc]
lea edx, [ebp - 0x230]
push ecx
mov ecx, dword [ebp - 0x14]
push edx
call fcn.004069b0
push eax
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x24
call esi
cmp eax, ebx
jge 0x402acd
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0x23
push ecx
call edi
cmp eax, ebx
jge 0x402ae4
push eax
call fcn.0040b6e1
lea edx, [ebp - 0xcc]
mov byte [ebp - 4], 9
push edx
call edi
cmp eax, ebx
jge 0x402afb
push eax
call fcn.0040b6e1
cmp word [ebp - 0x30], 1
jne 0x402b27
mov eax, dword [0x461710]
push 0x410be8
lea ecx, [eax + eax*4]
shl ecx, 6
add ecx, eax
shl ecx, 5
add ecx, eax
lea ecx, [ecx*4 + 0x461734]
call fcn.0040ae56
jmp 0x402b75
mov edx, dword [ebp - 0x28]
lea ecx, [ebp - 0x18]
push edx
call sub.MFC42.DLL_CString::operator_2
push 0x20
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::Remove
mov eax, dword [ebp - 0x18]
push 0x410be8
push eax
call dword [sym.imp.MSVCRT.dll__mbscmp]
add esp, 8
test eax, eax
je 0x402b02
mov eax, dword [0x461710]
lea edx, [ebp - 0x18]
push edx
lea ecx, [eax + eax*4]
shl ecx, 6
add ecx, eax
shl ecx, 5
add ecx, eax
lea ecx, [ecx*4 + 0x461734]
call fcn.0040ae08
push 0x410664
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::Find
mov esi, eax
lea edx, [ebp - 0x3c]
push esi
push edx
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::Left
push eax
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x25
call fcn.0040ae08
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 9
call fcn.0040add2
lea eax, [ebp - 0x44]
push eax
mov eax, dword [0x461710]
lea ecx, [eax + eax*4]
shl ecx, 6
add ecx, eax
shl ecx, 5
add ecx, eax
lea ecx, [ecx*4 + 0x461720]
call fcn.0040ae08
mov edx, dword [ebp - 0x18]
lea ecx, [ebp - 0x18]
mov eax, dword [edx - 8]
sub eax, esi
dec eax
push eax
lea eax, [ebp - 0x48]
push eax
call sub.MFC42.DLL_CString::Right
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x26
call fcn.0040ae08
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 9
call fcn.0040add2
push 0x410664
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::Find
mov esi, eax
lea ecx, [ebp - 0x34]
push esi
push ecx
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::Left
push eax
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x27
call fcn.0040ae08
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 9
call fcn.0040add2
mov eax, dword [0x461710]
lea edx, [ebp - 0x44]
push edx
lea ecx, [eax + eax*4]
shl ecx, 6
add ecx, eax
shl ecx, 5
add ecx, eax
lea ecx, [ecx*4 + 0x461724]
call fcn.0040ae08
mov edx, dword [ebp - 0x18]
lea ecx, [ebp - 0x18]
mov eax, dword [edx - 8]
sub eax, esi
dec eax
push eax
lea eax, [ebp - 0x4c]
push eax
call sub.MFC42.DLL_CString::Right
push eax
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x28
call fcn.0040ae08
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 9
call fcn.0040add2
push 0x410664
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::Find
mov esi, eax
lea ecx, [ebp - 0x54]
push esi
push ecx
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::Left
push eax
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x29
call fcn.0040ae08
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 9
call fcn.0040add2
mov eax, dword [0x461710]
lea edx, [ebp - 0x44]
push edx
lea ecx, [eax + eax*4]
shl ecx, 6
add ecx, eax
shl ecx, 5
add ecx, eax
lea ecx, [ecx*4 + 0x46172c]
call fcn.0040ae08
mov edx, dword [ebp - 0x18]
lea ecx, [ebp - 0x18]
mov eax, dword [edx - 8]
sub eax, esi
dec eax
push eax
lea eax, [ebp - 0x58]
push eax
call sub.MFC42.DLL_CString::Right
push eax
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x2a
call fcn.0040ae08
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 9
call fcn.0040add2
mov eax, dword [0x461710]
lea ecx, [ebp - 0x44]
push ecx
lea edx, [eax + eax*4]
shl edx, 6
add edx, eax
shl edx, 5
add edx, eax
lea ecx, [edx*4 + 0x461728]
call fcn.0040ae08
push str.LogicNode
mov word [ebp - 0xe0], 8
call fcn.0040b610
cmp eax, ebx
mov dword [ebp - 0xd8], eax
jne 0x402d59
mov eax, str.LogicNode
test eax, eax
je 0x402d59
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x2b
cmp eax, ebx
jne 0x402d6e
push 0x80004003
call fcn.0040b6e1
lea ecx, [ebp - 0xe0]
lea edx, [ebp - 0x200]
push ecx
mov ecx, dword [ebp - 0x14]
push edx
call fcn.004069b0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
push eax
lea eax, [ebp - 0x30]
mov byte [ebp - 4], 0x2c
push eax
call esi
cmp eax, ebx
jge 0x402d9f
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 0x2b
push ecx
call edi
cmp eax, ebx
jge 0x402db6
push eax
call fcn.0040b6e1
lea edx, [ebp - 0xe0]
mov byte [ebp - 4], 9
push edx
call edi
cmp eax, ebx
jge 0x402dcd
push eax
call fcn.0040b6e1
mov eax, dword [0x461710]
imul eax, eax, 0x768e8
cmp word [ebp - 0x30], 1
mov dword [eax + 0x619044], ebx
mov dword [eax + 0x619048], ebx
mov dword [eax + 0x61904c], ebx
mov dword [eax + 0x619050], ebx
mov dword [eax + 0x619054], 0xffffffff
jne 0x402e1e
mov edx, dword [0x461710]
mov eax, dword [ebp - 0x14]
inc edx
cmp eax, ebx
mov dword [0x461710], edx
jne 0x403225
jmp 0x403218
mov edx, dword [ebp - 0x28]
lea ecx, [ebp - 0x18]
push edx
call sub.MFC42.DLL_CString::operator_2
push 0x20
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::Remove
mov eax, dword [ebp - 0x18]
push 0x410be8
push eax
call dword [sym.imp.MSVCRT.dll__mbscmp]
add esp, 8
test eax, eax
je 0x402e01
push str.MasterPort
mov word [ebp - 0x9c], 8
call fcn.0040b610
cmp eax, ebx
mov dword [ebp - 0x94], eax
jne 0x402e7a
mov edx, str.MasterPort
test edx, edx
je 0x402e7a
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x2d
cmp eax, ebx
jne 0x402e8f
push 0x80004003
call fcn.0040b6e1
lea eax, [ebp - 0x9c]
lea ecx, [ebp - 0x210]
push eax
push ecx
mov ecx, dword [ebp - 0x14]
call fcn.004069b0
lea edx, [ebp - 0x30]
push eax
push edx
mov byte [ebp - 4], 0x2e
call esi
cmp eax, ebx
jge 0x402eba
push eax
call fcn.0040b6e1
lea eax, [ebp - 0x210]
mov byte [ebp - 4], 0x2d
push eax
call edi
cmp eax, ebx
jge 0x402ed1
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 9
push ecx
call edi
cmp eax, ebx
jge 0x402ee8
push eax
call fcn.0040b6e1
mov eax, 1
cmp word [ebp - 0x30], ax
je 0x402f0c
cmp dword [ebp - 0x28], ebx
jne 0x402f0c
mov ecx, dword [0x461710]
imul ecx, ecx, 0x768e8
mov dword [ecx + 0x619044], eax
jmp 0x402f1e
mov edx, dword [0x461710]
imul edx, edx, 0x768e8
mov dword [edx + 0x619044], ebx
push str.AssPortID
mov word [ebp - 0xac], 8
call fcn.0040b610
cmp eax, ebx
mov dword [ebp - 0xa4], eax
jne 0x402f4e
mov eax, str.AssPortID
test eax, eax
je 0x402f4e
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x2f
cmp eax, ebx
jne 0x402f63
push 0x80004003
call fcn.0040b6e1
lea ecx, [ebp - 0xac]
lea edx, [ebp - 0x240]
push ecx
mov ecx, dword [ebp - 0x14]
push edx
call fcn.004069b0
push eax
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x30
call esi
cmp eax, ebx
jge 0x402f8e
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x240]
mov byte [ebp - 4], 0x2f
push ecx
call edi
cmp eax, ebx
jge 0x402fa5
push eax
call fcn.0040b6e1
lea edx, [ebp - 0xac]
mov byte [ebp - 4], 9
push edx
call edi
cmp eax, ebx
jge 0x402fbc
push eax
call fcn.0040b6e1
cmp word [ebp - 0x30], 1
jne 0x402fde
mov eax, dword [0x461710]
imul eax, eax, 0x768e8
mov dword [eax + 0x619048], ebx
lea eax, [eax + 0x61904c]
mov dword [eax], ebx
jmp 0x403003
mov ecx, dword [0x461710]
mov edx, dword [ebp - 0x28]
imul ecx, ecx, 0x768e8
mov dword [ecx + 0x61904c], edx
lea eax, [ecx + 0x61904c]
mov dword [ecx + 0x619048], 1
mov eax, dword [eax]
lea ecx, [ebp - 0x8c]
push eax
push 0x41063c
push ecx
mov dword [0x4616dc], 1
call sub.MFC42.DLL_CString::Format
add esp, 0xc
mov word [ebp - 0xbc], 8
push str.AssProtocol
call fcn.0040b610
cmp eax, ebx
mov dword [ebp - 0xb4], eax
jne 0x403054
mov edx, str.AssProtocol
test edx, edx
je 0x403054
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x31
cmp eax, ebx
jne 0x403069
push 0x80004003
call fcn.0040b6e1
lea eax, [ebp - 0xbc]
lea ecx, [ebp - 0x220]
push eax
push ecx
mov ecx, dword [ebp - 0x14]
call fcn.004069b0
lea edx, [ebp - 0x30]
push eax
push edx
mov byte [ebp - 4], 0x32
call esi
cmp eax, ebx
jge 0x403094
push eax
call fcn.0040b6e1
lea eax, [ebp - 0x220]
mov byte [ebp - 4], 0x31
push eax
call edi
cmp eax, ebx
jge 0x4030ab
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0xbc]
mov byte [ebp - 4], 9
push ecx
call edi
cmp eax, ebx
jge 0x4030c2
push eax
call fcn.0040b6e1
mov ecx, dword [0x461710]
cmp word [ebp - 0x30], 1
mov eax, ecx
jne 0x4030df
imul eax, eax, 0x768e8
mov dword [eax + 0x619050], ebx
jmp 0x4030ee
imul eax, eax, 0x768e8
mov edx, dword [ebp - 0x28]
mov dword [eax + 0x619050], edx
cmp dword [eax + 0x619050], ebx
jle 0x4031e7
push str.MasterProtocol
mov word [ebp - 0x88], 8
call fcn.0040b610
cmp eax, ebx
mov dword [ebp - 0x80], eax
jne 0x403127
mov eax, str.MasterProtocol
test eax, eax
je 0x403127
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x33
cmp eax, ebx
jne 0x40313c
push 0x80004003
call fcn.0040b6e1
lea ecx, [ebp - 0x88]
lea edx, [ebp - 0x1f0]
push ecx
mov ecx, dword [ebp - 0x14]
push edx
call fcn.004069b0
push eax
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x34
call esi
cmp eax, ebx
jge 0x403167
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x1f0]
mov byte [ebp - 4], 0x33
push ecx
call edi
cmp eax, ebx
jge 0x40317e
push eax
call fcn.0040b6e1
lea edx, [ebp - 0x88]
mov byte [ebp - 4], 9
push edx
call edi
cmp eax, ebx
jge 0x403195
push eax
call fcn.0040b6e1
mov ecx, dword [0x461710]
cmp word [ebp - 0x30], 1
mov eax, ecx
jne 0x4031b6
imul eax, eax, 0x768e8
mov dword [eax + 0x619054], 0xffffffff
jmp 0x4031c5
imul eax, eax, 0x768e8
mov edx, dword [ebp - 0x28]
mov dword [eax + 0x619054], edx
mov esi, dword [eax + 0x619054]
xor edx, edx
cmp esi, ebx
sete dl
cmp edx, ebx
mov dword [eax + 0x619054], edx
jne 0x40320a
cmp dword [eax + 0x619044], 1
jne 0x40320a
jmp 0x4031f0
cmp dword [eax + 0x619044], 1
jne 0x40320a
lea edx, [ecx + ecx*4]
mov eax, dword [eax + 0x61904c]
shl edx, 6
add edx, ecx
shl edx, 5
add edx, ecx
mov dword [edx*4 + 0x461718], eax
mov eax, dword [ebp - 0x14]
inc ecx
cmp eax, ebx
mov dword [0x461710], ecx
jne 0x403225
push 0x80004003
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
push eax
mov esi, eax
call dword [ecx + 0x90]
cmp eax, ebx
jge 0x402216
push 0x410700
push esi
push eax
call fcn.0040b6ef
jmp 0x402216
push ebx
push ebx
push str.IEC103s_port_cant_be_over_32_
call sub.MFC42.DLL_AfxMessageBox
mov eax, dword [ebp - 0x14]
cmp eax, ebx
jne 0x403269
push 0x80004003
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
push eax
mov esi, eax
call dword [edx + 0x80]
cmp eax, ebx
jge 0x403284
push 0x410700
push esi
push eax
call fcn.0040b6ef
cmp dword [0x461710], 1
jge 0x4032ad
push 4
push str.Message_
push str.The_computer_hasnt_been_configed_Iec103_protocol_Exit_the_program_running_
push ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp eax, 6
jne 0x4032ad
push 1
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov eax, dword [0x461710]
mov dword [ebp - 0x50], ebx
cmp eax, ebx
jle 0x403895
mov ebx, 0x461718
mov edi, 0x619054
xor esi, esi
mov eax, 1
mov dword [edi + 8], esi
mov dword [edi + 0xc], esi
mov dword [edi + 0x10], eax
mov dword [edi + 0x14], esi
mov dword [edi + 0x18], esi
mov ecx, dword [edi - 0x10]
cmp ecx, eax
jne 0x4035cc
mov eax, dword [edi - 8]
lea ecx, [ebp - 0x60]
push eax
push 0x41063c
push ecx
call sub.MFC42.DLL_CString::Format
add esp, 0xc
lea edx, [ebp - 0x60]
lea eax, [ebp - 0x3c]
push edx
push str._SELECT_AssProtocol_MasterProtocol_FROM_Port_WHERE_PortID_
push eax
call sub.MFC42.DLL_operator_2
push eax
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x35
call fcn.0040ae08
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 9
call fcn.0040add2
lea ecx, [ebp - 0x108]
push 1
push ecx
lea ecx, [ebp - 0x20]
call fcn.00405f50
push ecx
mov ecx, esp
mov dword [ebp - 0x5c], esp
push eax
call fcn.00406390
lea edx, [ebp - 0x48]
lea ecx, [ebp - 0x40]
push edx
mov byte [ebp - 4], 9
call fcn.00406250
mov ecx, eax
call fcn.00406740
mov eax, dword [eax]
lea ecx, [ebp - 0x14]
push eax
call fcn.00406350
mov eax, dword [ebp - 0x48]
cmp eax, esi
je 0x403374
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x14]
cmp eax, esi
jne 0x403388
push 0x80004003
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
lea ecx, [ebp - 0x1a]
push ecx
push eax
mov esi, eax
call dword [edx + 0x50]
test eax, eax
jge 0x4033a4
push 0x410700
push esi
push eax
call fcn.0040b6ef
cmp word [ebp - 0x1a], 0
jne 0x403593
push str.AssProtocol
mov word [ebp - 0x88], 8
call fcn.0040b610
test eax, eax
mov dword [ebp - 0x80], eax
jne 0x4033dc
mov edx, str.AssProtocol
test edx, edx
je 0x4033dc
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x37
test eax, eax
jne 0x4033f1
push 0x80004003
call fcn.0040b6e1
lea eax, [ebp - 0x88]
lea ecx, [ebp - 0xf8]
push eax
push ecx
mov ecx, dword [ebp - 0x14]
call fcn.004069b0
lea edx, [ebp - 0x30]
push eax
push edx
mov byte [ebp - 4], 0x38
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
test eax, eax
jge 0x403420
push eax
call fcn.0040b6e1
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0xf8]
push eax
mov byte [ebp - 4], 0x37
call esi
test eax, eax
jge 0x40343d
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 9
push ecx
call esi
test eax, eax
jge 0x403454
push eax
call fcn.0040b6e1
cmp word [ebp - 0x30], 1
jne 0x403494
mov eax, dword [ebp - 0x14]
mov dword [edi - 4], 0
test eax, eax
mov dword [edi], 0xffffffff
jne 0x40347c
push 0x80004003
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
push eax
mov esi, eax
call dword [edx + 0x80]
test eax, eax
jge 0x40386a
jmp 0x40385e
mov eax, dword [ebp - 0x28]
cmp eax, 1
mov dword [edi - 4], eax
jl 0x403874
push str.MasterProtocol
mov word [ebp - 0xbc], 8
call fcn.0040b610
test eax, eax
mov dword [ebp - 0xb4], eax
jne 0x4034d3
mov eax, str.MasterProtocol
test eax, eax
je 0x4034d3
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x39
test eax, eax
jne 0x4034e8
push 0x80004003
call fcn.0040b6e1
lea ecx, [ebp - 0xbc]
lea edx, [ebp - 0x128]
push ecx
mov ecx, dword [ebp - 0x14]
push edx
call fcn.004069b0
push eax
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x3a
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
test eax, eax
jge 0x403517
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 0x39
push ecx
call esi
test eax, eax
jge 0x40352e
push eax
call fcn.0040b6e1
lea edx, [ebp - 0xbc]
mov byte [ebp - 4], 9
push edx
call esi
test eax, eax
jge 0x403545
push eax
call fcn.0040b6e1
cmp word [ebp - 0x30], 1
jne 0x403585
mov eax, dword [ebp - 0x14]
mov dword [edi - 4], 0
test eax, eax
mov dword [edi], 0xffffffff
jne 0x40356d
push 0x80004003
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
push eax
mov esi, eax
call dword [ecx + 0x80]
test eax, eax
jge 0x40386a
jmp 0x40385e
mov eax, dword [ebp - 0x28]
xor edx, edx
test eax, eax
sete dl
mov dword [edi], eax
mov dword [edi], edx
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x4035a7
push 0x80004003
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
push eax
mov esi, eax
call dword [ecx + 0x80]
test eax, eax
jge 0x4035c2
push 0x410700
push esi
push eax
call fcn.0040b6ef
push 0
lea ecx, [ebp - 0x14]
call fcn.00406350
cmp dword [edi], 1
jne 0x403874
mov eax, dword [edi - 4]
lea edx, [ebp - 0x60]
push eax
push 0x41063c
push edx
mov dword [ebx], eax
call sub.MFC42.DLL_CString::Format
add esp, 0xc
lea eax, [ebp - 0x60]
lea ecx, [ebp - 0x34]
push eax
push str._SELECT_MasterPort_AssPortID_FROM_Port_WHERE_PortID_
push ecx
call sub.MFC42.DLL_operator_2
push eax
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x3b
call fcn.0040ae08
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 9
call fcn.0040add2
lea edx, [ebp - 0x108]
push 1
push edx
lea ecx, [ebp - 0x20]
call fcn.00405f50
push ecx
mov ecx, esp
mov dword [ebp - 0x5c], esp
push eax
call fcn.00406390
lea eax, [ebp - 0x4c]
lea ecx, [ebp - 0x40]
push eax
mov byte [ebp - 4], 9
call fcn.00406250
mov ecx, eax
call fcn.00406740
mov ecx, dword [eax]
push ecx
lea ecx, [ebp - 0x14]
call fcn.00406350
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x403663
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x403677
push 0x80004003
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
lea edx, [ebp - 0x36]
push edx
push eax
mov esi, eax
call dword [ecx + 0x50]
test eax, eax
jge 0x403693
push 0x410700
push esi
push eax
call fcn.0040b6ef
cmp word [ebp - 0x36], 0
jne 0x40383b
push str.MasterPort
mov word [ebp - 0xac], 8
call fcn.0040b610
test eax, eax
mov dword [ebp - 0xa4], eax
jne 0x4036ce
mov eax, str.MasterPort
test eax, eax
je 0x4036ce
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x3d
test eax, eax
jne 0x4036e3
push 0x80004003
call fcn.0040b6e1
lea ecx, [ebp - 0xac]
lea edx, [ebp - 0x138]
push ecx
mov ecx, dword [ebp - 0x14]
push edx
call fcn.004069b0
push eax
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x3e
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
test eax, eax
jge 0x403712
push eax
call fcn.0040b6e1
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea ecx, [ebp - 0x138]
push ecx
mov byte [ebp - 4], 0x3d
call esi
test eax, eax
jge 0x40372f
push eax
call fcn.0040b6e1
lea edx, [ebp - 0xac]
mov byte [ebp - 4], 9
push edx
call esi
test eax, eax
jge 0x403746
push eax
call fcn.0040b6e1
mov si, word [ebp - 0x30]
mov eax, dword [ebp - 0x28]
dec si
push str.AssPortID
neg si
sbb esi, esi
mov word [ebp - 0x9c], 8
and esi, eax
call fcn.0040b610
test eax, eax
mov dword [ebp - 0x94], eax
jne 0x403786
mov eax, str.AssPortID
test eax, eax
je 0x403786
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x3f
test eax, eax
jne 0x40379b
push 0x80004003
call fcn.0040b6e1
lea ecx, [ebp - 0x9c]
lea edx, [ebp - 0x118]
push ecx
mov ecx, dword [ebp - 0x14]
push edx
call fcn.004069b0
push eax
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x40
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
test eax, eax
jge 0x4037ca
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x118]
mov byte [ebp - 4], 0x3f
push ecx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
test eax, eax
jge 0x4037e5
push eax
call fcn.0040b6e1
lea edx, [ebp - 0x9c]
mov byte [ebp - 4], 9
push edx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
test eax, eax
jge 0x403800
push eax
call fcn.0040b6e1
cmp word [ebp - 0x30], 1
jne 0x40381c
cmp esi, 1
jne 0x403814
mov eax, dword [edi - 4]
mov dword [edi + 0x14], eax
jmp 0x40383b
mov ecx, dword [edi - 4]
mov dword [edi + 0x18], ecx
jmp 0x40383b
cmp esi, 1
jne 0x40382f
mov edx, dword [edi - 4]
mov eax, dword [ebp - 0x28]
mov dword [edi + 0x14], edx
mov dword [edi + 0x18], eax
jmp 0x40383b
mov ecx, dword [ebp - 0x28]
mov dword [edi + 0x14], ecx
mov edx, dword [edi - 4]
mov dword [edi + 0x18], edx
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x40384f
push 0x80004003
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
push eax
mov esi, eax
call dword [ecx + 0x80]
test eax, eax
jge 0x40386a
push 0x410700
push esi
push eax
call fcn.0040b6ef
push 0
lea ecx, [ebp - 0x14]
call fcn.00406350
mov eax, dword [ebp - 0x50]
mov ecx, dword [0x461710]
inc eax
add ebx, 0xa084
add edi, 0x768e8
cmp eax, ecx
mov dword [ebp - 0x50], eax
jl 0x4032c7
push 0x461664
mov ecx, 0x4616e8
call fcn.0040ae56
mov eax, dword [0x4616dc]
test eax, eax
je 0x403b06
lea edx, [ebp - 0x8c]
lea eax, [ebp - 0x3c]
push edx
push str._SELECT_ComputerName_FROM_Port_Computer_WHERE_PortID_
push eax
call sub.MFC42.DLL_operator_2
push eax
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x41
call fcn.0040ae08
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 9
call fcn.0040add2
push str._and_Port.ComputerID__Computer.ComputerID
lea ecx, [ebp - 0x20]
call sub.MFC42.DLL_CString::operator_1
lea ecx, [ebp - 0x108]
push 1
push ecx
lea ecx, [ebp - 0x20]
call fcn.00405f50
push ecx
mov ecx, esp
mov dword [ebp - 0x5c], esp
push eax
call fcn.00406390
lea edx, [ebp - 0x3c]
lea ecx, [ebp - 0x40]
push edx
mov byte [ebp - 4], 9
call fcn.00406250
mov ecx, eax
call fcn.00406740
mov eax, dword [eax]
lea ecx, [ebp - 0x14]
push eax
call fcn.00406350
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x403938
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x40394c
push 0x80004003
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
lea ecx, [ebp - 0x36]
push ecx
push eax
mov esi, eax
call dword [edx + 0x50]
test eax, eax
jge 0x403968
push 0x410700
push esi
push eax
call fcn.0040b6ef
cmp word [ebp - 0x36], 0
jne 0x403acd
push str.ComputerName
mov word [ebp - 0x88], 8
call fcn.0040b610
test eax, eax
mov dword [ebp - 0x80], eax
jne 0x4039a0
mov edx, str.ComputerName
test edx, edx
je 0x4039a0
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov bl, 0x43
test eax, eax
mov byte [ebp - 4], bl
jne 0x4039b6
push 0x80004003
call fcn.0040b6e1
lea eax, [ebp - 0x88]
lea ecx, [ebp - 0xf8]
push eax
push ecx
mov ecx, dword [ebp - 0x14]
call fcn.004069b0
lea edx, [ebp - 0x30]
push eax
push edx
mov byte [ebp - 4], 0x44
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
test eax, eax
jge 0x4039e5
push eax
call fcn.0040b6e1
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0xf8]
push eax
mov byte [ebp - 4], bl
call esi
test eax, eax
jge 0x403a01
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 9
push ecx
call esi
test eax, eax
jge 0x403a18
push eax
call fcn.0040b6e1
cmp word [ebp - 0x30], 1
jne 0x403a32
push 0
push 0
push str.Computers_ComputerName_cant_be_null_
call sub.MFC42.DLL_AfxMessageBox
jmp 0x403acd
mov edx, dword [ebp - 0x28]
lea ecx, [ebp - 0x18]
push edx
call sub.MFC42.DLL_CString::operator_2
push 0x20
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::Remove
mov eax, dword [ebp - 0x18]
push 0x410be8
push eax
call dword [sym.imp.MSVCRT.dll__mbscmp]
add esp, 8
test eax, eax
jne 0x403a6c
push eax
push eax
push str.Computers_ComputerName_cant_be_null_
call sub.MFC42.DLL_AfxMessageBox
jmp 0x403acd
lea ecx, [ebp - 0x18]
push ecx
mov ecx, 0x4616e8
call fcn.0040ae08
mov edi, dword [ebp - 0x18]
or ecx, 0xffffffff
xor eax, eax
push 0x461630
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x461630
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call dword [sym.imp.MSVCRT.dll__strupr]
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
add esp, 4
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x461630
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x403ae1
push 0x80004003
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
push eax
mov esi, eax
call dword [ecx + 0x80]
test eax, eax
jge 0x403afc
push 0x410700
push esi
push eax
call fcn.0040b6ef
push 0
lea ecx, [ebp - 0x14]
call fcn.00406350
mov eax, dword [0x461710]
mov dword [ebp - 0x50], 0
test eax, eax
jle 0x404074
mov dword [ebp - 0x1c], 0x5a2798
mov dword [ebp - 0x34], 0x461718
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp - 0x1c]
xor ebx, ebx
mov ecx, dword [eax]
mov dword [edx], 0
push ecx
lea edx, [ebp - 0x18]
push 0x410490
push edx
call sub.MFC42.DLL_CString::Format
add esp, 0xc
lea ecx, [ebp - 0x20]
push str._SELECT_DeviceID_DeviceAddr_DeviceType_DeviceDsp_FROM_Device_WHERE_PortID_
call fcn.0040ae56
lea eax, [ebp - 0x18]
lea ecx, [ebp - 0x20]
push eax
call sub.MFC42.DLL_CString::operator
push str._order_by_DeviceID
lea ecx, [ebp - 0x20]
call sub.MFC42.DLL_CString::operator_1
lea ecx, [ebp - 0x108]
push 1
push ecx
lea ecx, [ebp - 0x20]
call fcn.00405f50
push ecx
mov ecx, esp
mov dword [ebp - 0x5c], esp
push eax
call fcn.00406390
lea edx, [ebp - 0x3c]
lea ecx, [ebp - 0x40]
push edx
mov byte [ebp - 4], 9
call fcn.00406250
mov ecx, eax
call fcn.00406740
mov eax, dword [eax]
lea ecx, [ebp - 0x14]
push eax
call fcn.00406350
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x403bbc
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edx, dword [ebp - 0x1c]
lea edi, [edx + 0x1c]
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x403bd6
push 0x80004003
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
lea edx, [ebp - 0x36]
push edx
push eax
mov esi, eax
call dword [ecx + 0x50]
test eax, eax
jge 0x403bf2
push 0x410700
push esi
push eax
call fcn.0040b6ef
cmp word [ebp - 0x36], 0
jne 0x404013
cmp ebx, 0x20
jge 0x404005
push str.DeviceAddr
mov word [ebp - 0xbc], 8
call fcn.0040b610
test eax, eax
mov dword [ebp - 0xb4], eax
jne 0x403c36
mov eax, str.DeviceAddr
test eax, eax
je 0x403c36
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x46
test eax, eax
jne 0x403c4b
push 0x80004003
call fcn.0040b6e1
lea ecx, [ebp - 0xbc]
lea edx, [ebp - 0xf8]
push ecx
mov ecx, dword [ebp - 0x14]
push edx
call fcn.004069b0
mov esi, eax
cmp word [esi], 3
jne 0x403c6e
mov esi, dword [esi + 8]
jmp 0x403cab
lea eax, [ebp - 0x88]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
push esi
push 3
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x48
call fcn.00406640
mov esi, dword [ebp - 0x80]
lea ecx, [ebp - 0x88]
push ecx
mov byte [ebp - 4], 0x47
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
test eax, eax
jge 0x403cab
push eax
call fcn.0040b6e1
lea edx, [ebp - 0xf8]
mov byte [ebp - 4], 0x46
push edx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
test eax, eax
jge 0x403cc6
push eax
call fcn.0040b6e1
lea eax, [ebp - 0xbc]
mov byte [ebp - 4], 9
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
test eax, eax
jge 0x403ce1
push eax
call fcn.0040b6e1
push str.DeviceID
mov dword [edi - 8], esi
mov word [ebp - 0x9c], 8
call fcn.0040b610
test eax, eax
mov dword [ebp - 0x94], eax
jne 0x403d14
mov ecx, str.DeviceID
test ecx, ecx
je 0x403d14
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x49
test eax, eax
jne 0x403d29
push 0x80004003
call fcn.0040b6e1
mov ecx, dword [ebp - 0x14]
lea edx, [ebp - 0x9c]
lea eax, [ebp - 0x128]
push edx
push eax
call fcn.004069b0
mov esi, eax
cmp word [esi], 3
jne 0x403d4c
mov esi, dword [esi + 8]
jmp 0x403d8c
lea ecx, [ebp - 0xac]
push ecx
call dword [sym.imp.OLEAUT32.dll_VariantClear]
push esi
push 3
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 0x4b
call fcn.00406640
mov esi, dword [ebp - 0xa4]
lea edx, [ebp - 0xac]
push edx
mov byte [ebp - 4], 0x4a
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
test eax, eax
jge 0x403d8c
push eax
call fcn.0040b6e1
lea eax, [ebp - 0x128]
mov byte [ebp - 4], 0x49
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
test eax, eax
jge 0x403da7
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 9
push ecx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
test eax, eax
jge 0x403dc2
push eax
call fcn.0040b6e1
push str.DeviceType
mov dword [edi - 4], esi
mov word [ebp - 0xe0], 8
call fcn.0040b610
test eax, eax
mov dword [ebp - 0xd8], eax
jne 0x403df5
mov edx, str.DeviceType
test edx, edx
je 0x403df5
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x4c
test eax, eax
jne 0x403e0a
push 0x80004003
call fcn.0040b6e1
lea eax, [ebp - 0xe0]
lea ecx, [ebp - 0x138]
push eax
push ecx
mov ecx, dword [ebp - 0x14]
call fcn.004069b0
lea edx, [ebp - 0x30]
push eax
push edx
mov byte [ebp - 4], 0x4d
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
test eax, eax
jge 0x403e39
push eax
call fcn.0040b6e1
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x138]
push eax
mov byte [ebp - 4], 0x4c
call esi
test eax, eax
jge 0x403e56
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 9
push ecx
call esi
test eax, eax
jge 0x403e6d
push eax
call fcn.0040b6e1
mov edx, dword [ebp - 0x28]
lea ecx, [ebp - 0x18]
push edx
call sub.MFC42.DLL_CString::operator_2
push 0x20
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::Remove
mov eax, dword [ebp - 0x18]
push 0x410be8
push eax
call dword [sym.imp.MSVCRT.dll__mbscmp]
add esp, 8
test eax, eax
jne 0x403ea7
push str.NULL
mov ecx, edi
call fcn.0040ae56
jmp 0x403ec7
cmp word [ebp - 0x30], 1
jne 0x403ebc
push str.NULL
mov ecx, edi
call fcn.0040ae56
jmp 0x403ec7
mov ecx, dword [ebp - 0x28]
push ecx
mov ecx, edi
call sub.MFC42.DLL_CString::operator_2
push str.DeviceDsp
mov word [ebp - 0xcc], 8
call fcn.0040b610
test eax, eax
mov dword [ebp - 0xc4], eax
jne 0x403ef7
mov edx, str.DeviceDsp
test edx, edx
je 0x403ef7
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x4e
test eax, eax
jne 0x403f0c
push 0x80004003
call fcn.0040b6e1
lea eax, [ebp - 0xcc]
lea ecx, [ebp - 0x118]
push eax
push ecx
mov ecx, dword [ebp - 0x14]
call fcn.004069b0
lea edx, [ebp - 0x30]
push eax
push edx
mov byte [ebp - 4], 0x4f
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
test eax, eax
jge 0x403f3b
push eax
call fcn.0040b6e1
lea eax, [ebp - 0x118]
mov byte [ebp - 4], 0x4e
push eax
call esi
test eax, eax
jge 0x403f52
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0xcc]
mov byte [ebp - 4], 9
push ecx
call esi
test eax, eax
jge 0x403f69
push eax
call fcn.0040b6e1
mov edx, dword [ebp - 0x28]
lea ecx, [ebp - 0x18]
push edx
call sub.MFC42.DLL_CString::operator_2
push 0x20
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::Remove
mov eax, dword [ebp - 0x18]
push 0x410be8
push eax
call dword [sym.imp.MSVCRT.dll__mbscmp]
add esp, 8
test eax, eax
jne 0x403fa4
push str.NULL
lea ecx, [edi + 4]
call fcn.0040ae56
jmp 0x403fc6
cmp word [ebp - 0x30], 1
jne 0x403fba
push str.NULL
lea ecx, [edi + 4]
call fcn.0040ae56
jmp 0x403fc6
mov ecx, dword [ebp - 0x28]
push ecx
lea ecx, [edi + 4]
call sub.MFC42.DLL_CString::operator_2
mov eax, dword [ebp - 0x14]
inc ebx
add edi, 0x3b44
test eax, eax
jne 0x403fe1
push 0x80004003
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
push eax
mov esi, eax
call dword [edx + 0x90]
test eax, eax
jge 0x403bc2
push 0x410700
push esi
push eax
call fcn.0040b6ef
jmp 0x403bc2
push 0
push 0
push str.Ports_device_cant_be_over_32_
call sub.MFC42.DLL_AfxMessageBox
mov eax, dword [ebp - 0x1c]
mov dword [eax], ebx
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x40402c
push 0x80004003
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
push eax
mov esi, eax
call dword [ecx + 0x80]
test eax, eax
jge 0x404047
push 0x410700
push esi
push eax
call fcn.0040b6ef
mov eax, dword [ebp - 0x50]
mov esi, dword [ebp - 0x34]
mov edx, dword [ebp - 0x1c]
mov ecx, dword [0x461710]
inc eax
add esi, 0xa084
add edx, 0x768e8
cmp eax, ecx
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x1c], edx
jl 0x403b28
lea ecx, [ebp - 0x64]
call sub.MFC42.DLL_CString::CString
mov eax, dword [0x461710]
xor edx, edx
test eax, eax
mov byte [ebp - 4], 0x50
mov dword [ebp - 0x50], edx
jle 0x405989
mov eax, edx
xor ecx, ecx
imul eax, eax, 0x768e8
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x5c], eax
mov esi, dword [eax + 0x5a2798]
test esi, esi
jle 0x405978
imul ecx, ecx, 0x3b44
add eax, ecx
xor esi, esi
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x4c], esi
mov dword [eax + 0x5a27a0], esi
mov dword [eax + 0x5a27a4], esi
mov dword [eax + 0x5a279c], esi
mov dword [eax + 0x5a27a8], esi
mov edx, dword [eax + 0x5a27b0]
lea eax, [ebp - 0x18]
push edx
push 0x41063c
push eax
mov dword [ebp - 0x68], esi
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x54], esi
call sub.MFC42.DLL_CString::Format
add esp, 0xc
lea ecx, [ebp - 0x20]
push str._SELECT_PointID_PointMName_PointSName_PointType_BoardNo_PointNo_AddPara_Modulus_Revise_DeadValue_
call fcn.0040ae56
lea ecx, [ebp - 0x18]
lea edx, [ebp - 0x174]
push ecx
push str._SignalProMod_SignalType_PointDsp_FROM_Point_WHERE__DeviceID_
push edx
call sub.MFC42.DLL_operator_2
push eax
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x51
call sub.MFC42.DLL_CString::operator
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 0x50
call fcn.0040add2
push str._order_by_PointType__PointNo
lea ecx, [ebp - 0x20]
call sub.MFC42.DLL_CString::operator_1
lea eax, [ebp - 0x108]
push 1
push eax
lea ecx, [ebp - 0x20]
call fcn.00405f50
push ecx
mov ecx, esp
mov dword [ebp - 0x48], esp
push eax
call fcn.00406390
lea ecx, [ebp - 0x14c]
mov byte [ebp - 4], 0x50
push ecx
lea ecx, [ebp - 0x40]
call fcn.00406250
mov ecx, eax
call fcn.00406740
mov edx, dword [eax]
lea ecx, [ebp - 0x14]
push edx
call fcn.00406350
mov eax, dword [ebp - 0x14c]
cmp eax, esi
je 0x404196
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x4041b2
push 0x80004003
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
lea ecx, [ebp - 0x36]
push ecx
push eax
mov esi, eax
call dword [edx + 0x50]
test eax, eax
jge 0x4041ce
push 0x410700
push esi
push eax
call fcn.0040b6ef
cmp word [ebp - 0x36], 0
jne 0x405927
mov edi, 8
push str.PointType
mov word [ebp - 0x88], di
call fcn.0040b610
test eax, eax
mov dword [ebp - 0x80], eax
jne 0x404209
mov edx, str.PointType
test edx, edx
je 0x404209
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x53
test eax, eax
jne 0x40421e
push 0x80004003
call fcn.0040b6e1
lea eax, [ebp - 0x88]
lea ecx, [ebp - 0x480]
push eax
push ecx
mov ecx, dword [ebp - 0x14]
call fcn.004069b0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
lea edx, [ebp - 0x30]
push eax
push edx
mov byte [ebp - 4], 0x54
call esi
test eax, eax
jge 0x40424f
push eax
call fcn.0040b6e1
mov ebx, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x480]
push eax
mov byte [ebp - 4], 0x53
call ebx
test eax, eax
jge 0x40426c
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x50
push ecx
call ebx
test eax, eax
jge 0x404283
push eax
call fcn.0040b6e1
mov edx, dword [ebp - 0x28]
lea ecx, [ebp - 0x64]
push edx
call sub.MFC42.DLL_CString::operator_2
mov eax, dword [ebp - 0x64]
push 0x410050
push eax
call dword [sym.imp.MSVCRT.dll__mbscmp]
add esp, 8
test eax, eax
jne 0x4047ba
cmp dword [ebp - 0x4c], 0x64
jl 0x4042c2
push 0
push 0
push str.Device_YX_number_cant_be_over_100_
call sub.MFC42.DLL_AfxMessageBox
jmp 0x40419e
push str.PointMName
mov word [ebp - 0xbc], di
call fcn.0040b610
test eax, eax
mov dword [ebp - 0xb4], eax
jne 0x4042f0
mov ecx, str.PointMName
test ecx, ecx
je 0x4042f0
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x55
test eax, eax
jne 0x404305
push 0x80004003
call fcn.0040b6e1
mov ecx, dword [ebp - 0x14]
lea edx, [ebp - 0xbc]
lea eax, [ebp - 0x470]
push edx
push eax
call fcn.004069b0
lea ecx, [ebp - 0x30]
push eax
push ecx
mov byte [ebp - 4], 0x56
call esi
test eax, eax
jge 0x404330
push eax
call fcn.0040b6e1
lea edx, [ebp - 0x470]
mov byte [ebp - 4], 0x55
push edx
call ebx
test eax, eax
jge 0x404347
push eax
call fcn.0040b6e1
lea eax, [ebp - 0xbc]
mov byte [ebp - 4], 0x50
push eax
call ebx
test eax, eax
jge 0x40435e
push eax
call fcn.0040b6e1
mov ecx, dword [ebp - 0x28]
push ecx
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::operator_2
push 0x20
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::Remove
mov edx, dword [ebp - 0x18]
push 0x410be8
push edx
call dword [sym.imp.MSVCRT.dll__mbscmp]
add esp, 8
test eax, eax
jne 0x4043ba
push eax
push eax
push str.YX_ptname_cant_be_null_
call sub.MFC42.DLL_AfxMessageBox
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x4043aa
push 0x80004003
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
push eax
mov esi, eax
call dword [ecx + 0x90]
jmp 0x40543d
cmp word [ebp - 0x30], 1
jne 0x4043df
push 0
push 0
push str.YX_ptname_cant_be_null_
call sub.MFC42.DLL_AfxMessageBox
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x405432
jmp 0x405425
mov eax, dword [ebp - 0x28]
lea ecx, [ebp - 0x18]
push eax
call sub.MFC42.DLL_CString::operator_2
push 0x20
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::Remove
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::MakeUpper
mov eax, dword [ebp - 0x4c]
mov edx, dword [ebp - 0x58]
mov edi, dword [ebp - 0x18]
push str.PointID
lea ecx, [eax + eax*4]
mov word [ebp - 0x9c], 8
shl ecx, 4
lea eax, [ecx + edx]
or ecx, 0xffffffff
mov dword [ebp - 0x48], eax
lea edx, [eax + 0x5a27bc]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
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]
call fcn.0040b610
test eax, eax
mov dword [ebp - 0x94], eax
jne 0x404465
mov ecx, str.PointID
test ecx, ecx
je 0x404465
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x57
test eax, eax
jne 0x40447a
push 0x80004003
call fcn.0040b6e1
mov ecx, dword [ebp - 0x14]
lea edx, [ebp - 0x9c]
lea eax, [ebp - 0x330]
push edx
push eax
call fcn.004069b0
mov esi, eax
cmp word [esi], 3
jne 0x4044a3
mov esi, dword [esi + 8]
mov edi, dword [sym.imp.OLEAUT32.dll_VariantClear]
jmp 0x4044e1
mov edi, dword [sym.imp.OLEAUT32.dll_VariantClear]
lea ecx, [ebp - 0xac]
push ecx
call edi
push esi
push 3
lea ecx, [ebp - 0xac]
mov byte [ebp - 4], 0x59
call fcn.00406640
mov esi, dword [ebp - 0xa4]
lea edx, [ebp - 0xac]
push edx
mov byte [ebp - 4], 0x58
call ebx
test eax, eax
jge 0x4044e1
push eax
call fcn.0040b6e1
lea eax, [ebp - 0x330]
mov byte [ebp - 4], 0x57
push eax
call ebx
test eax, eax
jge 0x4044f8
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x50
push ecx
call ebx
test eax, eax
jge 0x40450f
push eax
call fcn.0040b6e1
mov edx, dword [ebp - 0x48]
push str.BoardNo
mov word [ebp - 0xcc], 8
mov dword [edx + 0x5a27f0], esi
call fcn.0040b610
test eax, eax
mov dword [ebp - 0xc4], eax
jne 0x404548
mov eax, str.BoardNo
test eax, eax
je 0x404548
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x5a
test eax, eax
jne 0x40455d
push 0x80004003
call fcn.0040b6e1
lea ecx, [ebp - 0xcc]
lea edx, [ebp - 0x3f0]
push ecx
mov ecx, dword [ebp - 0x14]
push edx
call fcn.004069b0
mov esi, eax
cmp word [esi], 3
jne 0x404580
mov esi, dword [esi + 8]
jmp 0x4045b8
lea eax, [ebp - 0xe0]
push eax
call edi
push esi
push 3
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0x5c
call fcn.00406640
mov esi, dword [ebp - 0xd8]
lea ecx, [ebp - 0xe0]
push ecx
mov byte [ebp - 4], 0x5b
call ebx
test eax, eax
jge 0x4045b8
push eax
call fcn.0040b6e1
lea edx, [ebp - 0x3f0]
mov byte [ebp - 4], 0x5a
push edx
call ebx
test eax, eax
jge 0x4045cf
push eax
call fcn.0040b6e1
lea eax, [ebp - 0xcc]
mov byte [ebp - 4], 0x50
push eax
call ebx
test eax, eax
jge 0x4045e6
push eax
call fcn.0040b6e1
mov ecx, dword [ebp - 0x48]
push str.PointNo
mov word [ebp - 0x19c], 8
mov dword [ecx + 0x5a27f4], esi
call fcn.0040b610
test eax, eax
mov dword [ebp - 0x194], eax
jne 0x40461f
mov edx, str.PointNo
test edx, edx
je 0x40461f
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x5d
test eax, eax
jne 0x404634
push 0x80004003
call fcn.0040b6e1
lea eax, [ebp - 0x19c]
lea ecx, [ebp - 0x350]
push eax
push ecx
mov ecx, dword [ebp - 0x14]
call fcn.004069b0
mov esi, eax
cmp word [esi], 3
jne 0x404657
mov esi, dword [esi + 8]
jmp 0x40468f
lea edx, [ebp - 0x148]
push edx
call edi
push esi
push 3
lea ecx, [ebp - 0x148]
mov byte [ebp - 4], 0x5f
call fcn.00406640
mov esi, dword [ebp - 0x140]
lea eax, [ebp - 0x148]
push eax
mov byte [ebp - 4], 0x5e
call ebx
test eax, eax
jge 0x40468f
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x350]
mov byte [ebp - 4], 0x5d
push ecx
call ebx
test eax, eax
jge 0x4046a6
push eax
call fcn.0040b6e1
lea edx, [ebp - 0x19c]
mov byte [ebp - 4], 0x50
push edx
call ebx
test eax, eax
jge 0x4046bd
push eax
call fcn.0040b6e1
mov edi, dword [ebp - 0x48]
push str.SignalProMod
mov word [ebp - 0x160], 8
mov dword [edi + 0x5a27f8], esi
call fcn.0040b610
xor esi, esi
mov dword [ebp - 0x158], eax
cmp eax, esi
jne 0x4046f8
mov eax, str.SignalProMod
test eax, eax
je 0x4046f8
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x60
cmp eax, esi
jne 0x40470d
push 0x80004003
call fcn.0040b6e1
lea ecx, [ebp - 0x160]
lea edx, [ebp - 0x450]
push ecx
mov ecx, dword [ebp - 0x14]
push edx
call fcn.004069b0
push eax
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x61
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
cmp eax, esi
jge 0x40473c
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x450]
mov byte [ebp - 4], 0x60
push ecx
call ebx
cmp eax, esi
jge 0x404753
push eax
call fcn.0040b6e1
lea edx, [ebp - 0x160]
mov byte [ebp - 4], 0x50
push edx
call ebx
cmp eax, esi
jge 0x40476a
push eax
call fcn.0040b6e1
mov ecx, 1
mov eax, 0x7f
cmp word [ebp - 0x30], cx
je 0x40477d
mov eax, dword [ebp - 0x28]
mov edx, eax
and edx, 0x40
cmp dl, 0x40
jne 0x40478f
mov dword [edi + 0x5a2804], ecx
jmp 0x404795
mov dword [edi + 0x5a2804], esi
test al, 0xc
jne 0x4047a1
mov dword [edi + 0x5a2800], esi
jmp 0x4047a7
mov dword [edi + 0x5a2800], ecx
mov eax, dword [ebp - 0x4c]
mov byte [edi + 0x5a2808], 0
inc eax
mov dword [ebp - 0x4c], eax
jmp 0x405908
mov eax, dword [ebp - 0x64]
push 0x41004c
push eax
call dword [sym.imp.MSVCRT.dll__mbscmp]
add esp, 8
test eax, eax
jne 0x404e79
cmp dword [ebp - 0x68], 0x32
jl 0x4047ed
push 0
push 0
push str.Device_YC_number_cant_be_over_50_
call sub.MFC42.DLL_AfxMessageBox
jmp 0x40419e
push str.PointMName
mov word [ebp - 0x1ac], di
call fcn.0040b610
test eax, eax
mov dword [ebp - 0x1a4], eax
jne 0x40481b
mov ecx, str.PointMName
test ecx, ecx
je 0x40481b
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x62
test eax, eax
jne 0x404830
push 0x80004003
call fcn.0040b6e1
mov ecx, dword [ebp - 0x14]
lea edx, [ebp - 0x1ac]
lea eax, [ebp - 0x370]
push edx
push eax
call fcn.004069b0
lea ecx, [ebp - 0x30]
push eax
push ecx
mov byte [ebp - 4], 0x63
call esi
test eax, eax
jge 0x40485b
push eax
call fcn.0040b6e1
lea edx, [ebp - 0x370]
mov byte [ebp - 4], 0x62
push edx
call ebx
test eax, eax
jge 0x404872
push eax
call fcn.0040b6e1
lea eax, [ebp - 0x1ac]
mov byte [ebp - 4], 0x50
push eax
call ebx
test eax, eax
jge 0x404889
push eax
call fcn.0040b6e1
mov ecx, dword [ebp - 0x28]
push ecx
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::operator_2
push 0x20
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::Remove
mov edx, dword [ebp - 0x18]
push 0x410be8
push edx
call dword [sym.imp.MSVCRT.dll__mbscmp]
add esp, 8
test eax, eax
je 0x404e6b
cmp word [ebp - 0x30], 1
je 0x404e6b
mov eax, dword [ebp - 0x28]
lea ecx, [ebp - 0x18]
push eax
call sub.MFC42.DLL_CString::operator_2
push 0x20
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::Remove
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::MakeUpper
mov eax, dword [ebp - 0x68]
mov edx, dword [ebp - 0x58]
mov edi, dword [ebp - 0x18]
push str.BoardNo
lea ecx, [eax + eax*4]
mov word [ebp - 0x1e0], 8
shl ecx, 4
lea eax, [ecx + edx]
or ecx, 0xffffffff
mov dword [ebp - 0x48], eax
lea edx, [eax + 0x5a46fc]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
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]
call fcn.0040b610
test eax, eax
mov dword [ebp - 0x1d8], eax
jne 0x40494a
mov ecx, str.BoardNo
test ecx, ecx
je 0x40494a
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x64
test eax, eax
jne 0x40495f
push 0x80004003
call fcn.0040b6e1
mov ecx, dword [ebp - 0x14]
lea edx, [ebp - 0x1e0]
lea eax, [ebp - 0x410]
push edx
push eax
call fcn.004069b0
mov esi, eax
cmp word [esi], 3
jne 0x404982
mov esi, dword [esi + 8]
jmp 0x4049be
lea ecx, [ebp - 0x1bc]
push ecx
call dword [sym.imp.OLEAUT32.dll_VariantClear]
push esi
push 3
lea ecx, [ebp - 0x1bc]
mov byte [ebp - 4], 0x66
call fcn.00406640
mov esi, dword [ebp - 0x1b4]
lea edx, [ebp - 0x1bc]
push edx
mov byte [ebp - 4], 0x65
call ebx
test eax, eax
jge 0x4049be
push eax
call fcn.0040b6e1
lea eax, [ebp - 0x410]
mov byte [ebp - 4], 0x64
push eax
call ebx
test eax, eax
jge 0x4049d5
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x1e0]
mov byte [ebp - 4], 0x50
push ecx
call ebx
test eax, eax
jge 0x4049ec
push eax
call fcn.0040b6e1
mov edi, dword [ebp - 0x48]
push str.PointNo
mov word [ebp - 0x184], 8
mov dword [edi + 0x5a4730], esi
call fcn.0040b610
test eax, eax
mov dword [ebp - 0x17c], eax
jne 0x404a25
mov edx, str.PointNo
test edx, edx
je 0x404a25
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x67
test eax, eax
jne 0x404a3a
push 0x80004003
call fcn.0040b6e1
lea eax, [ebp - 0x184]
lea ecx, [ebp - 0x390]
push eax
push ecx
mov ecx, dword [ebp - 0x14]
call fcn.004069b0
mov esi, eax
cmp word [esi], 3
jne 0x404a5d
mov esi, dword [esi + 8]
jmp 0x404a99
lea edx, [ebp - 0x1cc]
push edx
call dword [sym.imp.OLEAUT32.dll_VariantClear]
push esi
push 3
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 4], 0x69
call fcn.00406640
mov esi, dword [ebp - 0x1c4]
lea eax, [ebp - 0x1cc]
push eax
mov byte [ebp - 4], 0x68
call ebx
test eax, eax
jge 0x404a99
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x390]
mov byte [ebp - 4], 0x67
push ecx
call ebx
test eax, eax
jge 0x404ab0
push eax
call fcn.0040b6e1
lea edx, [ebp - 0x184]
mov byte [ebp - 4], 0x50
push edx
call ebx
test eax, eax
jge 0x404ac7
push eax
call fcn.0040b6e1
push str.Revise
mov dword [edi + 0x5a4734], esi
mov word [ebp - 0x78], 8
call fcn.0040b610
test eax, eax
mov dword [ebp - 0x70], eax
jne 0x404af7
mov eax, str.Revise
test eax, eax
je 0x404af7
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x6a
test eax, eax
jne 0x404b0c
push 0x80004003
call fcn.0040b6e1
lea ecx, [ebp - 0x78]
lea edx, [ebp - 0x300]
push ecx
mov ecx, dword [ebp - 0x14]
push edx
call fcn.004069b0
mov esi, eax
cmp word [esi], 4
jne 0x404b2f
fld dword [esi + 8]
fstp dword [ebp - 0x1c]
jmp 0x404b7a
lea eax, [ebp - 0x170]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
push esi
push 4
lea ecx, [ebp - 0x170]
mov byte [ebp - 4], 0x6c
call fcn.00406640
mov ecx, dword [ebp - 0x168]
lea edx, [ebp - 0x170]
push edx
mov dword [ebp - 0x150], ecx
mov byte [ebp - 4], 0x6b
call ebx
test eax, eax
jge 0x404b71
push eax
call fcn.0040b6e1
mov eax, dword [ebp - 0x150]
mov dword [ebp - 0x1c], eax
lea ecx, [ebp - 0x300]
mov byte [ebp - 4], 0x6a
push ecx
call ebx
test eax, eax
jge 0x404b91
push eax
call fcn.0040b6e1
lea edx, [ebp - 0x78]
mov byte [ebp - 4], 0x50
push edx
call ebx
test eax, eax
jge 0x404ba5
push eax
call fcn.0040b6e1
mov eax, dword [ebp - 0x1c]
push str.Modulus
mov dword [edi + 0x5a4740], eax
mov word [ebp - 0x2e0], 8
call fcn.0040b610
test eax, eax
mov dword [ebp - 0x2d8], eax
jne 0x404bde
mov ecx, str.Modulus
test ecx, ecx
je 0x404bde
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x6d
test eax, eax
jne 0x404bf3
push 0x80004003
call fcn.0040b6e1
mov ecx, dword [ebp - 0x14]
lea edx, [ebp - 0x2e0]
lea eax, [ebp - 0x3b0]
push edx
push eax
call fcn.004069b0
mov esi, eax
cmp word [esi], 4
jne 0x404c19
fld dword [esi + 8]
fstp dword [ebp - 0x1c]
jmp 0x404c64
lea ecx, [ebp - 0x280]
push ecx
call dword [sym.imp.OLEAUT32.dll_VariantClear]
push esi
push 4
lea ecx, [ebp - 0x280]
mov byte [ebp - 4], 0x6f
call fcn.00406640
mov edx, dword [ebp - 0x278]
lea eax, [ebp - 0x280]
push eax
mov dword [ebp - 0x1d0], edx
mov byte [ebp - 4], 0x6e
call ebx
test eax, eax
jge 0x404c5b
push eax
call fcn.0040b6e1
mov ecx, dword [ebp - 0x1d0]
mov dword [ebp - 0x1c], ecx
lea edx, [ebp - 0x3b0]
mov byte [ebp - 4], 0x6d
push edx
call ebx
test eax, eax
jge 0x404c7b
push eax
call fcn.0040b6e1
lea eax, [ebp - 0x2e0]
mov byte [ebp - 4], 0x50
push eax
call ebx
test eax, eax
jge 0x404c92
push eax
call fcn.0040b6e1
mov ecx, dword [ebp - 0x1c]
mov esi, 8
push str.AddPara
mov dword [edi + 0x5a473c], ecx
mov word [ebp - 0x2c0], si
call fcn.0040b610
test eax, eax
mov dword [ebp - 0x2b8], eax
jne 0x404cce
mov edx, str.AddPara
test edx, edx
je 0x404cce
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x70
test eax, eax
jne 0x404ce3
push 0x80004003
call fcn.0040b6e1
lea eax, [ebp - 0x2c0]
lea ecx, [ebp - 0x430]
push eax
push ecx
mov ecx, dword [ebp - 0x14]
call fcn.004069b0
lea edx, [ebp - 0x30]
push eax
push edx
mov byte [ebp - 4], 0x71
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
test eax, eax
jge 0x404d12
push eax
call fcn.0040b6e1
lea eax, [ebp - 0x430]
mov byte [ebp - 4], 0x70
push eax
call ebx
test eax, eax
jge 0x404d29
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x2c0]
mov byte [ebp - 4], 0x50
push ecx
call ebx
test eax, eax
jge 0x404d40
push eax
call fcn.0040b6e1
cmp word [ebp - 0x30], 1
jne 0x404d4b
xor eax, eax
jmp 0x404d64
mov edx, dword [ebp - 0x28]
lea ecx, [ebp - 0x18]
push edx
call sub.MFC42.DLL_CString::operator_2
mov eax, dword [ebp - 0x18]
push eax
call dword [sym.imp.MSVCRT.dll_atoi]
add esp, 4
push str.DeadValue
mov dword [edi + 0x5a4738], eax
mov word [ebp - 0x2b0], si
call fcn.0040b610
test eax, eax
mov dword [ebp - 0x2a8], eax
jne 0x404d98
mov ecx, str.DeadValue
test ecx, ecx
je 0x404d98
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x72
test eax, eax
jne 0x404dad
push 0x80004003
call fcn.0040b6e1
mov ecx, dword [ebp - 0x14]
lea edx, [ebp - 0x2b0]
lea eax, [ebp - 0x3d0]
push edx
push eax
call fcn.004069b0
mov esi, eax
cmp word [esi], 4
jne 0x404dd3
fld dword [esi + 8]
fstp dword [ebp - 0x1c]
jmp 0x404e1e
lea ecx, [ebp - 0x290]
push ecx
call dword [sym.imp.OLEAUT32.dll_VariantClear]
push esi
push 4
lea ecx, [ebp - 0x290]
mov byte [ebp - 4], 0x74
call fcn.00406640
mov edx, dword [ebp - 0x288]
lea eax, [ebp - 0x290]
push eax
mov dword [ebp - 0x188], edx
mov byte [ebp - 4], 0x73
call ebx
test eax, eax
jge 0x404e15
push eax
call fcn.0040b6e1
mov ecx, dword [ebp - 0x188]
mov dword [ebp - 0x1c], ecx
lea edx, [ebp - 0x3d0]
mov byte [ebp - 4], 0x72
push edx
call ebx
test eax, eax
jge 0x404e35
push eax
call fcn.0040b6e1
lea eax, [ebp - 0x2b0]
mov byte [ebp - 4], 0x50
push eax
call ebx
test eax, eax
jge 0x404e4c
push eax
call fcn.0040b6e1
mov eax, dword [ebp - 0x68]
mov ecx, dword [ebp - 0x1c]
inc eax
mov dword [edi + 0x5a4748], ecx
mov dword [edi + 0x5a4744], 0
mov dword [ebp - 0x68], eax
jmp 0x405908
push 0
push 0
push str.YC_ptname_cant_be_null_
jmp 0x4043ca
mov eax, dword [ebp - 0x64]
push 0x410048
push eax
call dword [sym.imp.MSVCRT.dll__mbscmp]
add esp, 8
test eax, eax
jne 0x4054aa
cmp dword [ebp - 0x34], 0xa
jl 0x404eac
push 0
push 0
push str.Device_YM_number_cant_be_over_10_
call sub.MFC42.DLL_AfxMessageBox
jmp 0x40419e
push str.PointMName
mov word [ebp - 0x2d0], di
call fcn.0040b610
test eax, eax
mov dword [ebp - 0x2c8], eax
jne 0x404eda
mov ecx, str.PointMName
test ecx, ecx
je 0x404eda
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x75
test eax, eax
jne 0x404eef
push 0x80004003
call fcn.0040b6e1
mov ecx, dword [ebp - 0x14]
lea edx, [ebp - 0x2d0]
lea eax, [ebp - 0x310]
push edx
push eax
call fcn.004069b0
lea ecx, [ebp - 0x30]
push eax
push ecx
mov byte [ebp - 4], 0x76
call esi
test eax, eax
jge 0x404f1a
push eax
call fcn.0040b6e1
lea edx, [ebp - 0x310]
mov byte [ebp - 4], 0x75
push edx
call ebx
test eax, eax
jge 0x404f31
push eax
call fcn.0040b6e1
lea eax, [ebp - 0x2d0]
mov byte [ebp - 4], 0x50
push eax
call ebx
test eax, eax
jge 0x404f48
push eax
call fcn.0040b6e1
mov ecx, dword [ebp - 0x28]
push ecx
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::operator_2
push 0x20
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::Remove
mov edx, dword [ebp - 0x18]
push 0x410be8
push edx
call dword [sym.imp.MSVCRT.dll__mbscmp]
add esp, 8
test eax, eax
je 0x40549c
cmp word [ebp - 0x30], 1
je 0x40549c
mov eax, dword [ebp - 0x28]
lea ecx, [ebp - 0x18]
push eax
call sub.MFC42.DLL_CString::operator_2
push 0x20
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::Remove
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::MakeUpper
mov eax, dword [ebp - 0x34]
mov edi, dword [ebp - 0x18]
push str.BoardNo
mov word [ebp - 0x2a0], 8
lea ecx, [eax + eax*8]
lea edx, [eax + ecx*2]
mov eax, dword [ebp - 0x58]
or ecx, 0xffffffff
lea ebx, [eax + edx*4]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [ebx + 0x5a5fac]
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]
call fcn.0040b610
test eax, eax
mov dword [ebp - 0x298], eax
jne 0x405006
mov ecx, str.BoardNo
test ecx, ecx
je 0x405006
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x77
test eax, eax
jne 0x40501b
push 0x80004003
call fcn.0040b6e1
mov ecx, dword [ebp - 0x14]
lea edx, [ebp - 0x2a0]
lea eax, [ebp - 0x320]
push edx
push eax
call fcn.004069b0
mov esi, eax
cmp word [esi], 3
jne 0x405044
mov esi, dword [esi + 8]
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
jmp 0x405086
lea ecx, [ebp - 0x2f0]
push ecx
call dword [sym.imp.OLEAUT32.dll_VariantClear]
push esi
push 3
lea ecx, [ebp - 0x2f0]
mov byte [ebp - 4], 0x79
call fcn.00406640
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov esi, dword [ebp - 0x2e8]
lea edx, [ebp - 0x2f0]
mov byte [ebp - 4], 0x78
push edx
call edi
test eax, eax
jge 0x405086
push eax
call fcn.0040b6e1
lea eax, [ebp - 0x320]
mov byte [ebp - 4], 0x77
push eax
call edi
test eax, eax
jge 0x40509d
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x2a0]
mov byte [ebp - 4], 0x50
push ecx
call edi
test eax, eax
jge 0x4050b4
push eax
call fcn.0040b6e1
test esi, esi
mov dword [ebx + 0x5a5fe0], esi
jl 0x405456
cmp esi, 0xff
jg 0x405456
push str.PointNo
mov word [ebp - 0x220], 8
call fcn.0040b610
test eax, eax
mov dword [ebp - 0x218], eax
jne 0x4050fe
mov edx, str.PointNo
test edx, edx
je 0x4050fe
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x7a
test eax, eax
jne 0x405113
push 0x80004003
call fcn.0040b6e1
lea eax, [ebp - 0x220]
lea ecx, [ebp - 0x340]
push eax
push ecx
mov ecx, dword [ebp - 0x14]
call fcn.004069b0
mov esi, eax
cmp word [esi], 3
jne 0x405136
mov esi, dword [esi + 8]
jmp 0x405172
lea edx, [ebp - 0x1f0]
push edx
call dword [sym.imp.OLEAUT32.dll_VariantClear]
push esi
push 3
lea ecx, [ebp - 0x1f0]
mov byte [ebp - 4], 0x7c
call fcn.00406640
mov esi, dword [ebp - 0x1e8]
lea eax, [ebp - 0x1f0]
push eax
mov byte [ebp - 4], 0x7b
call edi
test eax, eax
jge 0x405172
push eax
call fcn.0040b6e1
lea ecx, [ebp - 0x340]
mov byte [ebp - 4], 0x7a
push ecx
call edi
test eax, eax
jge 0x405189
push eax
call fcn.0040b6e1
lea edx, [ebp - 0x220]
mov byte [ebp - 4], 0x50
push edx
call edi
test eax, eax
jge 0x4051a0
push eax
call fcn.0040b6e1
test esi, esi
mov dword [ebx + 0x5a5fe4], esi
jl 0x405410
cmp esi, 0xff
jg 0x405410
push str.Revise
mov word [ebp - 0x210], 8
call fcn.0040b610
test eax, eax
mov dword [ebp - 0x208], eax
jne 0x4051ea
mov eax, str.Revise
test eax, eax
je 0x4051ea
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x7d
test eax, eax
jne 0x4051ff
push 0x80004003
call fcn.0040b6e1
lea ecx, [ebp - 0x210]
lea edx, [ebp - 0x360]
push ecx
mov ecx, dword [ebp - 0x14]
push edx
call fcn.004069b0
mov esi, eax
cmp word [esi], 4
jne 0x405225
fld dword [esi + 8]
fstp dword [ebp - 0x1c]
jmp 0x405270
lea eax, [ebp - 0x240]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
push esi
push 4
lea ecx, [ebp - 0x240]
mov byte [ebp - 4], 0x7f
call fcn.00406640
mov ecx, dword [ebp - 0x238]
lea edx, [ebp - 0x240]
push edx
mov dword [ebp - 0xd0], ecx
mov byte [ebp - 4], 0x7e
call edi
test eax, eax
jge 0x405267
push eax
call fcn.0040b6e1
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0x1c], eax
lea ecx, [ebp - 0x360]
mov byte [ebp - 4], 0x7d
push ecx
call edi
test eax, eax
jge 0x405287
push eax
call fcn.0040b6e1
lea edx, [ebp - 0x210]
mov byte [ebp - 4], 0x50
push edx
call edi
test eax, eax
jge 0x40529e
push eax
call fcn.0040b6e1
mov eax, dword [ebp - 0x1c]
push str.Modulus
mov dword [ebx + 0x5a5fec], eax
mov word [ebp - 0x230], 8
call fcn.0040b610
test eax, eax
mov dword [ebp - 0x228], eax
jne 0x4052d7
mov ecx, str.Modulus
test ecx, ecx
je 0x4052d7
push 0x8007000e
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x80
test eax, eax
jne 0x4052ec
push 0x80004003
call fcn.0040b6e1
mov ecx, dword [ebp - 0x14]
lea edx, [ebp - 0x230]
lea eax, [ebp - 0x380]
push edx
push eax
call fcn.004069b0
mov esi, eax
cmp word [esi], 4
jne 0x405312
fld dword [esi + 8]
fstp dword [ebp - 0x1c]
jmp 0x40535d
lea ecx, [ebp - 0x200]
push ecx
call dword [sym.imp.OLEAUT32.dll_VariantClear]
push esi
push 4
lea ecx, [ebp - 0x200]
mov byte [ebp - 4], 0x82
call fcn.00406640
mov edx, dword [ebp - 0x1f8]
lea eax, [ebp - 0x200]
push eax
mov dword [ebp - 0xe4], edx
mov byte [ebp - 4], 0x81
call edi
test eax, eax
jge 0x405354
push eax
call fcn.0040b6e1
mov ecx, dword [ebp - 0xe4]
mov dword [ebp - 0x1c], ecx
lea edx, [ebp - 0x380]
mov byte [ebp - 4], 0x80
push edx
call edi
test eax, eax
jge 0x405374
push eax
call fcn.0040b6e1
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x50
push eax
call edi
test eax, eax
jge 0x40538b
push eax
call fcn.0040b6e1
mov ecx, dword [ebp - 0x1c]
push str.DeadValue
mov dword [ebx + 0x5a5fe8], ecx
lea ecx, [ebp - 0x270]
call fcn.00406480
lea edx, [ebp - 0x270]
lea eax, [ebp - 0x3a0]
push edx
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x83
call fcn.00406250
mov ecx, eax
call fcn.004069b0
mov ecx, eax
mov byte [ebp - 4], 0x84
call fcn.00406560
fstp dword [ebp - 0x1c]
lea ecx, [ebp - 0x3a0]
mov byte [ebp - 4], 0x83
call fcn.00406680
lea ecx, [ebp - 0x270]
mov byte [ebp - 4], 0x50
call fcn.00406680
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x1c]
inc eax
mov dword [ebx + 0x5a5ff4], ecx
mov dword [ebx + 0x5a5ff0], 0
mov dword [ebp - 0x34], eax
jmp 0x405908
push 0
push 0
push str.YM_INF_cant_be_over_0255_
call sub.MFC42.DLL_AfxMessageBox
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x405432
push 0x80004003
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
push eax
mov esi, eax
call dword [edx + 0x90]
test eax, eax
jge 0x40419e
push 0x410700
push esi
push eax
call fcn.0040b6ef
jmp 0x40419e
push 0
push 0
push str.YM_FUN_cant_be_over_0255_
call sub.MFC42.DLL_AfxMessageBox
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x405478
push 0x80004003
call fcn.0040b6e1
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
push eax
mov esi, eax
call dword [ecx + 0x90]
test eax, eax
jge 0x40419e
push 0x410700
push esi
push eax
call fcn.0040b6ef
jmp 0x40419e
push 0
push 0
push str.YM_ptname_cant_be_null_
jmp 0x4043ca
lea eax, [ebp - 0x64]
push 0x410044
push eax
call fcn.00406080
test al, al
je 0x405908
cmp dword [ebp - 0x54], 0x14
jl 0x4054d9
push 0
push 0
push str.Device_YK_number_cant_be_over_20_
call sub.MFC42.DLL_AfxMessageBox
jmp 0x40419e
push str.PointMName
lea ecx, [ebp - 0x250]
call fcn.00406480
lea ecx, [ebp - 0x250]
lea edx, [ebp - 0x3c0]
push ecx
push edx
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x85
call fcn.00406250
mov ecx, eax
call fcn.004069b0
push eax
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x86
call fcn.00406620
lea ecx, [ebp - 0x3c0]
mov byte [ebp - 4], 0x85
call fcn.00406680
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0x50
call fcn.00406680
cmp word [ebp - 0x30], 1
jne 0x40554a
push 0
push 0
push 0x41017c
jmp 0x405903
mov eax, dword [ebp - 0x28]
lea ecx, [ebp - 0x18]
push eax
call sub.MFC42.DLL_CString::operator_2
push 0x20
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::Remove
lea ecx, [ebp - 0x18]
push 0x410be8
push ecx
call fcn.00406080
test al, al
je 0x405580
push 0
push 0
push 0x41017c
jmp 0x405903
lea ecx, [ebp - 0x18]
call fcn.00405f50
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebp - 0x4b4]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
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 - 0x4b4]
push ecx
call dword [sym.imp.MSVCRT.dll__strupr]
add esp, 4
lea ecx, [ebp - 0x18]
push eax
call fcn.0040ae56
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x58]
lea edx, [eax*8]
sub edx, eax
lea eax, [eax + edx*4]
lea ebx, [ecx + eax*4]
lea ecx, [ebp - 0x18]
call fcn.00405f50
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebx + 0x5a569c]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push str.PointSName
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 - 0x260]
call fcn.00406480
lea ecx, [ebp - 0x260]
lea edx, [ebp - 0x3e0]
push ecx
push edx
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x87
call fcn.00406250
mov ecx, eax
call fcn.004069b0
push eax
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x88
call fcn.00406620
lea ecx, [ebp - 0x3e0]
mov byte [ebp - 4], 0x87
call fcn.00406680
lea ecx, [ebp - 0x260]
mov byte [ebp - 4], 0x50
call fcn.00406680
cmp word [ebp - 0x30], 1
je 0x4056f8
mov eax, dword [ebp - 0x28]
lea ecx, [ebp - 0x18]
push eax
call sub.MFC42.DLL_CString::operator_2
push 0x20
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::Remove
lea ecx, [ebp - 0x18]
call fcn.00405f50
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebp - 0x4b4]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
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 - 0x4b4]
push ecx
call dword [sym.imp.MSVCRT.dll__strupr]
add esp, 4
lea ecx, [ebp - 0x18]
push eax
call fcn.0040ae56
lea ecx, [ebp - 0x18]
call fcn.00405f50
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebx + 0x5a56ce]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
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]
push str.PointID
lea ecx, [ebp - 0x118]
call fcn.00406480
lea ecx, [ebp - 0x118]
lea edx, [ebp - 0x400]
push ecx
push edx
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x89
call fcn.00406250
mov ecx, eax
call fcn.004069b0
mov ecx, eax
mov byte [ebp - 4], 0x8a
call fcn.004064b0
lea ecx, [ebp - 0x400]
mov esi, eax
mov byte [ebp - 4], 0x89
call fcn.00406680
lea ecx, [ebp - 0x118]
mov byte [ebp - 4], 0x50
call fcn.00406680
push str.BoardNo
lea ecx, [ebp - 0x138]
mov dword [ebx + 0x5a5700], esi
call fcn.00406480
lea eax, [ebp - 0x138]
lea ecx, [ebp - 0x420]
push eax
push ecx
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x8b
call fcn.00406250
mov ecx, eax
call fcn.004069b0
mov ecx, eax
mov byte [ebp - 4], 0x8c
call fcn.004064b0
lea ecx, [ebp - 0x420]
mov esi, eax
mov byte [ebp - 4], 0x8b
call fcn.00406680
lea ecx, [ebp - 0x138]
mov byte [ebp - 4], 0x50
call fcn.00406680
test esi, esi
mov dword [ebx + 0x5a5704], esi
jl 0x40591c
cmp esi, 0xff
jg 0x40591c
push str.PointNo
lea ecx, [ebp - 0x128]
call fcn.00406480
lea edx, [ebp - 0x128]
lea eax, [ebp - 0x440]
push edx
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x8d
call fcn.00406250
mov ecx, eax
call fcn.004069b0
mov ecx, eax
mov byte [ebp - 4], 0x8e
call fcn.004064b0
lea ecx, [ebp - 0x440]
mov esi, eax
mov byte [ebp - 4], 0x8d
call fcn.00406680
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 0x50
call fcn.00406680
test esi, esi
mov dword [ebx + 0x5a5708], esi
jl 0x4058fa
cmp esi, 0xff
jg 0x4058fa
push str.PointDsp
lea ecx, [ebp - 0xf8]
call fcn.00406480
lea ecx, [ebp - 0xf8]
lea edx, [ebp - 0x460]
push ecx
push edx
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0x8f
call fcn.00406250
mov ecx, eax
call fcn.004069b0
push eax
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x90
call fcn.00406620
lea ecx, [ebp - 0x460]
mov byte [ebp - 4], 0x8f
call fcn.00406680
lea ecx, [ebp - 0xf8]
mov byte [ebp - 4], 0x50
call fcn.00406680
mov eax, dword [ebp - 0x28]
lea ecx, [ebp - 0x18]
push eax
call sub.MFC42.DLL_CString::operator_2
push 0x20
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::Remove
lea ecx, [ebp - 0x18]
push 0x410be8
push ecx
call fcn.00406080
test al, al
jne 0x4058e5
cmp word [ebp - 0x30], 1
je 0x4058e5
mov edx, dword [ebp - 0x28]
lea ecx, [ebx + 0x5a570c]
push edx
call sub.MFC42.DLL_CString::operator_2
inc dword [ebp - 0x54]
jmp 0x405908
push str.NULL
lea ecx, [ebx + 0x5a570c]
call fcn.0040ae56
inc dword [ebp - 0x54]
jmp 0x405908
push 0
push 0
push str.YK_INF_cant_be_over_0255_
call sub.MFC42.DLL_AfxMessageBox
lea ecx, [ebp - 0x14]
call fcn.00406250
mov ecx, eax
call fcn.00406980
jmp 0x40419e
push 0
push 0
push str.YK_FUN_cant_be_over_0255_
jmp 0x405903
lea ecx, [ebp - 0x14]
call fcn.00406250
mov ecx, eax
call fcn.00406950
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x68]
mov edx, dword [ebp - 0x54]
mov dword [eax + 0x5a27a0], ecx
mov ecx, dword [ebp - 0x4c]
mov dword [eax + 0x5a27a4], edx
mov edx, dword [ebp - 0x34]
mov dword [eax + 0x5a279c], ecx
mov ecx, dword [ebp - 0x3c]
mov dword [eax + 0x5a27a8], edx
mov eax, dword [ebp - 0x5c]
inc ecx
mov edx, dword [eax + 0x5a2798]
mov dword [ebp - 0x3c], ecx
cmp ecx, edx
jl 0x4040b0
mov edx, dword [ebp - 0x50]
mov eax, dword [0x461710]
inc edx
cmp edx, eax
mov dword [ebp - 0x50], edx
jl 0x404092
lea ecx, [ebp - 0x40]
call fcn.00406250
mov ecx, eax
call fcn.00406710
push 0
lea ecx, [ebp - 0x40]
call fcn.00406210
call dword [sym.imp.ole32.dll_CoUninitialize]
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 9
call fcn.0040add2
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 8
call fcn.00406680
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 7
call fcn.00406380
lea ecx, [ebp - 0x14]
call fcn.00406240
lea ecx, [ebp - 0x40]
call fcn.00406240
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 4
call fcn.0040add2
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 3
call fcn.0040add2
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 2
call fcn.0040add2
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 1
call fcn.0040add2
lea ecx, [ebp - 0xe8]
mov byte [ebp - 4], 0
call fcn.0040add2
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0xffffffff
call fcn.0040add2
mov ecx, dword [ebp - 0xc]
lea esp, [ebp - 0x588]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret