Function at 0x40f440
Capabilities:
Contain obfuscated stackstrings
Parse credit card information
Print debug messages
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x46a990
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x78
push ebx
push ebp
push esi
push edi
mov edi, ecx
mov eax, dword [esp + 0x98]
mov ebp, dword [sym.imp.MSVCRT.dll__mbscmp]
xor esi, esi
push 0x4872c8
push eax
mov dword [esp + 0x98], esi
call ebp
add esp, 8
test eax, eax
je 0x410217
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::CString_2
mov ecx, dword [esp + 0x98]
lea edx, [esp + 0x18]
push ecx
push str.salou:_s
push edx
mov byte [esp + 0x9c], 1
call sub.MFC42.DLL_CString::Format
mov eax, dword [esp + 0x24]
add esp, 0xc
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov ecx, dword [edi + 0x38]
push str.__cff6400_
mov dword [edi + 0x44], ecx
lea ecx, [esp + 0x9c]
call sub.MFC42.DLL_CString::Find_2
test eax, eax
je 0x40f515
lea edx, [esp + 0x98]
lea eax, [esp + 0x1c]
push edx
push 0x481164
push eax
call sub.MFC42.DLL_operator
push eax
lea ecx, [esp + 0x9c]
mov byte [esp + 0x94], 2
call sub.MFC42.DLL_CString::operator
lea ecx, [esp + 0x1c]
mov byte [esp + 0x90], 1
call sub.MFC42.DLL_CString::CString
mov ecx, dword [esp + 0x98]
mov eax, dword [ecx - 8]
cmp eax, esi
jle 0x40f8c1
mov al, byte [esi + ecx]
cmp al, 0x77
je 0x40f53e
cmp al, 0x57
je 0x40f53e
cmp al, 0x68
je 0x40f53e
cmp al, 0x48
jne 0x40f8b0
push 5
lea ecx, [esp + 0x24]
push esi
push ecx
lea ecx, [esp + 0xa4]
call sub.MFC42.DLL_CString::Mid_1
mov eax, dword [eax]
mov ebx, dword [sym.imp.MSVCRT.dll__mbsicmp]
push str.http:
push eax
mov byte [esp + 0x98], 3
call ebx
add esp, 8
test eax, eax
je 0x40f5a4
push 4
lea edx, [esp + 0x20]
push esi
push edx
lea ecx, [esp + 0xa4]
call sub.MFC42.DLL_CString::Mid_1
mov eax, dword [eax]
push str.www.
push eax
call ebx
add esp, 8
lea ecx, [esp + 0x1c]
test eax, eax
sete bl
call sub.MFC42.DLL_CString::CString
test bl, bl
je 0x40f5a6
mov bl, 1
lea ecx, [esp + 0x20]
mov byte [esp + 0x90], 1
call sub.MFC42.DLL_CString::CString
test bl, bl
je 0x40f8b0
lea eax, [esi - 7]
push 7
lea ecx, [esp + 0x2c]
push eax
push ecx
lea ecx, [esp + 0xa4]
call sub.MFC42.DLL_CString::Mid_1
mov eax, dword [eax]
push str.__e0001
push eax
mov byte [esp + 0x98], 4
call ebp
add esp, 8
test eax, eax
je 0x40f629
lea edx, [esi - 0xe]
push 0xe
lea eax, [esp + 0x28]
push edx
push eax
lea ecx, [esp + 0xa4]
call sub.MFC42.DLL_CString::Mid_1
mov eax, dword [eax]
push str.__e0001http:__
push eax
call ebp
add esp, 8
lea ecx, [esp + 0x24]
test eax, eax
setne bl
call sub.MFC42.DLL_CString::CString
test bl, bl
je 0x40f629
mov bl, 1
jmp 0x40f62b
xor bl, bl
lea ecx, [esp + 0x28]
mov byte [esp + 0x90], 1
call sub.MFC42.DLL_CString::CString
test bl, bl
je 0x40f8b0
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CString::CString_2
mov ecx, dword [esp + 0x98]
lea edx, [esp + 0x2c]
mov byte [esp + 0x90], 5
mov eax, dword [ecx - 8]
lea ecx, [esp + 0x98]
sub eax, esi
push eax
push edx
call sub.MFC42.DLL_CString::Right
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x94], 6
call sub.MFC42.DLL_CString::operator
lea ecx, [esp + 0x2c]
mov byte [esp + 0x90], 5
call sub.MFC42.DLL_CString::CString
mov ecx, dword [esp + 0x14]
xor edx, edx
mov ebx, dword [ecx - 8]
test ebx, ebx
jle 0x40f71f
mov al, byte [edx + ecx]
cmp al, 0x61
jl 0x40f6ae
cmp al, 0x7a
jle 0x40f6e2
cmp al, 0x41
jl 0x40f6b6
cmp al, 0x5a
jle 0x40f6e2
cmp al, 0x30
jl 0x40f6be
cmp al, 0x39
jle 0x40f6e2
cmp al, 0x2f
je 0x40f6e2
cmp al, 0x2e
je 0x40f6e2
cmp al, 0x3a
je 0x40f6e2
cmp al, 0x26
je 0x40f6e2
cmp al, 0x3f
je 0x40f6e2
cmp al, 0x3d
je 0x40f6e2
cmp al, 0x2d
je 0x40f6e2
cmp al, 0x5f
je 0x40f6e2
cmp al, 0x25
jne 0x40f6e9
inc edx
cmp edx, ebx
jl 0x40f6a3
jmp 0x40f71f
lea eax, [esp + 0x30]
push edx
push eax
lea ecx, [esp + 0x1c]
call sub.MFC42.DLL_CString::Left
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x94], 7
call sub.MFC42.DLL_CString::operator
lea ecx, [esp + 0x30]
mov byte [esp + 0x90], 5
call sub.MFC42.DLL_CString::CString
mov ecx, dword [esp + 0x14]
mov ebp, dword [ecx - 8]
lea ecx, [esp + 0x14]
push ecx
lea edx, [esp + 0x44]
push str.__e0001
push edx
call sub.MFC42.DLL_operator
push 0x481138
push eax
lea eax, [esp + 0x44]
mov byte [esp + 0x98], 8
push eax
call sub.MFC42.DLL_operator_1
lea ecx, [esp + 0x14]
lea edx, [esp + 0x38]
push ecx
push eax
push edx
mov byte [esp + 0x9c], 9
call sub.MFC42.DLL_operator_2
push 0x481130
push eax
lea eax, [esp + 0x3c]
mov byte [esp + 0x98], 0xa
push eax
call sub.MFC42.DLL_operator_1
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x94], 0xb
call sub.MFC42.DLL_CString::operator
lea ecx, [esp + 0x34]
mov byte [esp + 0x90], 0xa
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x38]
mov byte [esp + 0x90], 9
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x3c]
mov byte [esp + 0x90], 8
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x40]
mov byte [esp + 0x90], 5
call sub.MFC42.DLL_CString::CString
mov ecx, dword [esp + 0x98]
lea edx, [esp + 0x50]
mov eax, dword [ecx - 8]
lea ecx, [esp + 0x98]
sub eax, ebp
sub eax, esi
push eax
push edx
call sub.MFC42.DLL_CString::Right
mov ebx, eax
lea eax, [esp + 0x4c]
push esi
push eax
lea ecx, [esp + 0xa0]
mov byte [esp + 0x98], 0xc
call sub.MFC42.DLL_CString::Left
lea ecx, [esp + 0x14]
lea edx, [esp + 0x48]
push ecx
push eax
push edx
mov byte [esp + 0x9c], 0xd
call sub.MFC42.DLL_operator_2
push ebx
push eax
lea eax, [esp + 0x4c]
mov byte [esp + 0x98], 0xe
push eax
call sub.MFC42.DLL_operator_2
mov byte [esp + 0x90], 0xf
push eax
lea ecx, [esp + 0x9c]
call sub.MFC42.DLL_CString::operator
lea ecx, [esp + 0x44]
mov byte [esp + 0x90], 0xe
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x48]
mov byte [esp + 0x90], 0xd
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x4c]
mov byte [esp + 0x90], 0xc
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x50]
mov byte [esp + 0x90], 5
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x14]
lea esi, [esi + ebp*2 + 0xc]
mov byte [esp + 0x90], 1
call sub.MFC42.DLL_CString::CString
mov ebp, dword [sym.imp.MSVCRT.dll__mbscmp]
mov ecx, dword [esp + 0x98]
inc esi
cmp esi, dword [ecx - 8]
jl 0x40f527
mov eax, dword [ecx - 8]
xor esi, esi
test eax, eax
jle 0x4101a2
mov cl, byte [esi + ecx]
cmp cl, 0x2f
mov byte [esp + 0x13], cl
jne 0x410017
mov dword [esp + 0x14], 0
lea ebx, [edi + 0x140]
cmp esi, 0xffffffff
je 0x410017
mov eax, dword [ebx]
push esi
push eax
lea ecx, [esp + 0xa0]
call sub.MFC42.DLL_CString::Find_3
test eax, eax
jl 0x40fa7f
mov eax, dword [ebx]
push esi
push eax
lea ecx, [esp + 0xa0]
call sub.MFC42.DLL_CString::Find_3
cmp eax, esi
jne 0x40fa7f
mov eax, dword [edi + 0x134]
lea ecx, [esi + esi*2 + 0xc]
shl ecx, 1
lea edx, [eax + eax*2]
shl edx, 1
cmp ecx, edx
jle 0x40f9ac
push ecx
lea ecx, [esp + 0x9c]
mov eax, esp
mov dword [esp + 0x88], esp
push esi
push eax
call sub.MFC42.DLL_CString::Left
mov ecx, edi
call fcn.00411c90
mov ecx, dword [esp + 0x98]
lea edx, [esp + 0x50]
mov eax, dword [ecx - 8]
lea ecx, [esp + 0x98]
sub eax, esi
push eax
push edx
call sub.MFC42.DLL_CString::Right
push eax
lea ecx, [esp + 0x9c]
mov byte [esp + 0x94], 0x10
call sub.MFC42.DLL_CString::operator
lea ecx, [esp + 0x50]
mov byte [esp + 0x90], 1
call sub.MFC42.DLL_CString::CString
mov eax, dword [edi + 0x38]
or esi, 0xffffffff
inc eax
mov dword [edi + 0x38], eax
jmp 0x40fa7f
mov eax, dword [esp + 0x98]
mov ecx, dword [ebx]
lea edx, [esp + 0x40]
mov eax, dword [eax - 8]
mov ebp, dword [ecx - 8]
sub eax, ebp
lea ecx, [esp + 0x98]
sub eax, esi
push eax
push edx
call sub.MFC42.DLL_CString::Right
mov ebp, eax
lea eax, [esp + 0x44]
push esi
push eax
lea ecx, [esp + 0xa0]
mov byte [esp + 0x98], 0x11
call sub.MFC42.DLL_CString::Left
push str.
lea ecx, [esp + 0x4c]
push eax
push ecx
mov byte [esp + 0x9c], 0x12
call sub.MFC42.DLL_operator_1
push ebp
lea edx, [esp + 0x50]
push eax
push edx
mov byte [esp + 0x9c], 0x13
call sub.MFC42.DLL_operator_2
push eax
lea ecx, [esp + 0x9c]
mov byte [esp + 0x94], 0x14
call sub.MFC42.DLL_CString::operator
lea ecx, [esp + 0x4c]
mov byte [esp + 0x90], 0x13
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x48]
mov byte [esp + 0x90], 0x12
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x44]
mov byte [esp + 0x90], 0x11
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x40]
mov byte [esp + 0x90], 1
call sub.MFC42.DLL_CString::CString
mov eax, dword [esp + 0x14]
mov ecx, edi
push eax
push esi
call fcn.00411db0
mov eax, dword [esp + 0x14]
add ebx, 4
inc eax
cmp eax, 0x33
mov dword [esp + 0x14], eax
jl 0x40f8ec
cmp esi, 0xffffffff
je 0x410017
push esi
push str.__c
lea ecx, [esp + 0xa0]
call sub.MFC42.DLL_CString::Find_3
mov ecx, dword [esp + 0x98]
cmp eax, esi
jne 0x40fc15
mov eax, dword [ecx - 8]
lea edx, [esi + 0xb]
cmp eax, edx
jl 0x40fc15
cmp byte [esi + ecx + 0xa], 0x3e
jne 0x40fc15
mov eax, dword [edi + 0x134]
dec eax
cmp esi, eax
jg 0x40fc15
push 0xb
lea ecx, [esp + 0x40]
push esi
push ecx
lea ecx, [esp + 0xa4]
call sub.MFC42.DLL_CString::Mid_1
push eax
lea ecx, [edi + 0x20c]
mov byte [esp + 0x94], 0x15
call sub.MFC42.DLL_CString::operator
lea ecx, [esp + 0x3c]
mov byte [esp + 0x90], 1
call sub.MFC42.DLL_CString::CString
lea edx, [esi + 4]
push 6
lea eax, [esp + 0x3c]
push edx
push eax
lea ecx, [esp + 0xa4]
call sub.MFC42.DLL_CString::Mid_1
mov eax, dword [eax]
lea ecx, [esp + 0x1c]
push ecx
push 0x48111c
push eax
call dword [sym.imp.MSVCRT.dll_sscanf]
add esp, 0xc
lea ecx, [esp + 0x38]
call sub.MFC42.DLL_CString::CString
mov eax, dword [esp + 0x1c]
xor edx, edx
mov dl, byte [esp + 0x1e]
mov ecx, eax
and eax, 0xff
and ecx, 0xff00
shl eax, 0x10
or eax, ecx
mov ecx, edi
or eax, edx
push eax
push esi
call fcn.00411e90
mov edx, dword [esp + 0x98]
lea ecx, [esp + 0x98]
mov eax, dword [edx - 8]
sub eax, esi
sub eax, 0xb
push eax
lea eax, [esp + 0x30]
push eax
call sub.MFC42.DLL_CString::Right
mov ebp, eax
lea ecx, [esp + 0x30]
push esi
push ecx
lea ecx, [esp + 0xa0]
mov byte [esp + 0x98], 0x16
call sub.MFC42.DLL_CString::Left
push ebp
lea edx, [esp + 0x38]
push eax
push edx
mov byte [esp + 0x9c], 0x17
call sub.MFC42.DLL_operator_2
push eax
lea ecx, [esp + 0x9c]
mov byte [esp + 0x94], 0x18
call sub.MFC42.DLL_CString::operator
lea ecx, [esp + 0x34]
mov byte [esp + 0x90], 0x17
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x30]
mov byte [esp + 0x90], 0x16
call sub.MFC42.DLL_CString::CString
mov byte [esp + 0x90], 1
lea ecx, [esp + 0x2c]
jmp 0x41000f
mov eax, dword [edi + 0x134]
dec eax
cmp esi, eax
jg 0x40fe69
push esi
push str.__e0001
lea ecx, [esp + 0xa0]
call sub.MFC42.DLL_CString::Find_3
cmp eax, esi
je 0x40fc54
push esi
push str.__e0003
lea ecx, [esp + 0xa0]
call sub.MFC42.DLL_CString::Find_3
cmp eax, esi
jne 0x40fe69
push esi
push 0x481130
lea ecx, [esp + 0xa0]
call sub.MFC42.DLL_CString::Find_3
cmp eax, esi
jle 0x40fe69
push esi
push 0x481138
lea ecx, [esp + 0xa0]
call sub.MFC42.DLL_CString::Find_3
push esi
push 0x481130
lea ecx, [esp + 0xa0]
mov ebx, eax
call sub.MFC42.DLL_CString::Find_3
cmp ebx, eax
jge 0x40fe69
push esi
push esi
push 0x481138
lea ecx, [esp + 0xa4]
call sub.MFC42.DLL_CString::Find_3
mov ecx, 0xfffffff9
sub ecx, esi
push ecx
add eax, ecx
mov edx, esp
mov dword [esp + 0x8c], esp
push eax
lea eax, [esi + 7]
push eax
push edx
lea ecx, [esp + 0xac]
call sub.MFC42.DLL_CString::Mid_1
mov ecx, edi
call fcn.00411f70
mov ecx, dword [esp + 0x98]
push esi
push 0x481130
mov ebp, dword [ecx - 8]
lea ecx, [esp + 0xa0]
call sub.MFC42.DLL_CString::Find_3
sub ebp, eax
lea edx, [esp + 0x60]
sub ebp, 4
lea ecx, [esp + 0x98]
push ebp
push edx
call sub.MFC42.DLL_CString::Right
mov ebp, eax
push esi
push 0x481138
lea ecx, [esp + 0xa0]
mov byte [esp + 0x98], 0x19
call sub.MFC42.DLL_CString::Find_3
push esi
push 0x481130
lea ecx, [esp + 0xa0]
mov ebx, eax
call sub.MFC42.DLL_CString::Find_3
sub eax, ebx
lea ecx, [esp + 0x98]
dec eax
push eax
push esi
push 0x481138
call sub.MFC42.DLL_CString::Find_3
inc eax
lea ecx, [esp + 0x9c]
push eax
lea eax, [esp + 0x64]
push eax
call sub.MFC42.DLL_CString::Mid_1
mov ebx, eax
lea ecx, [esp + 0x58]
push esi
push ecx
lea ecx, [esp + 0xa0]
mov byte [esp + 0x98], 0x1a
call sub.MFC42.DLL_CString::Left
push str.__c0001fe_
lea edx, [esp + 0x58]
push eax
push edx
mov byte [esp + 0x9c], 0x1b
call sub.MFC42.DLL_operator_1
push ebx
push eax
lea eax, [esp + 0x28]
mov byte [esp + 0x98], 0x1c
push eax
call sub.MFC42.DLL_operator_2
mov bl, 0x1d
lea ecx, [edi + 0x20c]
lea edx, [esp + 0x24]
push ecx
push eax
push edx
mov byte [esp + 0x9c], bl
call sub.MFC42.DLL_operator_2
push ebp
push eax
lea eax, [esp + 0x30]
mov byte [esp + 0x98], 0x1e
push eax
call sub.MFC42.DLL_operator_2
push eax
lea ecx, [esp + 0x9c]
mov byte [esp + 0x94], 0x1f
call sub.MFC42.DLL_CString::operator
lea ecx, [esp + 0x28]
mov byte [esp + 0x90], 0x1e
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x24]
mov byte [esp + 0x90], bl
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x20]
mov byte [esp + 0x90], 0x1c
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x54]
mov byte [esp + 0x90], 0x1b
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x58]
mov byte [esp + 0x90], 0x1a
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x5c]
mov byte [esp + 0x90], 0x19
call sub.MFC42.DLL_CString::CString
mov byte [esp + 0x90], 1
lea ecx, [esp + 0x60]
jmp 0x41000f
mov ecx, dword [edi + 0x134]
dec ecx
cmp esi, ecx
jg 0x410017
push esi
push 0x481104
lea ecx, [esp + 0xa0]
call sub.MFC42.DLL_CString::Find_3
cmp eax, esi
jne 0x410017
push esi
push 0x481130
lea ecx, [esp + 0xa0]
call sub.MFC42.DLL_CString::Find_3
cmp eax, esi
jle 0x410017
push esi
push 0x481138
lea ecx, [esp + 0xa0]
call sub.MFC42.DLL_CString::Find_3
push esi
push 0x481130
lea ecx, [esp + 0xa0]
mov ebx, eax
call sub.MFC42.DLL_CString::Find_3
cmp ebx, eax
jge 0x410017
mov edx, dword [esp + 0x98]
push esi
push 0x481130
lea ecx, [esp + 0xa0]
mov ebp, dword [edx - 8]
call sub.MFC42.DLL_CString::Find_3
sub ebp, eax
lea eax, [esp + 0x74]
sub ebp, 4
lea ecx, [esp + 0x98]
push ebp
push eax
call sub.MFC42.DLL_CString::Right
mov ebx, eax
push esi
push 0x481138
lea ecx, [esp + 0xa0]
mov byte [esp + 0x98], 0x20
call sub.MFC42.DLL_CString::Find_3
push esi
push 0x481130
lea ecx, [esp + 0xa0]
mov ebp, eax
call sub.MFC42.DLL_CString::Find_3
sub eax, ebp
lea ecx, [esp + 0x98]
dec eax
push eax
push esi
push 0x481138
call sub.MFC42.DLL_CString::Find_3
inc eax
lea ecx, [esp + 0x74]
push eax
push ecx
lea ecx, [esp + 0xa4]
call sub.MFC42.DLL_CString::Mid_1
mov ebp, eax
lea edx, [esp + 0x6c]
push esi
push edx
lea ecx, [esp + 0xa0]
mov byte [esp + 0x98], 0x21
call sub.MFC42.DLL_CString::Left
push ebp
push eax
lea eax, [esp + 0x70]
mov byte [esp + 0x98], 0x22
push eax
call sub.MFC42.DLL_operator_2
push ebx
lea ecx, [esp + 0x68]
push eax
push ecx
mov byte [esp + 0x9c], 0x23
call sub.MFC42.DLL_operator_2
push eax
lea ecx, [esp + 0x9c]
mov byte [esp + 0x94], 0x24
call sub.MFC42.DLL_CString::operator
lea ecx, [esp + 0x64]
mov byte [esp + 0x90], 0x23
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x68]
mov byte [esp + 0x90], 0x22
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x6c]
mov byte [esp + 0x90], 0x21
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x70]
mov byte [esp + 0x90], 0x20
call sub.MFC42.DLL_CString::CString
mov byte [esp + 0x90], 1
lea ecx, [esp + 0x74]
call sub.MFC42.DLL_CString::CString
or esi, 0xffffffff
mov eax, dword [edi + 0x134]
dec eax
cmp esi, eax
jne 0x410092
mov al, byte [esp + 0x13]
test al, al
jge 0x41002b
dec esi
push ecx
lea edx, [esi + 1]
mov eax, esp
mov dword [esp + 0x88], esp
push edx
push eax
lea ecx, [esp + 0xa4]
call sub.MFC42.DLL_CString::Left
mov ecx, edi
call fcn.00411c90
mov ecx, dword [esp + 0x98]
lea edx, [esp + 0x78]
mov eax, dword [ecx - 8]
lea ecx, [esp + 0x98]
sub eax, esi
dec eax
push eax
push edx
call sub.MFC42.DLL_CString::Right
push eax
lea ecx, [esp + 0x9c]
mov byte [esp + 0x94], 0x25
call sub.MFC42.DLL_CString::operator
mov byte [esp + 0x90], 1
lea ecx, [esp + 0x78]
jmp 0x410175
jle 0x410184
mov al, byte [esp + 0x13]
test al, al
jge 0x410108
inc esi
push ecx
mov ecx, esp
mov dword [esp + 0x88], esp
lea eax, [esi - 1]
push eax
push ecx
lea ecx, [esp + 0xa4]
call sub.MFC42.DLL_CString::Left
mov ecx, edi
call fcn.00411c90
mov edx, dword [esp + 0x98]
lea ecx, [esp + 0x98]
mov eax, dword [edx - 8]
sub eax, esi
inc eax
push eax
lea eax, [esp + 0x80]
push eax
call sub.MFC42.DLL_CString::Right
push eax
lea ecx, [esp + 0x9c]
mov byte [esp + 0x94], 0x26
call sub.MFC42.DLL_CString::operator
mov byte [esp + 0x90], 1
lea ecx, [esp + 0x7c]
jmp 0x410175
add esi, 2
lea ecx, [esi - 2]
push ecx
mov edx, esp
mov dword [esp + 0x88], esp
push ecx
push edx
lea ecx, [esp + 0xa4]
call sub.MFC42.DLL_CString::Left
mov ecx, edi
call fcn.00411c90
mov eax, dword [esp + 0x98]
lea ecx, [esp + 0x80]
mov eax, dword [eax - 8]
sub eax, esi
add eax, 2
push eax
push ecx
lea ecx, [esp + 0xa0]
call sub.MFC42.DLL_CString::Right
push eax
lea ecx, [esp + 0x9c]
mov byte [esp + 0x94], 0x27
call sub.MFC42.DLL_CString::operator
mov byte [esp + 0x90], 1
lea ecx, [esp + 0x80]
call sub.MFC42.DLL_CString::CString
mov eax, dword [edi + 0x38]
or esi, 0xffffffff
inc eax
mov dword [edi + 0x38], eax
mov al, byte [esp + 0x13]
test al, al
jge 0x410191
test esi, esi
jl 0x410191
inc esi
mov ecx, dword [esp + 0x98]
inc esi
cmp esi, dword [ecx - 8]
jl 0x40f8ce
mov eax, dword [ecx - 8]
test eax, eax
jle 0x4101e8
lea ecx, [esp + 0x98]
call fcn.00410250
push ecx
lea ecx, [esp + 0x9c]
mov edx, esp
mov dword [esp + 0x88], esp
push eax
push edx
call sub.MFC42.DLL_CString::Left
mov ecx, edi
call fcn.00411c90
push 0x4872c8
lea ecx, [esp + 0x9c]
call sub.MFC42.DLL_CString::operator_1
inc dword [edi + 0x38]
mov eax, dword [edi + 0x38]
mov ecx, dword [edi + 0x44]
sub eax, ecx
mov ecx, edi
mov dword [edi + 0x44], eax
call fcn.004120d0
push 3
mov ecx, 0x4a9188
call fcn.00462ce0
lea ecx, [esp + 0x18]
mov byte [esp + 0x90], 0
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x98]
mov dword [esp + 0x90], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov ecx, dword [esp + 0x88]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x84
ret 4