Function at 0x45b800
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x5a5887
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x2a8
mov eax, dword [ecx + 0x28]
push ebx
push ebp
push esi
xor esi, esi
push edi
cmp eax, esi
mov dword [esp + 0x58], ecx
mov dword [esp + 0x38], esi
jne 0x45b838
or eax, 0xffffffff
jmp 0x45e0a5
mov edi, dword [esp + 0x2c8]
mov eax, dword [edi + 0x78]
cmp dword [eax + 0x118], esi
jle 0x45b891
mov ecx, dword [0x635400]
cmp dword [ecx + 0x1a0], esi
jle 0x45b891
push ecx
add eax, 0x3c
mov ecx, esp
mov dword [esp + 0x78], esp
push eax
call sub.MFC42.DLL_CString::CString_2
mov edx, dword [edi + 0x78]
mov ecx, dword [0x635400]
add ecx, 0x90
mov eax, dword [edx + 0x118]
push eax
call fcn.0049cae0
test al, al
jne 0x45b891
mov eax, 0xffffffe2
jmp 0x45e0a5
mov ebp, dword [esp + 0x2cc]
lea ecx, [esp + 0x1c]
push ebp
call sub.MFC42.DLL_CString::CString_3
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], esi
call sub.MFC42.DLL_CString::MakeUpper
mov edx, dword [edi + 0x78]
mov al, byte [edx + 0x224]
test al, al
je 0x45b92f
lea eax, [esp + 0x1c]
lea ecx, [esp + 0x34]
push eax
call sub.MFC42.DLL_CString::CString_2
push 0x62fc5c
push 0x60bb98
lea ecx, [esp + 0x3c]
mov byte [esp + 0x2c8], 1
call sub.MFC42.DLL_CString::Replace
push 0x60ec4c
lea ecx, [esp + 0x38]
call sub.MFC42.DLL_CString::Find_1
cmp eax, 3
mov byte [esp + 0x2c0], 0
lea ecx, [esp + 0x34]
jle 0x45b92a
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 0xffffffe1
jmp 0x45e0a5
call sub.MFC42.DLL_CString::CString
push 0x62fc5c
lea ecx, [esp + 0x2c]
call sub.MFC42.DLL_CString::CString_3
mov edi, dword [esp + 0x2d0]
mov byte [esp + 0x2c0], 2
cmp edi, esi
jle 0x45b962
mov cl, byte [esi + ebp]
push ecx
lea ecx, [esp + 0x2c]
call fcn.005928d0
inc esi
cmp esi, edi
jl 0x45b950
lea ebx, [edi + ebp]
or ecx, 0xffffffff
mov edi, ebx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x74], ebx
cmp ecx, 5
jge 0x45b9a8
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c0], al
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 0xfffffff6
jmp 0x45e0a5
lea ebp, [ecx - 3]
xor esi, esi
test ebp, ebp
jle 0x45b9d7
mov edi, dword [sym.imp.MSVCRT.dll__strnicmp]
cmp byte [esi + ebx], 0xd
jne 0x45b9d2
push 2
lea edx, [esi + ebx + 1]
push 0x60ec48
push edx
call edi
add esp, 0xc
test eax, eax
je 0x45ba30
inc esi
cmp esi, ebp
jl 0x45b9b7
xor eax, eax
mov ecx, 0x70
mov dword [esp + 0x69], eax
lea edi, [esp + 0xf8]
mov word [esp + 0x6d], ax
xor edx, edx
rep stosd dword es:[edi], eax
mov edi, ebx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov byte [esp + 0x68], 0
mov ebp, ecx
mov byte [esp + 0x6f], al
test ebp, ebp
mov dword [esp + 0x14], edx
mov dword [esp + 0x34], edx
mov dword [esp + 0x3c], ebp
jle 0x45ba92
mov cl, byte [eax + ebx]
cmp cl, 0x30
jl 0x45ba81
cmp cl, 0x39
jg 0x45ba81
movsx ecx, cl
lea edx, [edx + edx*4]
lea edx, [ecx + edx*2 - 0x30]
jmp 0x45ba85
mov eax, dword [esp + 0x2c8]
test eax, eax
je 0x45ba52
mov ecx, dword [eax + 0x78]
test ecx, ecx
je 0x45ba52
push 0
push 0x60ec48
call fcn.004c87b0
test al, al
jne 0x45b9d7
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c0], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 1
jmp 0x45e0a5
test edx, edx
jg 0x45ba8a
inc eax
cmp eax, ebp
jl 0x45ba17
test edx, edx
mov dword [esp + 0x14], edx
jne 0x45bac1
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c0], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 0xfffffff5
jmp 0x45e0a5
cmp eax, ebp
mov ecx, eax
jge 0x45bae7
mov al, byte [ecx + ebx]
cmp al, 0x2f
je 0x45bae2
cmp al, 0x20
je 0x45bae2
cmp al, 0x61
jl 0x45bada
cmp al, 0x7a
jle 0x45bae7
cmp al, 0x41
jl 0x45bae2
cmp al, 0x5a
jle 0x45bae7
inc ecx
cmp ecx, ebp
jl 0x45bac7
cmp ecx, ebp
jne 0x45bb1a
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c0], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 0xfffffff4
jmp 0x45e0a5
lea eax, [ebp - 1]
xor edi, edi
cmp ecx, eax
mov esi, ecx
jge 0x45bba2
lea ebp, [esp + 0xf9]
mov dl, byte [esi + ebx]
cmp dl, 0x61
jl 0x45bb39
cmp dl, 0x7a
jle 0x45bb43
cmp dl, 0x41
jl 0x45bb8e
cmp dl, 0x5a
jg 0x45bb8e
cmp edi, 8
jge 0x45bb5a
mov eax, 8
lea ecx, [ebp - 1]
sub eax, edi
mov byte [ecx], dl
add ecx, 0x38
dec eax
jne 0x45bb52
mov al, byte [esi + ebx + 1]
cmp al, 0x61
jl 0x45bb66
cmp al, 0x7a
jle 0x45bb6e
cmp al, 0x41
jl 0x45bb88
cmp al, 0x5a
jg 0x45bb88
cmp edi, 8
jge 0x45bb88
mov dl, byte [esi + ebx + 1]
mov eax, 8
mov ecx, ebp
sub eax, edi
mov byte [ecx], dl
add ecx, 0x38
dec eax
jne 0x45bb80
inc edi
add ebp, 0x38
jmp 0x45bb92
test edi, edi
jg 0x45bbd1
mov edx, dword [esp + 0x3c]
inc esi
lea eax, [edx - 1]
cmp esi, eax
jl 0x45bb2c
test edi, edi
jne 0x45bbd1
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c0], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 0xfffffff3
jmp 0x45e0a5
mov edx, dword [esp + 0x3c]
cmp esi, edx
jge 0x45bc05
mov ecx, dword [esp + 0x34]
mov al, byte [esi + ebx]
cmp al, 0x30
jl 0x45bbf4
cmp al, 0x39
jg 0x45bbf4
movsx eax, al
lea ecx, [ecx + ecx*4]
lea ecx, [eax + ecx*2 - 0x30]
jmp 0x45bbf8
test ecx, ecx
jg 0x45bbfd
inc esi
cmp esi, edx
jl 0x45bbdd
test ecx, ecx
mov dword [esp + 0x34], ecx
jne 0x45bc34
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c0], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 0xfffffff2
jmp 0x45e0a5
mov ecx, dword [esp + 0x2c8]
mov edx, dword [ecx + 0x78]
mov eax, dword [edx + 0x118]
test eax, eax
jle 0x45bc9b
mov ecx, dword [0x635400]
mov edx, dword [ecx + 0x1a0]
test edx, edx
jle 0x45bc9b
mov edx, dword [esp + 0x34]
add ecx, 0x90
push edx
push eax
call fcn.0049ce30
test al, al
jne 0x45bc9b
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c0], al
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 0xffffffe4
jmp 0x45e0a5
or ebp, 0xffffffff
mov edi, ebx
mov ecx, ebp
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov eax, esi
mov dword [esp + 0x7c], ecx
mov ecx, dword [esp + 0x3c]
cmp esi, ecx
jge 0x45bcc8
cmp byte [eax + ebx], 0xd
je 0x45bcc4
inc eax
cmp eax, ecx
jl 0x45bcb7
jmp 0x45bcc8
mov dword [esp + 0x7c], eax
mov esi, dword [esp + 0x58]
xor edi, edi
mov ebx, dword [esi + 0x24]
add ebx, 0xfffffff6
test ebx, ebx
jle 0x45bdb3
mov eax, dword [esi + 0x28]
add eax, 2
mov dl, byte [eax - 2]
cmp dl, 0x30
jl 0x45bd90
cmp dl, 0x39
jg 0x45bd33
mov cl, byte [eax - 1]
cmp cl, 0x30
jl 0x45bd33
cmp cl, 0x39
jg 0x45bd33
mov cl, byte [eax]
cmp cl, 0x41
jl 0x45bd33
cmp cl, 0x5a
jg 0x45bd33
mov cl, byte [eax + 1]
cmp cl, 0x41
jl 0x45bd33
cmp cl, 0x5a
jg 0x45bd33
mov cl, byte [eax + 2]
cmp cl, 0x41
jl 0x45bd33
cmp cl, 0x5a
jg 0x45bd33
mov cl, byte [eax + 3]
cmp cl, 0x28
je 0x45bd9c
cmp cl, 0x20
je 0x45bd9c
cmp dl, 0x30
jl 0x45bd90
cmp dl, 0x39
jg 0x45bd90
mov cl, byte [eax - 1]
cmp cl, 0x30
jl 0x45bd90
cmp cl, 0x39
jg 0x45bd90
mov cl, byte [eax]
cmp cl, 0x41
jl 0x45bd90
cmp cl, 0x5a
jg 0x45bd90
mov cl, byte [eax + 1]
cmp cl, 0x41
jl 0x45bd90
cmp cl, 0x5a
jg 0x45bd90
mov cl, byte [eax + 2]
cmp cl, 0x41
jl 0x45bd90
cmp cl, 0x5a
jg 0x45bd90
mov cl, byte [eax + 3]
cmp cl, 0x30
jl 0x45bd90
cmp cl, 0x39
jg 0x45bd90
mov cl, byte [eax + 4]
cmp cl, 0x30
jl 0x45bd90
cmp cl, 0x39
jg 0x45bd90
cmp byte [eax + 5], 0x28
je 0x45bd9c
inc edi
inc eax
cmp edi, ebx
jl 0x45bce2
jmp 0x45bdb3
mov eax, dword [esi + 0x28]
add eax, edi
mov ecx, dword [eax]
mov dword [esp + 0x68], ecx
mov dl, byte [eax + 4]
mov byte [esp + 0x6d], 0
mov byte [esp + 0x6c], dl
mov al, byte [esp + 0x68]
test al, al
jne 0x45bde6
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c0], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], ebp
call sub.MFC42.DLL_CString::CString
mov eax, 0xffffffe5
jmp 0x45e0a5
mov eax, dword [esi + 0x28]
lea ecx, [esp + 0x88]
push ecx
mov ecx, dword [esp + 0x18]
lea edx, [esp + 0x90]
mov dword [esp + 0x14], eax
push edx
push ecx
mov ecx, dword [esi + 0x24]
push ecx
push eax
mov ecx, esi
call fcn.0045e1b0
test al, al
jne 0x45be3c
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c0], al
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], ebp
call sub.MFC42.DLL_CString::CString
mov eax, 0xffffffec
jmp 0x45e0a5
mov ecx, dword [esp + 0x88]
mov eax, dword [esp + 0x8c]
xor edx, edx
add ecx, 0xfffffff6
mov dword [esp + 0x81], edx
mov ebx, eax
mov word [esp + 0x85], dx
cmp eax, ecx
mov dword [esp + 0x2c], 0
mov byte [esp + 0x23], 0
mov byte [esp + 0x43], 0
mov byte [esp + 0x80], 0
mov byte [esp + 0x87], dl
mov dword [esp + 0x24], ebx
jge 0x45c960
mov esi, dword [esp + 0x10]
mov cl, byte [esi + ebx]
cmp cl, 0x20
je 0x45bea2
cmp cl, 0x2a
jne 0x45bfcf
mov al, byte [esi + ebx + 1]
cmp al, 0x41
jl 0x45beae
cmp al, 0x5a
jle 0x45bebe
cmp al, 0x30
jl 0x45bfcf
cmp al, 0x39
jg 0x45bfcf
mov al, byte [esi + ebx + 2]
cmp al, 0x41
jl 0x45beca
cmp al, 0x5a
jle 0x45beda
cmp al, 0x30
jl 0x45bfcf
cmp al, 0x39
jg 0x45bfcf
mov al, byte [esi + ebx + 3]
cmp al, 0x30
jl 0x45bfcf
cmp al, 0x39
jg 0x45bfcf
mov al, byte [esi + ebx + 4]
cmp al, 0x30
jl 0x45bfcf
cmp al, 0x39
jg 0x45bfcf
mov al, byte [esi + ebx + 5]
cmp al, 0x30
jl 0x45bfcf
cmp al, 0x39
jg 0x45bfcf
mov al, byte [esi + ebx + 6]
cmp al, 0x30
jl 0x45bf22
cmp al, 0x39
jle 0x45bf36
cmp al, 0x20
je 0x45bf36
cmp al, 0x41
jl 0x45bfcf
cmp al, 0x5a
jg 0x45bfcf
mov al, byte [esi + ebx + 7]
cmp al, 0x41
jne 0x45bf7a
mov edi, dword [esp + 0x2c]
mov ecx, dword [esi + ebx + 1]
lea eax, [edi*8]
sub eax, edi
shl eax, 3
lea edx, [esp + eax + 0x103]
mov dword [esp + eax + 0x103], ecx
mov cx, word [esi + ebx + 5]
mov word [edx + 4], cx
mov cl, byte [esi + ebx + 7]
mov byte [edx + 6], cl
mov byte [esp + eax + 0x10a], 0
jmp 0x45bfb1
mov edi, dword [esp + 0x2c]
cmp al, 0x20
jne 0x45bfb1
lea eax, [edi*8]
mov ecx, dword [esi + ebx + 1]
sub eax, edi
shl eax, 3
lea edx, [esp + eax + 0x103]
mov dword [esp + eax + 0x103], ecx
mov cx, word [esi + ebx + 5]
mov word [edx + 4], cx
mov byte [esp + eax + 0x109], 0
mov dl, byte [esi + ebx]
lea eax, [edi*8]
cmp dl, 0x2a
sete dl
sub eax, edi
mov byte [esp + eax*8 + 0x12c], dl
jmp 0x45c128
cmp cl, 0x20
jne 0x45c12d
cmp byte [esi + ebx + 1], cl
jne 0x45c075
mov al, byte [esi + ebx + 2]
lea edx, [esi + ebx + 2]
cmp al, 0x41
jl 0x45bff2
cmp al, 0x5a
jle 0x45bffa
cmp al, 0x30
jl 0x45c075
cmp al, 0x39
jg 0x45c075
mov al, byte [esi + ebx + 3]
cmp al, 0x41
jl 0x45c006
cmp al, 0x5a
jle 0x45c00e
cmp al, 0x30
jl 0x45c075
cmp al, 0x39
jg 0x45c075
cmp byte [esi + ebx + 4], 0x20
jne 0x45c075
mov al, byte [esi + ebx + 5]
cmp al, 0x30
jl 0x45c075
cmp al, 0x39
jg 0x45c075
mov al, byte [esi + ebx + 6]
cmp al, 0x30
jl 0x45c075
cmp al, 0x39
jg 0x45c075
mov al, byte [esi + ebx + 7]
cmp al, 0x30
jl 0x45c075
cmp al, 0x39
jg 0x45c075
cmp byte [esi + ebx + 8], 0x20
jne 0x45c075
mov ecx, dword [esp + 0x2c]
mov esi, dword [edx]
lea eax, [ecx*8]
sub eax, ecx
shl eax, 3
lea ecx, [esp + eax + 0x103]
mov dword [esp + eax + 0x103], esi
mov dx, word [edx + 4]
mov word [ecx + 4], dx
mov byte [esp + eax + 0x109], 0
jmp 0x45c128
cmp cl, 0x20
jne 0x45c12d
cmp byte [esi + ebx + 1], cl
jne 0x45c12d
mov al, byte [esi + ebx + 2]
lea edi, [esi + ebx + 2]
cmp al, 0x41
jl 0x45c098
cmp al, 0x5a
jle 0x45c0a8
cmp al, 0x30
jl 0x45c12d
cmp al, 0x39
jg 0x45c12d
mov al, byte [esi + ebx + 3]
cmp al, 0x41
jl 0x45c0b4
cmp al, 0x5a
jle 0x45c0bc
cmp al, 0x30
jl 0x45c12d
cmp al, 0x39
jg 0x45c12d
mov al, byte [esi + ebx + 5]
cmp al, 0x30
jl 0x45c12d
cmp al, 0x39
jg 0x45c12d
mov al, byte [esi + ebx + 6]
cmp al, 0x30
jl 0x45c12d
cmp al, 0x39
jg 0x45c12d
mov al, byte [esi + ebx + 7]
cmp al, 0x30
jl 0x45c12d
cmp al, 0x39
jg 0x45c12d
cmp byte [esi + ebx + 8], 0x41
jl 0x45c12d
cmp al, 0x5a
jg 0x45c12d
cmp byte [esi + ebx + 9], 0x20
jne 0x45c12d
mov ecx, dword [esp + 0x2c]
mov edx, dword [edi]
lea eax, [ecx*8]
sub eax, ecx
shl eax, 3
lea ecx, [esp + eax + 0x103]
mov dword [esp + eax + 0x103], edx
mov dx, word [edi + 4]
mov word [ecx + 4], dx
mov dl, byte [edi + 6]
mov byte [ecx + 6], dl
mov byte [esp + eax + 0x10a], 0
mov byte [esp + 0x23], 1
mov al, byte [esp + 0x43]
test al, al
jne 0x45c307
cmp byte [esp + 0x23], 1
jne 0x45c880
mov ebp, dword [esp + 0x10]
mov cl, byte [ebx + ebp]
cmp cl, 0x41
jl 0x45c159
cmp cl, 0x5a
jle 0x45c230
mov al, byte [ebx + ebp + 1]
cmp al, 0x41
jl 0x45c230
cmp al, 0x5a
jg 0x45c230
mov al, byte [ebx + ebp + 2]
cmp al, 0x41
jl 0x45c230
cmp al, 0x5a
jg 0x45c230
mov al, byte [ebx + ebp + 3]
cmp al, 0x41
jl 0x45c230
cmp al, 0x5a
jg 0x45c230
mov al, byte [ebx + ebp + 4]
cmp al, 0x41
jl 0x45c230
cmp al, 0x5a
jg 0x45c230
mov al, byte [ebx + ebp + 5]
cmp al, 0x41
jl 0x45c230
cmp al, 0x5a
jg 0x45c230
mov al, byte [ebx + ebp + 6]
cmp al, 0x41
jl 0x45c230
cmp al, 0x5a
jg 0x45c230
mov al, byte [ebx + ebp + 7]
cmp al, 0x41
jl 0x45c1cd
cmp al, 0x5a
jle 0x45c230
mov ecx, dword [esp + 0x2c]
mov edx, dword [ebx + ebp + 1]
mov byte [esp + 0x43], 1
lea eax, [ecx*8]
sub eax, ecx
shl eax, 3
lea ecx, [esp + eax + 0xfb]
lea edi, [esp + eax + 0xfe]
mov dword [ecx], edx
mov dx, word [ebx + ebp + 5]
mov word [ecx + 4], dx
mov byte [esp + eax + 0x101], 0
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x80]
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]
jmp 0x45c31e
cmp cl, 0x20
jne 0x45c880
mov ecx, dword [esp + 0x10]
mov al, byte [ecx + ebx + 1]
lea esi, [ecx + ebx + 1]
cmp al, 0x41
jl 0x45c880
cmp al, 0x5a
jg 0x45c880
mov edx, ecx
mov al, byte [edx + ebx + 2]
cmp al, 0x41
jl 0x45c880
cmp al, 0x5a
jg 0x45c880
mov eax, ecx
mov al, byte [eax + ebx + 3]
cmp al, 0x41
jl 0x45c880
cmp al, 0x5a
jg 0x45c880
mov ebp, ecx
mov al, byte [ebx + ebp + 4]
cmp al, 0x41
jl 0x45c293
cmp al, 0x5a
jle 0x45c880
mov ecx, dword [esp + 0x2c]
mov dx, word [esp + 0x80]
mov byte [esp + 0x43], 1
lea eax, [ecx*8]
sub eax, ecx
shl eax, 3
lea ecx, [esp + eax + 0xfb]
lea edi, [esp + eax + 0xfe]
mov word [ecx], dx
mov dl, byte [esp + 0x82]
mov byte [ecx + 2], dl
mov dx, word [esi]
mov ecx, edi
mov word [ecx], dx
mov dl, byte [esi + 2]
mov byte [ecx + 2], dl
mov byte [esp + eax + 0x101], 0
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x80]
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]
jmp 0x45c31e
cmp byte [esp + 0x23], 1
jne 0x45c880
cmp al, 1
jne 0x45c880
mov ebp, dword [esp + 0x10]
cmp byte [ebx + ebp], 0x20
jne 0x45c880
mov ecx, dword [esp + 0x10]
mov al, byte [ecx + ebx + 1]
lea ecx, [ecx + ebx + 1]
cmp al, 0x30
jl 0x45c880
cmp al, 0x39
jg 0x45c880
mov edx, dword [esp + 0x10]
mov al, byte [edx + ebx + 2]
cmp al, 0x30
jl 0x45c880
cmp al, 0x39
jg 0x45c880
mov eax, edx
mov al, byte [eax + ebx + 3]
cmp al, 0x30
jl 0x45c880
cmp al, 0x39
jg 0x45c880
mov al, byte [edx + ebx + 4]
cmp al, 0x30
jl 0x45c880
cmp al, 0x39
jg 0x45c880
mov eax, dword [esp + 0x2c]
lea ebp, [eax*8]
sub ebp, eax
shl ebp, 3
mov al, byte [esp + ebp + 0x113]
test al, al
jne 0x45c60d
mov eax, dword [ecx]
mov ecx, edx
mov dword [esp + ebp + 0x113], eax
lea eax, [ecx + ebx + 5]
mov dword [esp + 0x50], eax
mov al, byte [eax]
cmp al, 0x20
jne 0x45c3eb
lea edi, [esp + 0x68]
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + ebp + 0x10b]
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]
jmp 0x45c880
cmp al, 0x2b
je 0x45c3f7
cmp al, 0x2d
jne 0x45c880
mov ecx, dword [esp + 0x10]
mov dl, byte [ecx + ebx + 6]
push edx
call fcn.004ecf00
add esp, 4
test al, al
je 0x45c880
lea eax, [esp + 0x68]
push eax
call dword [sym.imp.MSVCRT.dll_atoi]
add esp, 4
mov dword [esp + 0x48], eax
test eax, eax
je 0x45c8cb
cmp eax, 0x1f
jg 0x45c8cb
mov cl, byte [0x62fc5c]
mov eax, dword [0x602620]
xor edx, edx
mov byte [esp + 0x90], cl
mov ecx, dword [0x60261c]
mov word [esp + 0x91], dx
mov byte [esp + 0x93], dl
mov edx, dword [0x602618]
mov dword [esp + 0x9c], edx
mov edx, dword [0x60260c]
mov dword [esp + 0x94], eax
mov eax, dword [0x602610]
mov dword [esp + 0x98], ecx
mov ecx, dword [0x602614]
mov dword [esp + 0xa8], edx
mov edx, dword [0x602600]
mov dword [esp + 0xa0], eax
mov eax, dword [0x602604]
mov dword [esp + 0xa4], ecx
mov ecx, dword [0x602608]
mov dword [esp + 0xb4], edx
mov edx, dword [0x6025f4]
mov dword [esp + 0xac], eax
mov eax, dword [0x6025f8]
mov dword [esp + 0xb0], ecx
mov ecx, dword [0x6025fc]
mov dword [esp + 0xc0], edx
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], ecx
mov edi, 1
lea edx, [esp + 0x94]
mov esi, edx
lea eax, [esp + 0x6a]
mov bl, byte [eax]
mov cl, bl
cmp bl, byte [esi]
jne 0x45c51f
test cl, cl
je 0x45c51b
mov bl, byte [eax + 1]
mov cl, bl
cmp bl, byte [esi + 1]
jne 0x45c51f
add eax, 2
add esi, 2
test cl, cl
jne 0x45c4fb
xor eax, eax
jmp 0x45c524
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x45c537
inc edi
add edx, 4
cmp edi, 0xd
jge 0x45c89c
jmp 0x45c4f5
test edi, edi
je 0x45c89c
lea eax, [esp + 0x3c]
push eax
call sub.MFC42.DLL_CTime::GetTickCount
push 0
lea ecx, [esp + 0x40]
call sub.MFC42.DLL_CTime::GetLocalTm
mov eax, dword [eax + 0x10]
push 0
inc eax
lea ecx, [esp + 0x40]
cmp edi, eax
jge 0x45c571
call sub.MFC42.DLL_CTime::GetLocalTm
mov eax, dword [eax + 0x14]
add eax, 0x76d
jmp 0x45c57e
call sub.MFC42.DLL_CTime::GetLocalTm
mov eax, dword [eax + 0x14]
add eax, 0x76c
mov ecx, dword [esp + 0x48]
push 0
push 0
push 0
push 0
push ecx
push edi
push eax
lea ecx, [esp + 0x4c]
call sub.MFC42.DLL_CTime::CTime_1
mov edx, dword [esp + 0x50]
push edx
call dword [sym.imp.MSVCRT.dll_atoi]
mov dword [esp + ebp + 0x128], eax
lea eax, [eax + eax*2]
mov ecx, esp
mov dword [esp + 0x4c], esp
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
lea eax, [eax + eax*8]
shl eax, 7
mov dword [ecx], eax
lea ecx, [esp + 0x34]
call fcn.0041f100
push 0
lea ecx, [esp + 0x34]
call sub.MFC42.DLL_CTime::GetLocalTm
mov esi, dword [eax + 0xc]
push 0
lea ecx, [esp + 0x34]
call sub.MFC42.DLL_CTime::GetLocalTm
mov eax, dword [eax + 0x10]
lea ecx, [esp + ebp + 0x10b]
inc eax
lea eax, [esp + eax*4 + 0x90]
push eax
push esi
push str._02d_s
push ecx
call dword [sym.imp.MSVCRT.dll_sprintf]
mov ebx, dword [esp + 0x34]
add esp, 0x10
jmp 0x45c880
mov eax, dword [ecx]
lea edx, [esp + ebp + 0x11b]
mov dword [esp + ebp + 0x11b], eax
mov cx, word [ecx + 4]
mov word [edx + 4], cx
mov edx, dword [esp + 0x10]
mov al, byte [edx + ebx + 5]
lea esi, [edx + ebx + 5]
cmp al, 0x2b
je 0x45c639
cmp al, 0x2d
jne 0x45c69e
mov eax, dword [esp + 0x10]
mov cl, byte [eax + ebx + 6]
push ecx
call fcn.004ecf00
add esp, 4
test al, al
je 0x45c69e
push esi
call dword [sym.imp.MSVCRT.dll_atoi]
mov dword [esp + ebp + 0x12c], eax
mov edx, dword [esp + ebp + 0x128]
sub eax, edx
add esp, 4
test eax, eax
jle 0x45c67f
add al, 0x30
mov byte [esp + ebp + 0x11f], 0x2b
mov byte [esp + ebp + 0x120], al
jmp 0x45c69e
jge 0x45c696
mov dl, 0x30
mov byte [esp + ebp + 0x11f], 0x2d
sub dl, al
mov byte [esp + ebp + 0x120], dl
jmp 0x45c69e
mov byte [esp + ebp + 0x11f], 0
mov eax, dword [esp + 0x2c8]
mov eax, dword [eax + 0x78]
test eax, eax
je 0x45c86d
mov cl, byte [eax + 0x7c]
test cl, cl
je 0x45c86d
lea ecx, [esp + 0x14]
push ecx
call sub.MFC42.DLL_CTime::GetTickCount
lea edx, [esp + 0x68]
push edx
call dword [sym.imp.MSVCRT.dll_atoi]
mov edx, dword [0x602620]
add esp, 4
xor ecx, ecx
mov dword [esp + 0x48], eax
mov al, byte [0x62fc5c]
mov word [esp + 0xc5], cx
mov byte [esp + 0xc4], al
mov eax, dword [0x60261c]
mov byte [esp + 0xc7], cl
mov ecx, dword [0x602618]
mov dword [esp + 0xc8], edx
mov edx, dword [0x602610]
mov dword [esp + 0xcc], eax
mov eax, dword [0x602614]
mov dword [esp + 0xd0], ecx
mov ecx, dword [0x60260c]
mov dword [esp + 0xd4], edx
mov edx, dword [0x602604]
mov dword [esp + 0xd8], eax
mov eax, dword [0x602608]
mov dword [esp + 0xdc], ecx
mov ecx, dword [0x602600]
mov dword [esp + 0xe0], edx
mov edx, dword [0x6025f8]
mov dword [esp + 0xe4], eax
mov eax, dword [0x6025fc]
mov dword [esp + 0xe8], ecx
mov ecx, dword [0x6025f4]
mov dword [esp + 0xec], edx
mov dword [esp + 0xf0], eax
mov dword [esp + 0xf4], ecx
mov edi, 1
lea ebp, [esp + 0xc8]
mov esi, ebp
lea eax, [esp + 0x6a]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x45c7c2
test cl, cl
je 0x45c7be
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x45c7c2
add eax, 2
add esi, 2
test cl, cl
jne 0x45c79e
xor eax, eax
jmp 0x45c7c7
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x45c7da
inc edi
add ebp, 4
cmp edi, 0xd
jge 0x45c8fa
jmp 0x45c798
test edi, edi
je 0x45c8fa
push 0
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CTime::GetLocalTm
mov eax, dword [eax + 0x10]
push 0
inc eax
lea ecx, [esp + 0x18]
cmp edi, eax
jge 0x45c80a
call sub.MFC42.DLL_CTime::GetLocalTm
mov eax, dword [eax + 0x14]
add eax, 0x76d
jmp 0x45c817
call sub.MFC42.DLL_CTime::GetLocalTm
mov eax, dword [eax + 0x14]
add eax, 0x76c
mov ecx, dword [esp + 0x48]
push 0
push 0
push 0
push 0
push ecx
push edi
push eax
lea ecx, [esp + 0x8c]
call sub.MFC42.DLL_CTime::CTime_1
mov edx, dword [esp + 0x14]
push ecx
mov eax, esp
mov dword [esp + 0x4c], esp
lea ecx, [esp + 0x74]
mov dword [eax], edx
lea eax, [esp + 0x1c]
push eax
call fcn.0042e840
mov ecx, dword [esp + 0x18]
mov eax, 0x91a2b3c5
imul ecx
add edx, ecx
sar edx, 0xb
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
cmp edx, 0x78
jl 0x45c929
mov eax, dword [esp + 0x2c]
mov byte [esp + 0x43], 0
inc eax
mov byte [esp + 0x23], 0
mov dword [esp + 0x2c], eax
mov edx, dword [esp + 0x88]
inc ebx
add edx, 0xfffffff6
mov dword [esp + 0x24], ebx
cmp ebx, edx
jge 0x45c958
jmp 0x45be8d
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c0], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 0xffffffeb
jmp 0x45e0a5
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c0], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 0xffffffe8
jmp 0x45e0a5
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c0], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 0xffffffea
jmp 0x45e0a5
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c0], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 0xfffffffe
jmp 0x45e0a5
mov esi, dword [esp + 0x2c]
test esi, esi
jne 0x45c98f
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c0], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 0xffffffe9
jmp 0x45e0a5
cmp esi, 1
jle 0x45c9a9
lea eax, [esp + 0xf9]
mov ecx, 8
mov byte [eax], 0
add eax, 0x38
dec ecx
jne 0x45c9a0
mov ebx, dword [esp + 0x2c8]
mov eax, dword [ebx + 0x78]
mov ecx, dword [eax + 0x1ec]
mov eax, dword [ecx - 8]
test eax, eax
je 0x45cb18
xor edi, edi
test esi, esi
jle 0x45cb18
mov ebp, dword [esp + 0x2c8]
lea esi, [esp + 0x12c]
mov bl, 6
lea edx, [esi - 0x29]
lea ecx, [esp + 0x10]
push edx
call sub.MFC42.DLL_CString::CString_3
mov eax, dword [esp + 0x10]
mov byte [esp + 0x2c0], 3
cmp dword [eax - 8], 2
jle 0x45ca75
lea ecx, [esp + 0x18]
push 2
push ecx
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::Left
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x2c4], 4
call sub.MFC42.DLL_CString::operator_1
lea ecx, [esp + 0x18]
mov byte [esp + 0x2c0], 3
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x10]
call sub.MFC42.DLL_CString::MakeUpper
cmp byte [esi], 0
je 0x45ca75
lea edx, [esp + 0x10]
lea eax, [esp + 0x70]
push edx
push 0x60ec44
push eax
call sub.MFC42.DLL_operator_2
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x2c4], 5
call sub.MFC42.DLL_CString::operator_1
lea ecx, [esp + 0x70]
mov byte [esp + 0x2c0], 3
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x10]
lea edx, [esp + 0x50]
push ecx
push 0x601cd0
push edx
call sub.MFC42.DLL_operator_2
push 0x601cd0
push eax
lea eax, [esp + 0x50]
mov byte [esp + 0x2c8], bl
push eax
call sub.MFC42.DLL_operator_3
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x2c4], 7
call sub.MFC42.DLL_CString::operator_1
lea ecx, [esp + 0x48]
mov byte [esp + 0x2c0], bl
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x50]
mov byte [esp + 0x2c0], 3
call sub.MFC42.DLL_CString::CString
mov ecx, dword [esp + 0x10]
push ecx
mov ecx, dword [ebp + 0x78]
add ecx, 0x1ec
call sub.MFC42.DLL_CString::Find_1
test eax, eax
mov byte [esp + 0x2c0], 2
lea ecx, [esp + 0x10]
jge 0x45e175
call sub.MFC42.DLL_CString::CString
mov eax, dword [esp + 0x2c]
inc edi
add esi, 0x38
cmp edi, eax
jl 0x45c9de
mov ebx, dword [esp + 0x2c8]
mov esi, eax
mov edx, dword [ebx + 0x78]
mov eax, dword [edx + 0x1f0]
mov ecx, dword [eax - 8]
test ecx, ecx
je 0x45cc33
lea ecx, [esp + 0x24]
call sub.MFC42.DLL_CString::CString_1
xor edi, edi
mov byte [esp + 0x2c0], 8
test esi, esi
jle 0x45cc22
mov ebp, dword [esp + 0x2c8]
lea esi, [esp + 0xf8]
mov bl, 0xa
lea ecx, [esi + 0xb]
push ecx
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::CString_3
push esi
lea ecx, [esp + 0x34]
mov byte [esp + 0x2c4], 9
call sub.MFC42.DLL_CString::CString_3
mov edx, dword [esp + 0x14]
mov byte [esp + 0x2c0], bl
cmp dword [edx - 8], 2
jle 0x45cbe9
lea eax, [esp + 0x18]
push 2
push eax
lea ecx, [esp + 0x1c]
call sub.MFC42.DLL_CString::Left
mov ecx, dword [eax]
push esi
push ecx
lea edx, [esp + 0x2c]
push str.__s_s_
push edx
mov byte [esp + 0x2d0], 0xb
call sub.MFC42.DLL_CString::Format
add esp, 0x10
lea ecx, [esp + 0x18]
mov byte [esp + 0x2c0], bl
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x24]
call sub.MFC42.DLL_CString::MakeUpper
mov eax, dword [esp + 0x24]
mov ecx, dword [ebp + 0x78]
push eax
add ecx, 0x1f0
call sub.MFC42.DLL_CString::Find_1
test eax, eax
jge 0x45ccf3
lea ecx, [esp + 0x30]
mov byte [esp + 0x2c0], 9
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x14]
mov byte [esp + 0x2c0], 8
call sub.MFC42.DLL_CString::CString
mov eax, dword [esp + 0x2c]
inc edi
add esi, 0x38
cmp edi, eax
jl 0x45cb57
mov ebx, dword [esp + 0x2c8]
lea ecx, [esp + 0x24]
mov byte [esp + 0x2c0], 2
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x4c]
call sub.MFC42.DLL_CString::CString_1
lea ecx, [esp + 0x1c]
mov byte [esp + 0x2c0], 0xc
push ecx
lea ecx, [esp + 0x48]
call sub.MFC42.DLL_CString::CString_2
push 0x62fc5c
push 0x60bb98
lea ecx, [esp + 0x4c]
mov byte [esp + 0x2c8], 0xd
call sub.MFC42.DLL_CString::Replace
push 0x60bb98
lea ecx, [esp + 0x48]
call fcn.005928ca
push 0x60c404
lea ecx, [esp + 0x48]
call sub.MFC42.DLL_CString::Find_1
test eax, eax
jle 0x45cda6
mov ecx, dword [esp + 0x44]
cmp byte [eax + ecx - 1], 0x2f
jne 0x45cda6
mov dl, byte [eax + ecx + 2]
mov byte [esp + 0x18], dl
mov eax, dword [esp + 0x18]
push eax
call fcn.004ecf00
add esp, 4
test al, al
je 0x45cda6
test ebx, ebx
je 0x45cd55
mov ecx, dword [ebx + 0x78]
test ecx, ecx
je 0x45cd55
push 0
push 0x60c404
call fcn.004c87b0
test al, al
je 0x45cd55
push 0x60c404
lea ecx, [esp + 0x50]
call sub.MFC42.DLL_CString::operator
jmp 0x45cda6
lea ecx, [esp + 0x30]
mov byte [esp + 0x2c0], 9
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x14]
mov byte [esp + 0x2c0], 8
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x24]
mov byte [esp + 0x2c0], 2
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c0], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 0xffffffe7
jmp 0x45e0a5
lea ecx, [esp + 0x44]
mov byte [esp + 0x2c0], 0xc
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x4c]
mov byte [esp + 0x2c0], 2
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c0], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 1
jmp 0x45e0a5
push 0x60ec38
lea ecx, [esp + 0x48]
call sub.MFC42.DLL_CString::Find_1
test eax, eax
jle 0x45cdea
mov ecx, dword [esp + 0x44]
cmp byte [eax + ecx - 1], 0x2f
jne 0x45cdea
mov cl, byte [eax + ecx + 2]
mov byte [esp + 0x18], cl
mov edx, dword [esp + 0x18]
push edx
call fcn.004ecf00
add esp, 4
test al, al
je 0x45cdea
push 0x60ec38
lea ecx, [esp + 0x50]
call sub.MFC42.DLL_CString::operator
push 0x60ec34
lea ecx, [esp + 0x48]
call sub.MFC42.DLL_CString::Find_1
test eax, eax
jle 0x45ce2e
mov ecx, dword [esp + 0x44]
cmp byte [eax + ecx - 1], 0x2f
jne 0x45ce2e
mov al, byte [eax + ecx + 2]
mov byte [esp + 0x18], al
mov ecx, dword [esp + 0x18]
push ecx
call fcn.004ecf00
add esp, 4
test al, al
je 0x45ce2e
push 0x60ec34
lea ecx, [esp + 0x50]
call sub.MFC42.DLL_CString::operator
push 0x60ec30
lea ecx, [esp + 0x48]
call sub.MFC42.DLL_CString::Find_1
test eax, eax
jle 0x45ce72
mov ecx, dword [esp + 0x44]
cmp byte [eax + ecx - 1], 0x2f
jne 0x45ce72
mov dl, byte [eax + ecx + 2]
mov byte [esp + 0x18], dl
mov eax, dword [esp + 0x18]
push eax
call fcn.004ecf00
add esp, 4
test al, al
je 0x45ce72
push 0x60ec30
lea ecx, [esp + 0x50]
call sub.MFC42.DLL_CString::operator
push 0x60ec2c
lea ecx, [esp + 0x48]
call sub.MFC42.DLL_CString::Find_1
test eax, eax
jle 0x45ceb6
mov ecx, dword [esp + 0x44]
cmp byte [eax + ecx - 1], 0x2f
jne 0x45ceb6
mov cl, byte [eax + ecx + 2]
mov byte [esp + 0x18], cl
mov edx, dword [esp + 0x18]
push edx
call fcn.004ecf00
add esp, 4
test al, al
je 0x45ceb6
push 0x60ec2c
lea ecx, [esp + 0x50]
call sub.MFC42.DLL_CString::operator
lea ecx, [esp + 0x54]
call sub.MFC42.DLL_CString::CString_1
mov al, byte [esp + 0x2d8]
mov byte [esp + 0x2c0], 0xe
test al, al
je 0x45d1d4
mov eax, dword [esp + 0x2c8]
mov ecx, dword [eax + 0x78]
mov al, byte [ecx + 0x8c]
test al, al
jne 0x45d1d4
lea edx, [esp + 0x10]
push edx
call sub.MFC42.DLL_CTime::GetTickCount
mov eax, dword [esp + 0x2c8]
mov eax, dword [eax + 0x78]
mov ecx, dword [eax + 0x3c]
mov dl, byte [ecx]
lea esi, [ecx + 1]
cmp dl, 0x23
je 0x45cf11
mov esi, ecx
cmp byte [eax + 0x16e], 1
je 0x45d0d0
mov edx, dword [eax + 0x1bc]
lea ecx, [eax + 0x1bc]
mov edi, dword [edx - 8]
test edi, edi
je 0x45d0d0
mov eax, dword [esp + 0x2c8]
mov edx, dword [eax + 0xb0]
mov eax, dword [edx - 8]
test eax, eax
jne 0x45cf4d
mov eax, ecx
jmp 0x45cf6b
push 0x62fc5c
lea ecx, [esp + 0x1c]
call sub.MFC42.DLL_CString::CString_3
mov dword [esp + 0x38], 1
mov byte [esp + 0x2c0], 0x10
push eax
lea ecx, [esp + 0x40]
call sub.MFC42.DLL_CString::CString_2
mov al, byte [esp + 0x38]
mov ebx, 0x12
test al, 1
mov dword [esp + 0x2c0], ebx
je 0x45cf9c
mov eax, dword [esp + 0x38]
lea ecx, [esp + 0x18]
and al, 0xfe
mov dword [esp + 0x38], eax
call sub.MFC42.DLL_CString::CString
mov eax, dword [esp + 0x2c8]
mov ecx, dword [eax + 0x78]
mov edx, dword [ecx + 0x1c0]
mov eax, dword [edx - 8]
test eax, eax
je 0x45d029
push 0
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CTime::GetLocalTm
mov esi, dword [eax + 4]
push 0
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CTime::GetLocalTm
mov edi, dword [eax + 8]
push 0
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CTime::GetLocalTm
mov ebp, dword [eax + 0xc]
push 0
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CTime::GetLocalTm
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x2c8]
mov eax, dword [eax + 0x10]
push ecx
mov ecx, dword [edx + 0x78]
inc eax
mov edx, dword [ecx + 0x1c0]
push edx
push esi
push edi
push ebp
push eax
lea eax, [esp + 0x6c]
push str._rC_MAK__02d_02d__02d_02d__s__r_s
push eax
call sub.MFC42.DLL_CString::Format
add esp, 0x20
mov byte [esp + 0x2c0], 0xe
lea ecx, [esp + 0x3c]
jmp 0x45d1cf
push esi
lea ecx, [esp + 0x34]
call sub.MFC42.DLL_CString::CString_3
push 0x2d
push 0x5f
lea ecx, [esp + 0x38]
mov byte [esp + 0x2c8], 0x13
call sub.MFC42.DLL_CString::Replace_1
push 0
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CTime::GetLocalTm
mov esi, dword [eax + 4]
push 0
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CTime::GetLocalTm
mov edi, dword [eax + 8]
push 0
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CTime::GetLocalTm
mov ebp, dword [eax + 0xc]
push 0
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CTime::GetLocalTm
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x2c8]
mov eax, dword [eax + 0x10]
push ecx
mov ecx, dword [edx + 0x78]
inc eax
mov edx, dword [ecx + 0x58]
mov ecx, dword [esp + 0x34]
push edx
push ecx
push esi
push edi
push ebp
push eax
lea edx, [esp + 0x70]
push str._rC_REM__02d_02d__02d_02d__s__s_r_s
push edx
call sub.MFC42.DLL_CString::Format
add esp, 0x24
lea ecx, [esp + 0x30]
mov byte [esp + 0x2c0], bl
call sub.MFC42.DLL_CString::CString
mov byte [esp + 0x2c0], 0xe
lea ecx, [esp + 0x3c]
jmp 0x45d1cf
mov eax, dword [eax + 0x1c0]
mov ecx, dword [eax - 8]
test ecx, ecx
je 0x45d142
push 0
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CTime::GetLocalTm
mov esi, dword [eax + 4]
push 0
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CTime::GetLocalTm
mov edi, dword [eax + 8]
push 0
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CTime::GetLocalTm
mov ebp, dword [eax + 0xc]
push 0
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CTime::GetLocalTm
mov ecx, dword [esp + 0x2c8]
mov eax, dword [eax + 0x10]
inc eax
mov edx, dword [ecx + 0x78]
mov ecx, dword [edx + 0x1c0]
lea edx, [esp + 0x54]
push ecx
push esi
push edi
push ebp
push eax
push str._rC_MAK__02d_02d__02d_02d__s
push edx
call sub.MFC42.DLL_CString::Format
add esp, 0x1c
jmp 0x45d1d4
push esi
lea ecx, [esp + 0x34]
call sub.MFC42.DLL_CString::CString_3
push 0x2d
push 0x5f
lea ecx, [esp + 0x38]
mov byte [esp + 0x2c8], 0xf
call sub.MFC42.DLL_CString::Replace_1
push 0
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CTime::GetLocalTm
mov esi, dword [eax + 4]
push 0
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CTime::GetLocalTm
mov edi, dword [eax + 8]
push 0
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CTime::GetLocalTm
mov ebp, dword [eax + 0xc]
push 0
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CTime::GetLocalTm
mov ecx, dword [esp + 0x2c8]
mov eax, dword [eax + 0x10]
inc eax
mov edx, dword [ecx + 0x78]
mov ecx, dword [edx + 0x58]
mov edx, dword [esp + 0x30]
push ecx
push edx
push esi
push edi
push ebp
push eax
lea eax, [esp + 0x6c]
push str._rC_REM__02d_02d__02d_02d__s__s
push eax
call sub.MFC42.DLL_CString::Format
add esp, 0x20
mov byte [esp + 0x2c0], 0xe
lea ecx, [esp + 0x30]
call sub.MFC42.DLL_CString::CString
mov edi, dword [esp + 0x2c8]
lea ecx, [esp + 0x103]
push ecx
lea esi, [edi + 0x121c]
mov ecx, esi
call sub.MFC42.DLL_CString::operator
lea edx, [esp + 0x18]
push 2
push edx
mov ecx, esi
call sub.MFC42.DLL_CString::Left
push eax
mov ecx, esi
mov byte [esp + 0x2c4], 0x14
call sub.MFC42.DLL_CString::operator_1
lea ecx, [esp + 0x18]
mov byte [esp + 0x2c0], 0xe
call sub.MFC42.DLL_CString::CString
mov eax, dword [esp + 0x34]
lea ecx, [esp + 0x64]
mov dword [edi + 0x1220], eax
call sub.MFC42.DLL_CString::CString_1
mov al, byte [esp + 0x2dc]
mov byte [esp + 0x2c0], 0x15
test al, al
je 0x45d323
mov ecx, dword [edi + 0x78]
mov edx, dword [ecx + 0x1fc]
mov eax, dword [edx - 8]
test eax, eax
je 0x45d323
lea eax, [esp + 0x103]
lea ecx, [esp + 0x14]
push eax
call sub.MFC42.DLL_CString::CString_3
lea ecx, [esp + 0x18]
push 2
mov bl, 0x16
push ecx
lea ecx, [esp + 0x1c]
mov byte [esp + 0x2c8], bl
call sub.MFC42.DLL_CString::Left
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x2c4], 0x17
call sub.MFC42.DLL_CString::operator_1
lea ecx, [esp + 0x18]
mov byte [esp + 0x2c0], bl
call sub.MFC42.DLL_CString::CString
mov esi, edi
push ecx
mov ecx, esp
mov dword [esp + 0x74], esp
mov edx, dword [esi + 0x78]
add edx, 0x1fc
push edx
call sub.MFC42.DLL_CString::CString_2
push ecx
lea eax, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x50], esp
push eax
mov byte [esp + 0x2cc], 0x18
call sub.MFC42.DLL_CString::CString_2
lea ecx, [esp + 0x20]
push esi
push ecx
mov ecx, dword [esp + 0x68]
mov byte [esp + 0x2d0], bl
call fcn.00462dc0
push eax
lea ecx, [esp + 0x68]
mov byte [esp + 0x2c4], 0x19
call sub.MFC42.DLL_CString::operator_1
lea ecx, [esp + 0x18]
mov byte [esp + 0x2c0], bl
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x14]
mov byte [esp + 0x2c0], 0x15
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x5c]
call sub.MFC42.DLL_CString::CString_1
mov al, byte [edi + 0x99]
mov byte [esp + 0x2c0], 0x1a
test al, al
jne 0x45d4ab
mov edx, dword [edi + 0xb0]
mov eax, dword [edx - 8]
test eax, eax
jne 0x45d4ab
mov eax, dword [edi + 0x78]
test eax, eax
je 0x45d4ab
mov cl, byte [eax + 0x17e]
test cl, cl
je 0x45d4ab
lea eax, [esp + 0x103]
lea ecx, [esp + 0x14]
push eax
call sub.MFC42.DLL_CString::CString_3
lea ecx, [esp + 0x18]
push 2
mov bl, 0x1b
push ecx
lea ecx, [esp + 0x1c]
mov byte [esp + 0x2c8], bl
call sub.MFC42.DLL_CString::Left
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x2c4], 0x1c
call sub.MFC42.DLL_CString::operator_1
lea ecx, [esp + 0x18]
mov byte [esp + 0x2c0], bl
call sub.MFC42.DLL_CString::CString
lea edx, [esp + 0xfb]
lea ecx, [esp + 0x30]
push edx
call sub.MFC42.DLL_CString::CString_3
lea eax, [esp + 0x50]
push 3
push eax
lea ecx, [esp + 0x38]
mov byte [esp + 0x2c8], 0x1d
call sub.MFC42.DLL_CString::Left
lea ecx, [esp + 0x58]
push 3
push ecx
lea ecx, [esp + 0x38]
mov byte [esp + 0x2c8], 0x1e
call sub.MFC42.DLL_CString::Right
push 1
push ecx
lea edx, [esp + 0x60]
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
mov byte [esp + 0x2cc], 0x1f
call sub.MFC42.DLL_CString::CString_2
push ecx
lea eax, [esp + 0x5c]
mov ecx, esp
mov dword [esp + 0x7c], esp
push eax
mov byte [esp + 0x2d0], 0x20
call sub.MFC42.DLL_CString::CString_2
push ecx
lea edx, [esp + 0x24]
mov ecx, esp
mov dword [esp + 0x58], esp
push edx
mov byte [esp + 0x2d4], 0x21
call sub.MFC42.DLL_CString::CString_2
mov eax, dword [esp + 0x2d8]
mov byte [esp + 0x2d0], 0x1f
push eax
lea ecx, [eax + 0x94]
call fcn.004b8970
lea ecx, [esp + 0x58]
mov byte [esp + 0x2c0], 0x1e
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x50]
mov byte [esp + 0x2c0], 0x1d
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x30]
mov byte [esp + 0x2c0], bl
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x14]
mov byte [esp + 0x2c0], 0x1a
call sub.MFC42.DLL_CString::CString
mov edi, dword [esp + 0x2c8]
lea ecx, [esp + 0x60]
call sub.MFC42.DLL_CString::CString_1
mov al, byte [esp + 0x2d8]
mov byte [esp + 0x2c0], 0x22
cmp al, 1
jne 0x45d4f6
mov eax, dword [edi + 0xb0]
mov ecx, dword [eax - 8]
test ecx, ecx
jne 0x45d4f6
mov ecx, dword [edi + 0x11fc]
mov eax, dword [ecx - 8]
test eax, eax
je 0x45d4f6
mov edx, ecx
lea eax, [esp + 0x60]
push edx
push str._rRMK_TJ_AUTH__s
push eax
call sub.MFC42.DLL_CString::Format
add esp, 0xc
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x24], 0
test eax, eax
jle 0x45d7cd
lea esi, [esp + 0xfb]
mov edi, dword [esp + 0x2c8]
mov ecx, dword [edi + 0x78]
mov eax, dword [ecx + 0x118]
test eax, eax
jle 0x45d662
mov edx, dword [0x635400]
mov eax, dword [edx + 0x1a0]
test eax, eax
jle 0x45d662
push esi
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CString::CString_3
lea eax, [esp + 0x3c]
push 3
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x2c8], 0x23
call sub.MFC42.DLL_CString::Left
lea ecx, [esp + 0x14]
push 3
push ecx
lea ecx, [esp + 0x18]
mov byte [esp + 0x2c8], 0x24
call sub.MFC42.DLL_CString::Right
push 0
push ecx
lea edx, [esp + 0x1c]
mov ecx, esp
mov dword [esp + 0x60], esp
push edx
mov byte [esp + 0x2cc], 0x25
call sub.MFC42.DLL_CString::CString_2
push ecx
lea eax, [esp + 0x48]
mov ecx, esp
mov dword [esp + 0x5c], esp
push eax
mov byte [esp + 0x2d0], 0x26
call sub.MFC42.DLL_CString::CString_2
push ecx
lea edx, [esi - 3]
mov ecx, esp
mov dword [esp + 0x40], esp
push edx
mov byte [esp + 0x2d4], 0x27
call sub.MFC42.DLL_CString::CString_3
push ecx
lea eax, [esi + 8]
mov ecx, esp
mov dword [esp + 0x94], esp
push eax
mov byte [esp + 0x2d8], 0x28
call sub.MFC42.DLL_CString::CString_3
mov ecx, dword [edi + 0x78]
mov eax, dword [0x635400]
mov byte [esp + 0x2d4], 0x25
mov edx, dword [ecx + 0x118]
lea ecx, [eax + 0x90]
push edx
call fcn.0049c880
test al, al
je 0x45da25
mov edx, dword [edi + 0x78]
lea ecx, [esi + 0x10]
push ecx
mov ecx, dword [0x635400]
mov eax, dword [edx + 0x118]
add ecx, 0x90
push eax
call fcn.0049ccb0
test al, al
mov byte [esp + 0x2c0], 0x24
lea ecx, [esp + 0x14]
je 0x45daed
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x3c]
mov byte [esp + 0x2c0], 0x23
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x10]
mov byte [esp + 0x2c0], 0x22
call sub.MFC42.DLL_CString::CString
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x24]
lea ebp, [edx - 1]
cmp eax, ebp
jne 0x45d677
mov ebx, dword [esp + 0x60]
jmp 0x45d694
push 0x62fc5c
lea ecx, [esp + 0x4c]
call sub.MFC42.DLL_CString::CString_3
or dword [esp + 0x38], 2
mov ebx, dword [eax]
mov byte [esp + 0x2c0], 0x29
cmp dword [esp + 0x24], ebp
jne 0x45d6a0
mov edi, dword [esp + 0x54]
jmp 0x45d6c0
push 0x62fc5c
lea ecx, [esp + 0x74]
call sub.MFC42.DLL_CString::CString_3
or dword [esp + 0x38], 4
mov edi, dword [eax]
mov dword [esp + 0x2c0], 0x2a
cmp dword [esp + 0x24], ebp
jne 0x45d6cc
mov ecx, dword [esp + 0x64]
jmp 0x45d6ec
push 0x62fc5c
lea ecx, [esp + 0x1c]
call sub.MFC42.DLL_CString::CString_3
or dword [esp + 0x38], 8
mov ecx, dword [eax]
mov dword [esp + 0x2c0], 0x2b
mov edx, dword [esp + 0x24]
lea eax, [esi + 0x18]
sub edx, ebp
neg edx
sbb edx, edx
and edx, 0xffffffed
add edx, 0x20
push edx
mov edx, dword [esp + 0x38]
push ebx
push edi
push ecx
lea ecx, [eax + 8]
push ecx
push eax
mov eax, dword [esp + 0x64]
push edx
push eax
lea ecx, [esi + 0x10]
push esi
lea edx, [esi - 3]
push ecx
mov ecx, dword [esp + 0x50]
lea eax, [esi + 8]
push edx
push eax
push ecx
lea edx, [esp + 0x90]
push str._sSS:__s__s__s__s__s_d__s__s_s_s_s_c
push edx
call sub.MFC42.DLL_CString::Format
mov ebx, dword [esp + 0x74]
add esp, 0x3c
test bl, 8
mov dword [esp + 0x2c0], 0x2a
je 0x45d75d
and ebx, 0xfffffff7
lea ecx, [esp + 0x18]
mov dword [esp + 0x38], ebx
call sub.MFC42.DLL_CString::CString
test bl, 4
mov dword [esp + 0x2c0], 0x29
je 0x45d77d
and ebx, 0xfffffffb
lea ecx, [esp + 0x70]
mov dword [esp + 0x38], ebx
call sub.MFC42.DLL_CString::CString
test bl, 2
mov dword [esp + 0x2c0], 0x22
je 0x45d79d
and ebx, 0xfffffffd
lea ecx, [esp + 0x48]
mov dword [esp + 0x38], ebx
call sub.MFC42.DLL_CString::CString
mov ecx, dword [esp + 0x2d4]
lea eax, [esp + 0x5c]
push eax
call fcn.00592b6a
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x2c]
inc eax
add esi, 0x38
cmp eax, ecx
mov dword [esp + 0x24], eax
jl 0x45d511
mov edi, dword [esp + 0x2c8]
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x74]
mov esi, dword [esp + 0x2d4]
add ecx, edx
push ecx
mov ecx, esi
call fcn.005928ca
lea ecx, [esp + 0x78]
call sub.MFC42.DLL_CString::CString_1
mov eax, dword [edi + 0x121c]
lea ecx, [esp + 0x78]
push eax
push str.OSI__s_CTCM
push ecx
mov byte [esp + 0x2cc], 0x2c
call sub.MFC42.DLL_CString::Format
mov edx, dword [esp + 0x84]
add esp, 0xc
mov ecx, esi
push edx
push str.OSI_YY_CTCM
call sub.MFC42.DLL_CString::Replace
mov eax, dword [edi + 0x78]
mov ecx, dword [eax + 0x1f4]
mov eax, dword [ecx - 8]
test eax, eax
je 0x45dd38
lea edx, [esp + 0x103]
lea ecx, [esp + 0x38]
push edx
call sub.MFC42.DLL_CString::CString_3
lea eax, [esp + 0x74]
push 2
push eax
lea ecx, [esp + 0x40]
mov byte [esp + 0x2c8], 0x2d
call sub.MFC42.DLL_CString::Left
push eax
lea ecx, [esp + 0x3c]
mov byte [esp + 0x2c4], 0x2e
call sub.MFC42.DLL_CString::operator_1
lea ecx, [esp + 0x74]
mov byte [esp + 0x2c0], 0x2d
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0xfb]
push ecx
lea ecx, [esp + 0x30]
call sub.MFC42.DLL_CString::CString_3
lea edx, [esp + 0x10]
push 3
push edx
lea ecx, [esp + 0x34]
mov byte [esp + 0x2c8], 0x2f
call sub.MFC42.DLL_CString::Left
lea eax, [esp + 0x34]
push 3
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0x2c8], 0x30
call sub.MFC42.DLL_CString::Right
mov bl, 0x31
lea ecx, [esp + 0x24]
mov byte [esp + 0x2c0], bl
call sub.MFC42.DLL_CString::CString_1
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x38]
push ecx
push edx
push eax
lea ecx, [esp + 0x30]
push str._s:_s_s
push ecx
mov byte [esp + 0x2d4], 0x32
call sub.MFC42.DLL_CString::Format
add esp, 0x14
lea ecx, [esp + 0x24]
call sub.MFC42.DLL_CString::MakeUpper
mov esi, dword [esp + 0x2c8]
mov edx, dword [esp + 0x24]
push edx
mov ecx, dword [esi + 0x78]
add ecx, 0x1f4
call sub.MFC42.DLL_CString::Find_1
test eax, eax
jl 0x45dba9
lea ecx, [esp + 0x24]
mov byte [esp + 0x2c0], bl
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x34]
mov byte [esp + 0x2c0], 0x30
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x10]
mov byte [esp + 0x2c0], 0x2f
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2c0], 0x2d
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x38]
mov byte [esp + 0x2c0], 0x2c
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x78]
mov byte [esp + 0x2c0], 0x22
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x60]
mov byte [esp + 0x2c0], 0x1a
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x5c]
mov byte [esp + 0x2c0], 0x15
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x64]
mov byte [esp + 0x2c0], 0xe
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x54]
mov byte [esp + 0x2c0], 0xd
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x44]
mov byte [esp + 0x2c0], 0xc
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x4c]
mov byte [esp + 0x2c0], 2
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c0], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 0xffffffe6
jmp 0x45e0a5
lea ecx, [esp + 0x14]
mov byte [esp + 0x2c0], 0x24
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x3c]
mov byte [esp + 0x2c0], 0x23
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x10]
mov byte [esp + 0x2c0], 0x22
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x60]
mov byte [esp + 0x2c0], 0x1a
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x5c]
mov byte [esp + 0x2c0], 0x15
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x64]
mov byte [esp + 0x2c0], 0xe
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x54]
mov byte [esp + 0x2c0], 0xd
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x44]
mov byte [esp + 0x2c0], 0xc
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x4c]
mov byte [esp + 0x2c0], 2
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c0], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 0xffffffe6
jmp 0x45e0a5
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x3c]
mov byte [esp + 0x2c0], 0x23
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x10]
mov byte [esp + 0x2c0], 0x22
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x60]
mov byte [esp + 0x2c0], 0x1a
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x5c]
mov byte [esp + 0x2c0], 0x15
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x64]
mov byte [esp + 0x2c0], 0xe
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x54]
mov byte [esp + 0x2c0], 0xd
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x44]
mov byte [esp + 0x2c0], 0xc
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x4c]
mov byte [esp + 0x2c0], 2
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c0], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 0xffffffe3
jmp 0x45e0a5
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x38]
push eax
push ecx
push edx
lea eax, [esp + 0x30]
push str._s:_s_s
push eax
call sub.MFC42.DLL_CString::Format
add esp, 0x14
lea ecx, [esp + 0x24]
call sub.MFC42.DLL_CString::MakeUpper
mov ecx, dword [esp + 0x24]
push ecx
mov ecx, dword [esi + 0x78]
add ecx, 0x1f4
call sub.MFC42.DLL_CString::Find_1
test eax, eax
mov byte [esp + 0x2c0], bl
lea ecx, [esp + 0x24]
jl 0x45dce8
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x34]
mov byte [esp + 0x2c0], 0x30
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x10]
mov byte [esp + 0x2c0], 0x2f
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2c0], 0x2d
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x38]
mov byte [esp + 0x2c0], 0x2c
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x78]
mov byte [esp + 0x2c0], 0x22
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x60]
mov byte [esp + 0x2c0], 0x1a
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x5c]
mov byte [esp + 0x2c0], 0x15
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x64]
mov byte [esp + 0x2c0], 0xe
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x54]
mov byte [esp + 0x2c0], 0xd
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x44]
mov byte [esp + 0x2c0], 0xc
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x4c]
mov byte [esp + 0x2c0], 2
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c0], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 0xffffffe6
jmp 0x45e0a5
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x34]
mov byte [esp + 0x2c0], 0x30
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x10]
mov byte [esp + 0x2c0], 0x2f
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x2c]
mov byte [esp + 0x2c0], 0x2d
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x38]
mov byte [esp + 0x2c0], 0x2c
call sub.MFC42.DLL_CString::CString
mov edi, dword [esp + 0x2c8]
mov edx, dword [edi + 0x78]
mov eax, dword [edx + 0x1f8]
mov ecx, dword [eax - 8]
test ecx, ecx
je 0x45de9f
lea ecx, [esp + 0x103]
push ecx
lea ecx, [esp + 0x38]
call sub.MFC42.DLL_CString::CString_3
lea edx, [esp + 0x74]
push 2
push edx
lea ecx, [esp + 0x3c]
mov byte [esp + 0x2c8], 0x33
call sub.MFC42.DLL_CString::Left
push eax
lea ecx, [esp + 0x38]
mov byte [esp + 0x2c4], 0x34
call sub.MFC42.DLL_CString::operator_1
lea ecx, [esp + 0x74]
mov byte [esp + 0x2c0], 0x33
call sub.MFC42.DLL_CString::CString
mov eax, dword [esp + 0x34]
mov ecx, dword [edi + 0x78]
push eax
add ecx, 0x1f8
call sub.MFC42.DLL_CString::Find_1
test eax, eax
jl 0x45de8e
lea ecx, [esp + 0xfb]
push ecx
lea ecx, [esp + 0x40]
call sub.MFC42.DLL_CString::CString_3
lea edx, [esp + 0x14]
push 3
push edx
lea ecx, [esp + 0x44]
mov byte [esp + 0x2c8], 0x35
call sub.MFC42.DLL_CString::Left
lea eax, [esp + 0x30]
mov bl, 0x36
push 3
push eax
lea ecx, [esp + 0x44]
mov byte [esp + 0x2c8], bl
call sub.MFC42.DLL_CString::Right
push ecx
lea edx, [esp + 0x34]
mov ecx, esp
mov dword [esp + 0x84], esp
push edx
mov byte [esp + 0x2c8], 0x37
call sub.MFC42.DLL_CString::CString_2
mov eax, dword [0x635400]
lea ecx, [eax + 0x90]
call fcn.0049ce70
test al, al
je 0x45e0c0
push ecx
lea edx, [esp + 0x18]
mov ecx, esp
mov dword [esp + 0x84], esp
push edx
call sub.MFC42.DLL_CString::CString_2
mov eax, dword [0x635400]
lea ecx, [eax + 0x90]
call fcn.0049ce70
test al, al
je 0x45e0c0
lea ecx, [esp + 0x30]
mov byte [esp + 0x2c0], bl
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x14]
mov byte [esp + 0x2c0], 0x35
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x3c]
mov byte [esp + 0x2c0], 0x33
call sub.MFC42.DLL_CString::CString
mov edi, dword [esp + 0x2c8]
lea ecx, [esp + 0x34]
mov byte [esp + 0x2c0], 0x2c
call sub.MFC42.DLL_CString::CString
mov al, byte [edi + 0x99]
test al, al
jne 0x45e007
mov ecx, dword [edi + 0xb0]
mov eax, dword [ecx - 8]
test eax, eax
jne 0x45e007
mov eax, dword [edi + 0x78]
test eax, eax
je 0x45e007
mov cl, byte [eax + 0x17c]
test cl, cl
je 0x45e007
lea edx, [esp + 0xfb]
lea ecx, [esp + 0x58]
push edx
call sub.MFC42.DLL_CString::CString_3
lea eax, [esp + 0x48]
push 3
push eax
lea ecx, [esp + 0x60]
mov byte [esp + 0x2c8], 0x38
call sub.MFC42.DLL_CString::Left
lea ecx, [esp + 0x7c]
push 3
push ecx
lea ecx, [esp + 0x60]
mov byte [esp + 0x2c8], 0x39
call sub.MFC42.DLL_CString::Right
push ecx
lea edx, [esp + 0x80]
mov bl, 0x3a
mov ecx, esp
mov dword [esp + 0x84], esp
push edx
mov byte [esp + 0x2c8], bl
call sub.MFC42.DLL_CString::CString_2
push ecx
lea eax, [esp + 0x50]
mov ecx, esp
mov dword [esp + 0x7c], esp
push eax
mov byte [esp + 0x2cc], 0x3b
call sub.MFC42.DLL_CString::CString_2
push ecx
lea edx, [esp + 0x10f]
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
mov byte [esp + 0x2d0], 0x3c
call sub.MFC42.DLL_CString::CString_3
mov esi, dword [esp + 0x2d4]
lea edx, [esp + 0x5c]
mov byte [esp + 0x2cc], bl
mov eax, dword [esi + 0x78]
mov ecx, dword [eax + 0x10c]
mov eax, dword [0x635400]
push ecx
push edx
lea ecx, [eax + 0x90]
call fcn.00498f20
mov ecx, dword [esp + 0x50]
mov byte [esp + 0x2c0], 0x3d
mov eax, dword [ecx - 8]
test eax, eax
je 0x45dfc4
lea edx, [esp + 0x50]
lea ecx, [esi + 0x120c]
push edx
mov byte [esi + 0x11d9], 1
call sub.MFC42.DLL_CString::operator_1
lea ecx, [esp + 0x50]
mov byte [esp + 0x2c0], bl
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x7c]
mov byte [esp + 0x2c0], 0x39
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x48]
mov byte [esp + 0x2c0], 0x38
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x58]
mov byte [esp + 0x2c0], 0x2c
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x78]
mov byte [esp + 0x2c0], 0x22
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x60]
mov byte [esp + 0x2c0], 0x1a
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x5c]
mov byte [esp + 0x2c0], 0x15
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x64]
mov byte [esp + 0x2c0], 0xe
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x54]
mov byte [esp + 0x2c0], 0xd
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x44]
mov byte [esp + 0x2c0], 0xc
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x4c]
mov byte [esp + 0x2c0], 2
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c0], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], 0xffffffff
call sub.MFC42.DLL_CString::CString
xor eax, eax
mov ecx, dword [esp + 0x2b8]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x2b4
ret 0x18
lea ecx, [esp + 0x30]
mov byte [esp + 0x2c0], bl
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x14]
mov byte [esp + 0x2c0], 0x35
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x3c]
mov byte [esp + 0x2c0], 0x33
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x34]
mov byte [esp + 0x2c0], 0x2c
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x78]
mov byte [esp + 0x2c0], 0x22
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x60]
mov byte [esp + 0x2c0], 0x1a
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x5c]
mov byte [esp + 0x2c0], 0x15
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x64]
mov byte [esp + 0x2c0], 0xe
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x54]
mov byte [esp + 0x2c0], 0xd
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x44]
mov byte [esp + 0x2c0], 0xc
call sub.MFC42.DLL_CString::CString
mov byte [esp + 0x2c0], 2
lea ecx, [esp + 0x4c]
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x28]
mov byte [esp + 0x2c0], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c0], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 0xffffffe7
jmp 0x45e0a5