Function at 0x413750
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x420880
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x3a0
push ebx
push ebp
push esi
mov esi, ecx
mov eax, dword [esi + 0x20]
push edi
push eax
mov dword [esp + 0x24], esi
call dword [sym.imp.user32.dll_GetDC]
push eax
call sub.mfc42.dll_CDC::FromHandle
lea ecx, [esp + 0xe4]
mov edi, eax
call sub.mfc42.dll_CDC::CDC
lea ecx, [esp + 0x104]
mov dword [esp + 0x3b8], 0
call sub.mfc42.dll_CDC::CDC
test edi, edi
mov byte [esp + 0x3b8], 1
jne 0x4137ba
xor eax, eax
jmp 0x4137bd
mov eax, dword [edi + 4]
mov ebx, dword [sym.imp.gdi32.dll_CreateCompatibleDC]
push eax
call ebx
push eax
lea ecx, [esp + 0xe8]
call sub.mfc42.dll_CDC::Attach
test edi, edi
jne 0x4137db
xor eax, eax
jmp 0x4137de
mov eax, dword [edi + 4]
push eax
call ebx
push eax
lea ecx, [esp + 0x108]
call sub.mfc42.dll_CDC::Attach
lea ecx, [esp + 0xe4]
call sub.mfc42.dll_CDC::SaveDC
lea ecx, [esp + 0x104]
mov dword [esp + 0x148], eax
call sub.mfc42.dll_CDC::SaveDC
mov dword [esp + 0x12c], eax
mov eax, dword [esi + 0xc4]
test eax, eax
je 0x413829
lea ecx, [esi + 0xc0]
call sub.mfc42.dll_CGdiObject::DeleteObject
mov ebp, dword [esi + 0x8c]
mov eax, dword [esi + 0x94]
mov edx, dword [edi + 4]
sub eax, ebp
mov ebp, dword [sym.imp.gdi32.dll_CreateCompatibleBitmap]
push 0x1388
push eax
lea ecx, [esi + 0xc0]
push edx
mov dword [esp + 0x44], ecx
call ebp
mov ecx, dword [esp + 0x38]
push eax
call sub.mfc42.dll_CGdiObject::Attach
mov eax, dword [esi + 0xbc]
test eax, eax
je 0x413872
lea ecx, [esi + 0xb8]
call sub.mfc42.dll_CGdiObject::DeleteObject
mov eax, dword [esi + 0x94]
sub eax, dword [esi + 0x8c]
push 0x1388
push eax
mov eax, dword [edi + 4]
push eax
add esi, 0xb8
call ebp
push eax
mov ecx, esi
call sub.mfc42.dll_CGdiObject::Attach
mov eax, dword [esp + 0x38]
test eax, eax
jne 0x4138a4
xor eax, eax
jmp 0x4138ab
mov ecx, dword [esp + 0x38]
mov eax, dword [ecx + 4]
mov edx, dword [esp + 0xe8]
push eax
push edx
call sub.mfc42.dll_CDC::SelectGdiObject
test esi, esi
je 0x4138c0
mov esi, dword [esi + 4]
mov eax, dword [esp + 0x108]
push esi
push eax
call sub.mfc42.dll_CDC::SelectGdiObject
mov esi, dword [esp + 0x20]
mov ecx, dword [esi + 0x60]
mov edx, dword [esi + 0x94]
push ecx
push 0x1388
push edx
xor edi, edi
push edi
push edi
lea ecx, [esp + 0xf8]
call sub.mfc42.dll_CDC::FillSolidRect_1
mov eax, dword [esi + 0x60]
mov ecx, dword [esi + 0x94]
push eax
push 0x1388
push ecx
push edi
push edi
lea ecx, [esp + 0x118]
call sub.mfc42.dll_CDC::FillSolidRect_1
add esi, 0x54
push esi
lea ecx, [esp + 0x38]
call fcn.0041eafa
push 0xa
lea ecx, [esp + 0x38]
mov byte [esp + 0x3bc], 2
call fcn.0041ee18
mov dword [esp + 0x7c], 0x4256d0
mov dword [esp + 0x88], edi
mov dword [esp + 0x8c], edi
mov dword [esp + 0x84], edi
mov dword [esp + 0x80], edi
mov dword [esp + 0x90], edi
mov dword [esp + 0x94], 0xa
or ecx, 0xffffffff
mov dword [esp + 0x28c], ecx
mov dword [esp + 0x278], edi
mov dword [esp + 0x27c], edi
mov dword [esp + 0x280], edi
mov dword [esp + 0x284], edi
mov dword [esp + 0x288], edi
xor eax, eax
mov edi, str.Arial
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
shr ecx, 2
lea edx, [esp + 0x170]
mov esi, edi
mov dword [esp + 0x274], 0xc
mov edi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
push 0
rep movsb byte es:[edi], byte [esi]
push 0
lea ecx, [esp + 0x84]
mov byte [esp + 0x3c0], 3
call fcn.00417af0
lea edi, [eax + 8]
mov ecx, 0x48
lea esi, [esp + 0x170]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [esp + 0x84]
test ecx, ecx
je 0x4139fc
mov dword [ecx], eax
jmp 0x413a03
mov dword [esp + 0x80], eax
xor ecx, ecx
mov dword [esp + 0x84], eax
mov dword [esp + 0x60], 0x4256bc
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x70], ecx
mov dword [esp + 0x68], ecx
mov dword [esp + 0x64], ecx
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], 0xa
mov edx, dword [esp + 0x20]
mov eax, dword [edx + 0x94]
sub eax, dword [edx + 0x8c]
push ecx
mov edi, 1
push ecx
mov esi, edi
lea ecx, [esp + 0x68]
mov byte [esp + 0x3c0], 4
mov dword [esp + 0x54], edi
mov dword [esp + 0x58], esi
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], 0x1388
call fcn.00417ba0
mov edx, dword [esp + 0x54]
lea ecx, [eax + 8]
mov dword [ecx], edi
mov dword [ecx + 4], esi
mov dword [ecx + 8], edx
mov edx, dword [esp + 0x58]
mov dword [ecx + 0xc], edx
mov ecx, dword [esp + 0x68]
test ecx, ecx
je 0x413a90
mov dword [ecx], eax
jmp 0x413a94
mov dword [esp + 0x64], eax
xor edi, edi
lea ecx, [esp + 0x18]
mov dword [esp + 0x68], eax
mov dword [esp + 0x98], edi
call sub.mfc42.dll_CString::CString_2
lea ecx, [esp + 0x10]
mov byte [esp + 0x3b8], 5
call sub.mfc42.dll_CString::CString_2
lea ecx, [esp + 0x14]
mov byte [esp + 0x3b8], 6
call sub.mfc42.dll_CString::CString_2
mov dword [esp + 0x28], edi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x24], edi
mov dword [esp + 0xc0], 0x4256a8
mov dword [esp + 0xc4], edi
mov dword [esp + 0xd0], edi
mov dword [esp + 0xcc], edi
mov dword [esp + 0xc8], edi
lea ecx, [esp + 0x3c]
mov byte [esp + 0x3b8], 8
mov dword [esp + 0x2c], 1
mov dword [esp + 0x38], edi
call sub.mfc42.dll_CString::CString_2
lea ecx, [esp + 0x48]
mov byte [esp + 0x3b8], 9
call sub.mfc42.dll_CString::CString_2
lea ecx, [esp + 0xd4]
mov byte [esp + 0x3b8], 0xa
call sub.mfc42.dll_CDC::CDC
mov edx, dword [esp + 0xe8]
lea eax, [esp + 0xe4]
neg eax
sbb eax, eax
and eax, edx
push eax
mov byte [esp + 0x3bc], 0xb
call ebx
push eax
lea ecx, [esp + 0xd8]
call sub.mfc42.dll_CDC::Attach
mov esi, 0x4240ac
mov dword [esp + 0xb0], edi
mov dword [esp + 0xac], esi
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0xe8]
push 0x1388
push eax
push ecx
mov byte [esp + 0x3c4], 0xc
call ebp
push eax
lea ecx, [esp + 0xb0]
call sub.mfc42.dll_CGdiObject::Attach
mov edx, dword [esp + 0xb0]
lea eax, [esp + 0xac]
neg eax
sbb eax, eax
and eax, edx
mov edx, dword [esp + 0xd8]
push eax
push edx
call sub.mfc42.dll_CDC::SelectGdiObject
lea ecx, [esp + 0x118]
mov dword [esp + 0x140], eax
call sub.mfc42.dll_CDC::CDC
mov ecx, dword [esp + 0x108]
lea eax, [esp + 0x104]
neg eax
sbb eax, eax
mov byte [esp + 0x3b8], 0xd
and eax, ecx
push eax
call ebx
push eax
lea ecx, [esp + 0x11c]
call sub.mfc42.dll_CDC::Attach
mov dword [esp + 0xbc], edi
mov dword [esp + 0xb8], esi
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x108]
push 0x1388
push eax
push ecx
mov byte [esp + 0x3c4], 0xe
call ebp
push eax
lea ecx, [esp + 0xbc]
call sub.mfc42.dll_CGdiObject::Attach
mov ebp, dword [esp + 0xbc]
mov edx, dword [esp + 0x11c]
lea eax, [esp + 0xb8]
neg eax
sbb eax, eax
and eax, ebp
push eax
push edx
call sub.mfc42.dll_CDC::SelectGdiObject
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x138], eax
mov eax, dword [ecx - 8]
xor ebp, ebp
cmp eax, edi
mov dword [esp + 0x30], ebp
jle 0x415201
mov ebx, dword [sym.imp.msvcrt.dll__mbscmp]
cmp ebp, edi
jl 0x415201
cmp dword [esp + 0x98], edi
mov al, byte [ecx + ebp]
jne 0x4140b0
cmp al, 0x3c
jne 0x413da0
mov eax, dword [esp + 0x10]
push 0x42c0ec
push eax
call ebx
add esp, 8
test eax, eax
je 0x413d74
sub esp, 0x120
mov edi, esp
mov ecx, 0x48
lea esi, [esp + 0x3b0]
rep movsd dword es:[edi], dword [esi]
push ecx
lea edx, [esp + 0x160]
mov ecx, esp
mov dword [esp + 0x1bc], esp
push edx
call fcn.0041eafa
push ecx
lea eax, [esp + 0x138]
mov ecx, esp
mov dword [esp + 0x154], esp
push eax
mov byte [esp + 0x4e4], 0xf
call fcn.0041eafa
lea ecx, [esp + 0x1a4]
mov byte [esp + 0x4e0], 0xe
call fcn.004173b0
push eax
lea ecx, [esp + 0x18c]
call fcn.004173b0
push eax
lea ecx, [esp + 0x1f0]
push ecx
lea edx, [esp + 0x158]
push edx
lea eax, [esp + 0x154]
push eax
lea ecx, [esp + 0x164]
push ecx
mov ecx, dword [esp + 0x160]
lea edx, [esp + 0x258]
push edx
lea eax, [esp + 0x218]
push eax
call fcn.004154b0
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x2c], 0
xor edi, edi
push 0x42c0ec
lea ecx, [esp + 0x1c]
call sub.mfc42.dll_CString::operator_1
push 0x42c0ec
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::operator_1
mov dword [esp + 0x98], 1
jmp 0x4151ed
cmp al, 0xa
jne 0x41408f
cmp dword [esp + 0x2c], edi
je 0x413f3e
mov ecx, dword [esp + 0x84]
lea esi, [ecx + 8]
mov ecx, 0x48
lea edi, [esp + 0x170]
rep movsd dword es:[edi], dword [esi]
xor edi, edi
mov dword [esp + 0xf8], edi
mov dword [esp + 0xf4], 0x424098
mov eax, dword [esp + 0x278]
mov ecx, dword [esp + 0x274]
lea edx, [esp + 0x170]
push edx
mov edx, dword [esp + 0x288]
push edi
push 2
push edi
push edi
push edi
neg eax
sbb eax, eax
and edx, 0xff
push edx
mov edx, dword [esp + 0x29c]
and edx, 0xff
push edx
mov edx, dword [esp + 0x29c]
and edx, 0xff
push edx
and eax, 0x2bc
push eax
push edi
push edi
neg ecx
push edi
push ecx
mov byte [esp + 0x3f0], 0x11
call dword [sym.imp.gdi32.dll_CreateFontA]
push eax
lea ecx, [esp + 0xf8]
call sub.mfc42.dll_CGdiObject::Attach
lea eax, [esp + 0xf4]
push eax
lea ecx, [esp + 0xd8]
call sub.mfc42.dll_CDC::SelectObject_2
mov ecx, dword [esp + 0x54]
mov edx, dword [esp + 0x58]
mov dword [esp + 0x158], ecx
push 0x42bf30
lea ecx, [esp + 0x118]
mov esi, eax
mov dword [esp + 0x154], edi
mov dword [esp + 0x158], edi
mov dword [esp + 0x160], edx
call sub.mfc42.dll_CString::CString_1
mov eax, dword [esp + 0x114]
mov ecx, dword [eax - 8]
push 0x400
lea edx, [esp + 0x154]
push edx
push ecx
push eax
mov eax, dword [esp + 0xe4]
lea ecx, [esp + 0xe4]
mov byte [esp + 0x3c8], 0x12
call dword [eax + 0x70]
lea ecx, [esp + 0x114]
mov byte [esp + 0x3b8], 0x11
call sub.mfc42.dll_CString::CString
push esi
lea ecx, [esp + 0xd8]
call sub.mfc42.dll_CDC::SelectObject_2
mov ecx, dword [esp + 0x15c]
mov edx, dword [esp + 0x154]
mov eax, dword [esp + 0x1c]
sub ecx, edx
add eax, ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0xf4], 0x423218
lea ecx, [esp + 0xf4]
mov byte [esp + 0x3b8], 0x13
call sub.mfc42.dll_CGdiObject::DeleteObject
mov byte [esp + 0x3b8], 0xe
mov dword [esp + 0xf4], 0x422ce8
jmp 0x41405f
mov edx, dword [esp + 0x10]
push 0x42c0ec
push edx
call ebx
add esp, 8
test eax, eax
je 0x413fff
sub esp, 0x120
mov edi, esp
mov ecx, 0x48
lea esi, [esp + 0x3b0]
rep movsd dword es:[edi], dword [esi]
push ecx
lea eax, [esp + 0x160]
mov ecx, esp
mov dword [esp + 0x150], esp
push eax
call fcn.0041eafa
push ecx
lea edx, [esp + 0x138]
mov ecx, esp
mov dword [esp + 0x168], esp
push edx
mov byte [esp + 0x4e4], 0x14
call fcn.0041eafa
lea ecx, [esp + 0x1a4]
mov byte [esp + 0x4e0], 0xe
call fcn.004173b0
push eax
lea ecx, [esp + 0x18c]
call fcn.004173b0
push eax
lea eax, [esp + 0x1f0]
push eax
lea ecx, [esp + 0x158]
push ecx
lea edx, [esp + 0x154]
push edx
lea eax, [esp + 0x164]
push eax
lea ecx, [esp + 0x258]
push ecx
mov ecx, dword [esp + 0x164]
lea edx, [esp + 0x218]
push edx
call fcn.004154b0
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x24]
add eax, 8
push eax
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0xc4]
push ecx
mov ecx, dword [esp + 0x30]
push edx
push eax
push ecx
lea edx, [esp + 0x12c]
push edx
lea eax, [esp + 0xec]
push eax
lea ecx, [esp + 0x120]
push ecx
mov ecx, dword [esp + 0x40]
lea edx, [esp + 0x104]
push edx
call fcn.00416150
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
add ecx, eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x2c], 1
xor edi, edi
push 0xffffffffffffffff
push edi
lea ecx, [esp + 0xc8]
call fcn.00417c10
push 0x42c0ec
lea ecx, [esp + 0x14]
mov dword [esp + 0x28], edi
mov dword [esp + 0x2c], edi
call sub.mfc42.dll_CString::operator_1
mov ebp, dword [esp + 0x30]
xor edi, edi
jmp 0x4151ed
mov byte [esp + 0x144], al
mov ecx, dword [esp + 0x144]
push ecx
lea ecx, [esp + 0x14]
call fcn.0041ee18
mov dword [esp + 0x2c], edi
jmp 0x4151ed
cmp al, 0x3e
jne 0x414672
mov edx, dword [esp + 0x18]
push str.font
push edx
call ebx
add esp, 8
test eax, eax
jne 0x41416c
push eax
mov eax, dword [esp + 0x88]
push eax
lea ecx, [esp + 0x84]
call fcn.00417af0
lea edi, [eax + 8]
mov ecx, 0x48
lea esi, [esp + 0x170]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [esp + 0x84]
test ecx, ecx
je 0x414104
mov dword [ecx], eax
jmp 0x41410b
mov dword [esp + 0x80], eax
mov ecx, dword [esp + 0x68]
push 0
push ecx
lea ecx, [esp + 0x68]
mov dword [esp + 0x8c], eax
call fcn.00417ba0
mov ecx, dword [esp + 0x4c]
lea edx, [eax + 8]
mov dword [edx], ecx
mov ecx, dword [esp + 0x50]
mov dword [edx + 4], ecx
mov ecx, dword [esp + 0x54]
mov dword [edx + 8], ecx
mov ecx, dword [esp + 0x58]
mov dword [edx + 0xc], ecx
mov ecx, dword [esp + 0x68]
test ecx, ecx
je 0x414159
mov ebp, dword [esp + 0x30]
mov dword [ecx], eax
mov dword [esp + 0x68], eax
xor edi, edi
jmp 0x41429d
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], eax
xor edi, edi
jmp 0x41429d
mov edx, dword [esp + 0x18]
push 0x42c0ec
push edx
call ebx
add esp, 8
test eax, eax
jne 0x414239
mov eax, dword [esp + 0x10]
push str._font
push eax
call ebx
add esp, 8
test eax, eax
jne 0x414239
mov eax, dword [esp + 0x88]
mov esi, 1
cmp eax, esi
jle 0x4141f6
mov eax, dword [esp + 0x84]
mov ecx, eax
mov eax, dword [eax + 4]
cmp eax, edi
mov dword [esp + 0x84], eax
je 0x4141c5
mov dword [eax], edi
jmp 0x4141cc
mov dword [esp + 0x80], edi
mov edx, dword [esp + 0x8c]
mov dword [ecx], edx
mov eax, dword [esp + 0x88]
dec eax
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x88], eax
jne 0x4141f6
lea ecx, [esp + 0x7c]
call fcn.00417b70
cmp dword [esp + 0x6c], esi
jle 0x41429d
mov eax, dword [esp + 0x68]
mov ecx, eax
mov eax, dword [eax + 4]
cmp eax, edi
mov dword [esp + 0x68], eax
je 0x414215
mov dword [eax], edi
jmp 0x414219
mov dword [esp + 0x64], edi
mov eax, dword [esp + 0x70]
mov dword [ecx], eax
mov eax, dword [esp + 0x6c]
dec eax
mov dword [esp + 0x70], ecx
mov dword [esp + 0x6c], eax
jne 0x41429d
lea ecx, [esp + 0x60]
call fcn.00417b70
jmp 0x41429d
mov ecx, dword [esp + 0x18]
push 0x42c0ec
push ecx
call ebx
add esp, 8
test eax, eax
jne 0x41429d
mov edx, dword [esp + 0x10]
push 0x42c038
push edx
call ebx
add esp, 8
test eax, eax
jne 0x41429d
push 0x10
call dword [sym.imp.user32.dll_GetSysColor]
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0x54]
add eax, 0xffffff9c
push 0x42c038
lea ecx, [esp + 0x1c]
mov dword [esp + 0x60], eax
mov dword [esp + 0xa8], 2
mov dword [esp + 0xa0], 1
call sub.mfc42.dll_CString::operator_1
mov ecx, dword [esp + 0x18]
push 0x42c038
push ecx
call ebx
add esp, 8
test eax, eax
jne 0x4143c2
cmp dword [esp + 0x2c], edi
jne 0x414318
mov edx, dword [esp + 0x68]
mov ecx, dword [esp + 0x24]
add edx, 8
push edx
mov edx, dword [esp + 0x20]
lea eax, [esp + 0xc4]
push eax
mov eax, dword [esp + 0x30]
push ecx
push edx
push eax
lea ecx, [esp + 0x12c]
push ecx
lea edx, [esp + 0xec]
push edx
lea eax, [esp + 0x120]
push eax
lea ecx, [esp + 0x104]
push ecx
mov ecx, dword [esp + 0x44]
call fcn.00416150
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x24]
add eax, edx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x2c], 1
push 0xffffffffffffffff
push edi
lea ecx, [esp + 0xc8]
call fcn.00417c10
mov eax, dword [esp + 0x9c]
cmp eax, edi
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], edi
jne 0x41433e
xor eax, eax
jmp 0x414363
cmp eax, 2
jne 0x41434d
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x5c]
jmp 0x414361
mov eax, dword [esp + 0x5c]
cdq
sub eax, edx
mov ecx, eax
mov eax, dword [esp + 0x54]
cdq
sub eax, edx
sar ecx, 1
sar eax, 1
sub eax, ecx
mov edx, dword [esp + 0x5c]
mov ecx, dword [esp + 0xb4]
mov esi, dword [esp + 0xa4]
mov dword [esp + 0x160], eax
add eax, edx
mov dword [esp + 0x168], eax
mov eax, dword [esp + 0x1c]
add eax, 2
push ecx
mov dword [esp + 0x168], eax
lea edx, [esp + 0x164]
add eax, esi
push edx
lea ecx, [esp + 0xec]
mov dword [esp + 0x174], eax
call sub.mfc42.dll_CDC::FillSolidRect
mov eax, dword [esp + 0x1c]
lea ecx, [eax + esi + 4]
mov dword [esp + 0x1c], ecx
jmp 0x414658
mov edx, dword [esp + 0x18]
push 0x42c0ec
push edx
call ebx
add esp, 8
test eax, eax
jne 0x41440e
mov eax, dword [esp + 0x10]
push 0x42c034
push eax
call ebx
add esp, 8
test eax, eax
jne 0x41440e
mov ecx, dword [esp + 0x3c]
push 0x42c0ec
push ecx
call ebx
add esp, 8
test eax, eax
je 0x41440e
push 0x42c0ec
lea ecx, [esp + 0x40]
call sub.mfc42.dll_CString::operator_1
jmp 0x414658
mov edx, dword [esp + 0x18]
push 0x42c030
push edx
call ebx
add esp, 8
test eax, eax
jne 0x4145b9
mov eax, dword [esp + 0x48]
push 0x42c0ec
push eax
call ebx
add esp, 8
test eax, eax
je 0x4145b9
mov ecx, dword [esp + 0x48]
cmp byte [ecx], 0x23
jne 0x414594
xor ebp, ebp
mov dword [esp + 0x100], ebp
mov dword [esp + 0xfc], 0x4240ac
push 1
lea edx, [esp + 0x138]
push edx
lea ecx, [esp + 0x50]
mov byte [esp + 0x3c0], 0x16
call sub.mfc42.dll_CString::Mid
mov eax, dword [eax]
push eax
mov byte [esp + 0x3bc], 0x17
call dword [sym.imp.msvcrt.dll_atoi]
add esp, 4
and eax, 0xffff
push eax
push 2
push eax
call sub.mfc42.dll_AfxFindResourceHandle
push eax
call dword [sym.imp.user32.dll_LoadBitmapA]
push eax
lea ecx, [esp + 0x100]
call sub.mfc42.dll_CGdiObject::Attach
lea ecx, [esp + 0x134]
mov byte [esp + 0x3b8], 0x16
call sub.mfc42.dll_CString::CString
sub esp, 0x120
mov edi, esp
mov ecx, 0x48
lea esi, [esp + 0x3b0]
rep movsd dword es:[edi], dword [esi]
push ecx
lea eax, [esp + 0x160]
mov ecx, esp
mov dword [esp + 0x164], esp
push eax
call fcn.0041eafa
mov ecx, dword [esp + 0x1cc]
mov edx, dword [esp + 0x1c4]
push ecx
push edx
lea eax, [esp + 0x228]
push eax
lea ecx, [esp + 0x190]
mov byte [esp + 0x4e8], 0x16
call fcn.004173b0
push eax
lea ecx, [esp + 0x1f4]
push ecx
lea edx, [esp + 0x15c]
push edx
lea eax, [esp + 0x158]
push eax
lea ecx, [esp + 0x168]
push ecx
mov ecx, dword [esp + 0x164]
lea edx, [esp + 0x25c]
push edx
lea eax, [esp + 0x21c]
push eax
call fcn.00415be0
mov dword [esp + 0x2c], ebp
mov dword [esp + 0xfc], 0x423218
lea ecx, [esp + 0xfc]
mov byte [esp + 0x3b8], 0x19
call sub.mfc42.dll_CGdiObject::DeleteObject
mov ebp, dword [esp + 0x30]
mov byte [esp + 0x3b8], 0xe
mov dword [esp + 0xfc], 0x422ce8
xor edi, edi
push 0x42c0ec
lea ecx, [esp + 0x4c]
mov dword [esp + 0xa4], 0xffffffff
mov dword [esp + 0xac], edi
call sub.mfc42.dll_CString::operator_1
jmp 0x414658
mov ecx, dword [esp + 0x18]
push 0x42c02c
push ecx
call ebx
add esp, 8
test eax, eax
je 0x41464b
mov edx, dword [esp + 0x18]
push 0x42c0ec
push edx
call ebx
add esp, 8
test eax, eax
jne 0x4145f2
mov eax, dword [esp + 0x10]
push 0x42c02c
push eax
call ebx
add esp, 8
test eax, eax
je 0x41464b
mov ecx, dword [esp + 0x18]
push 0x42c028
push ecx
call ebx
add esp, 8
test eax, eax
je 0x41462b
mov edx, dword [esp + 0x18]
push 0x42c0ec
push edx
call ebx
add esp, 8
test eax, eax
jne 0x414658
mov eax, dword [esp + 0x10]
push 0x42c028
push eax
call ebx
add esp, 8
test eax, eax
jne 0x414658
push 0xa
push ebp
lea ecx, [esp + 0x3c]
call sub.mfc42.dll_CString::SetAt
push 0xa
lea ecx, [ebp - 1]
push ecx
lea ecx, [esp + 0x3c]
call sub.mfc42.dll_CString::SetAt
sub ebp, 2
jmp 0x414658
push 0xa
push ebp
lea ecx, [esp + 0x3c]
call sub.mfc42.dll_CString::SetAt
dec ebp
push 0x42c0ec
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::operator_1
mov dword [esp + 0x98], edi
jmp 0x4151ed
cmp al, 0x20
jne 0x414846
cmp dword [esp + 0x38], edi
jne 0x414846
mov edx, dword [esp + 0x10]
push 0x42c0ec
push edx
call ebx
add esp, 8
test eax, eax
je 0x414833
mov eax, dword [esp + 0x18]
push 0x42c0ec
push eax
call ebx
add esp, 8
test eax, eax
jne 0x41481c
lea ecx, [esp + 0x10]
push ecx
lea ecx, [esp + 0x1c]
call sub.mfc42.dll_CString::operator
lea ecx, [esp + 0x18]
call sub.mfc42.dll_CString::MakeLower
mov edx, dword [esp + 0x18]
push str.font
push edx
call ebx
add esp, 8
test eax, eax
jne 0x414721
mov eax, dword [esp + 0x84]
mov ebp, dword [esp + 0x30]
lea esi, [eax + 8]
mov ecx, 0x48
lea edi, [esp + 0x170]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [esp + 0x68]
add ecx, 8
mov edx, dword [ecx]
mov eax, dword [ecx + 4]
mov dword [esp + 0x4c], edx
mov edx, dword [ecx + 8]
mov dword [esp + 0x50], eax
mov eax, dword [ecx + 0xc]
mov dword [esp + 0x54], edx
mov dword [esp + 0x58], eax
xor edi, edi
jmp 0x414833
mov ecx, dword [esp + 0x18]
push 0x42c038
push ecx
call ebx
add esp, 8
test eax, eax
jne 0x414769
push 0x10
call dword [sym.imp.user32.dll_GetSysColor]
mov edx, dword [esp + 0x54]
add edx, 0xfffffff6
mov dword [esp + 0xb4], eax
mov dword [esp + 0x5c], edx
mov dword [esp + 0xa4], 2
mov dword [esp + 0x9c], 1
jmp 0x414833
mov eax, dword [esp + 0x18]
push 0x42c024
push eax
call ebx
add esp, 8
test eax, eax
jne 0x4147e3
mov ecx, dword [esp + 0x84]
mov ebp, dword [esp + 0x30]
lea esi, [ecx + 8]
mov eax, 0xeeffffff
mov ecx, 0x48
lea edi, [esp + 0x290]
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0x3a8], eax
mov dword [esp + 0x3ac], eax
mov eax, 0xfffffff6
mov dword [esp + 0x398], eax
mov dword [esp + 0x39c], eax
mov dword [esp + 0x3a0], eax
mov dword [esp + 0x3a4], eax
mov dword [esp + 0x394], 0
mov byte [esp + 0x290], 0
xor edi, edi
jmp 0x414833
mov edx, dword [esp + 0x18]
push 0x42c030
push edx
call ebx
add esp, 8
test eax, eax
jne 0x414833
push 0x42c0ec
lea ecx, [esp + 0x4c]
mov dword [esp + 0xac], 2
mov dword [esp + 0xa4], 0xffffffff
call sub.mfc42.dll_CString::operator_1
jmp 0x414833
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x18]
call sub.mfc42.dll_CString::operator
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::MakeLower
push 0x42c0ec
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::operator_1
jmp 0x4151ed
cmp al, 0x22
je 0x41486b
cmp al, 0x27
je 0x41486b
mov byte [esp + 0x128], al
mov ecx, dword [esp + 0x128]
push ecx
lea ecx, [esp + 0x14]
call fcn.0041ee18
jmp 0x4151ed
cmp dword [esp + 0x38], edi
je 0x415161
cmp al, byte [esp + 0x47]
jne 0x415161
mov edx, dword [esp + 0x18]
push str.font
push edx
call ebx
add esp, 8
test eax, eax
jne 0x414bd9
mov eax, dword [esp + 0x14]
push str.size
push eax
call ebx
add esp, 8
test eax, eax
jne 0x4148d6
mov ecx, dword [esp + 0x10]
push ecx
call dword [sym.imp.msvcrt.dll_atoi]
add esp, 4
cmp eax, edi
jle 0x41514a
cmp eax, 0x7d0
jge 0x41514a
mov dword [esp + 0x274], eax
jmp 0x41514a
mov edx, dword [esp + 0x14]
push str.face
push edx
call ebx
add esp, 8
test eax, eax
jne 0x41493e
push 0x103
lea eax, [esp + 0x150]
push eax
lea ecx, [esp + 0x18]
call sub.mfc42.dll_CString::Left
mov eax, dword [eax]
or ecx, 0xffffffff
mov edi, eax
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
shr ecx, 2
lea edx, [esp + 0x170]
mov esi, edi
mov edi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x14c]
call sub.mfc42.dll_CString::CString
mov ebp, dword [esp + 0x30]
xor edi, edi
jmp 0x41514a
mov ecx, dword [esp + 0x14]
push str.style
push ecx
call ebx
add esp, 8
test eax, eax
jne 0x414a8f
push 0x42c008
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::Find_1
cmp eax, 0xffffffff
jne 0x41499c
push 0x42c004
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::Find_1
cmp eax, 0xffffffff
jne 0x41499c
push 0x42c000
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::FindOneOf
cmp eax, 0xffffffff
mov esi, 1
je 0x4149a8
mov dword [esp + 0x278], esi
jmp 0x4149a8
mov dword [esp + 0x278], edi
mov esi, 1
push 0x42bffc
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::Find_1
cmp eax, 0xffffffff
jne 0x4149ea
push 0x42bff8
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::Find_1
cmp eax, 0xffffffff
jne 0x4149ea
push 0x42bff4
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::FindOneOf
cmp eax, 0xffffffff
je 0x4149f1
mov dword [esp + 0x27c], esi
jmp 0x4149f1
mov dword [esp + 0x27c], edi
push 0x42bff0
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::Find_1
cmp eax, 0xffffffff
jne 0x414a33
push 0x42bfec
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::Find_1
cmp eax, 0xffffffff
jne 0x414a33
push 0x42bfe8
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::FindOneOf
cmp eax, 0xffffffff
je 0x414a3a
mov dword [esp + 0x280], esi
jmp 0x414a3a
mov dword [esp + 0x280], edi
push 0x42bfe4
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::Find_1
cmp eax, 0xffffffff
jne 0x414a83
push 0x42bfe0
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::Find_1
cmp eax, 0xffffffff
jne 0x414a83
push 0x42bfdc
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::FindOneOf
cmp eax, 0xffffffff
je 0x41514a
mov dword [esp + 0x284], esi
jmp 0x41514a
mov dword [esp + 0x284], edi
jmp 0x41514a
mov edx, dword [esp + 0x14]
push str.color
push edx
call ebx
add esp, 8
test eax, eax
jne 0x414ab6
lea eax, [esp + 0x288]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x48], esp
jmp 0x414f79
mov eax, dword [esp + 0x14]
push str.background
push eax
call ebx
add esp, 8
test eax, eax
jne 0x414add
lea ecx, [esp + 0x28c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x48], esp
jmp 0x414f79
mov eax, dword [esp + 0x14]
push str.align
push eax
call ebx
add esp, 8
test eax, eax
jne 0x414b59
lea ecx, [esp + 0x10]
call sub.mfc42.dll_CString::MakeLower
mov ecx, dword [esp + 0x10]
push str.left
push ecx
call ebx
add esp, 8
test eax, eax
jne 0x414b15
mov dword [esp + 0x4c], edi
jmp 0x41514a
mov edx, dword [esp + 0x10]
push str.center
push edx
call ebx
add esp, 8
test eax, eax
jne 0x414b35
mov dword [esp + 0x4c], 1
jmp 0x41514a
mov eax, dword [esp + 0x10]
push str.right
push eax
call ebx
add esp, 8
test eax, eax
jne 0x41514a
mov dword [esp + 0x4c], 2
jmp 0x41514a
mov ecx, dword [esp + 0x14]
push str.valign
push ecx
call ebx
add esp, 8
test eax, eax
jne 0x41514a
lea ecx, [esp + 0x10]
call sub.mfc42.dll_CString::MakeLower
mov edx, dword [esp + 0x10]
push 0x42bf9c
push edx
call ebx
add esp, 8
test eax, eax
jne 0x414b95
mov dword [esp + 0x50], edi
jmp 0x41514a
mov eax, dword [esp + 0x10]
push str.middle
push eax
call ebx
add esp, 8
test eax, eax
jne 0x414bb5
mov dword [esp + 0x50], 1
jmp 0x41514a
mov ecx, dword [esp + 0x10]
push str.bottom
push ecx
call ebx
add esp, 8
test eax, eax
jne 0x41514a
mov dword [esp + 0x50], 2
jmp 0x41514a
mov edx, dword [esp + 0x18]
push 0x42c024
push edx
call ebx
add esp, 8
test eax, eax
jne 0x414e61
mov eax, dword [esp + 0x14]
push str.href
push eax
call ebx
add esp, 8
test eax, eax
jne 0x414c16
lea ecx, [esp + 0x10]
push ecx
lea ecx, [esp + 0x40]
call sub.mfc42.dll_CString::operator
jmp 0x41514a
mov edx, dword [esp + 0x14]
push str.size
push edx
call ebx
add esp, 8
test eax, eax
jne 0x414c56
mov eax, dword [esp + 0x10]
push eax
call dword [sym.imp.msvcrt.dll_atoi]
add esp, 4
cmp eax, edi
jle 0x41514a
cmp eax, 0x7d0
jge 0x41514a
mov dword [esp + 0x394], eax
jmp 0x41514a
mov ecx, dword [esp + 0x14]
push str.face
push ecx
call ebx
add esp, 8
test eax, eax
jne 0x414cbe
push 0x103
lea edx, [esp + 0x134]
push edx
lea ecx, [esp + 0x18]
call sub.mfc42.dll_CString::Left
mov eax, dword [eax]
or ecx, 0xffffffff
mov edi, eax
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
shr ecx, 2
lea edx, [esp + 0x290]
mov esi, edi
mov edi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x130]
call sub.mfc42.dll_CString::CString
mov ebp, dword [esp + 0x30]
xor edi, edi
jmp 0x41514a
mov ecx, dword [esp + 0x14]
push str.style
push ecx
call ebx
add esp, 8
test eax, eax
jne 0x414e0f
push 0x42c008
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::Find_1
cmp eax, 0xffffffff
jne 0x414d1c
push 0x42c004
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::Find_1
cmp eax, 0xffffffff
jne 0x414d1c
push 0x42c000
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::FindOneOf
cmp eax, 0xffffffff
mov esi, 1
je 0x414d28
mov dword [esp + 0x398], esi
jmp 0x414d28
mov dword [esp + 0x398], edi
mov esi, 1
push 0x42bffc
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::Find_1
cmp eax, 0xffffffff
jne 0x414d6a
push 0x42bff8
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::Find_1
cmp eax, 0xffffffff
jne 0x414d6a
push 0x42bff4
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::FindOneOf
cmp eax, 0xffffffff
je 0x414d71
mov dword [esp + 0x39c], esi
jmp 0x414d71
mov dword [esp + 0x39c], edi
push 0x42bff0
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::Find_1
cmp eax, 0xffffffff
jne 0x414db3
push 0x42bfec
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::Find_1
cmp eax, 0xffffffff
jne 0x414db3
push 0x42bfe8
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::FindOneOf
cmp eax, 0xffffffff
je 0x414dba
mov dword [esp + 0x3a0], esi
jmp 0x414dba
mov dword [esp + 0x3a0], edi
push 0x42bfe4
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::Find_1
cmp eax, 0xffffffff
jne 0x414e03
push 0x42bfe0
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::Find_1
cmp eax, 0xffffffff
jne 0x414e03
push 0x42bfdc
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::FindOneOf
cmp eax, 0xffffffff
je 0x41514a
mov dword [esp + 0x3a4], esi
jmp 0x41514a
mov dword [esp + 0x3a4], edi
jmp 0x41514a
mov edx, dword [esp + 0x14]
push str.color
push edx
call ebx
add esp, 8
test eax, eax
jne 0x414e36
lea eax, [esp + 0x3a8]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x48], esp
jmp 0x414f79
mov eax, dword [esp + 0x14]
push str.background
push eax
call ebx
add esp, 8
test eax, eax
jne 0x41514a
lea ecx, [esp + 0x3ac]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x48], esp
jmp 0x414f79
mov eax, dword [esp + 0x18]
push 0x42c030
push eax
call ebx
add esp, 8
test eax, eax
jne 0x414f29
mov ecx, dword [esp + 0x14]
push 0x42bf80
push ecx
call ebx
add esp, 8
test eax, eax
jne 0x414eac
mov edx, dword [esp + 0x10]
push 0x42c0ec
push edx
call ebx
add esp, 8
test eax, eax
je 0x414eac
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x4c]
call sub.mfc42.dll_CString::operator
mov ecx, dword [esp + 0x14]
push str.color
push ecx
call ebx
add esp, 8
test eax, eax
jne 0x414ee1
lea edx, [esp + 0xa0]
push edx
push ecx
lea eax, [esp + 0x18]
mov ecx, esp
mov dword [esp + 0x48], esp
push eax
call fcn.0041eafa
mov ecx, dword [esp + 0x28]
call fcn.00416810
mov ecx, dword [esp + 0x14]
push str.border
push ecx
call ebx
add esp, 8
test eax, eax
jne 0x41514a
mov edx, dword [esp + 0x10]
push 0x42c0ec
push edx
call ebx
add esp, 8
test eax, eax
je 0x41514a
mov eax, dword [esp + 0x10]
push eax
call dword [sym.imp.msvcrt.dll_atoi]
add esp, 4
mov dword [esp + 0xa8], eax
jmp 0x41514a
mov ecx, dword [esp + 0x18]
push 0x42c038
push ecx
call ebx
add esp, 8
test eax, eax
jne 0x415049
mov edx, dword [esp + 0x10]
push 0x42c0ec
push edx
call ebx
add esp, 8
test eax, eax
je 0x41514a
mov eax, dword [esp + 0x14]
push str.color
push eax
call ebx
add esp, 8
test eax, eax
jne 0x414f91
lea ecx, [esp + 0xb4]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x48], esp
lea edx, [esp + 0x18]
push edx
call fcn.0041eafa
mov ecx, dword [esp + 0x28]
call fcn.00416810
jmp 0x41514a
mov eax, dword [esp + 0x14]
push str.width
push eax
call ebx
add esp, 8
test eax, eax
jne 0x414fbb
mov ecx, dword [esp + 0x10]
push ecx
call dword [sym.imp.msvcrt.dll_atoi]
add esp, 4
mov dword [esp + 0x5c], eax
jmp 0x41514a
mov edx, dword [esp + 0x14]
push str.size
push edx
call ebx
add esp, 8
test eax, eax
jne 0x414fe8
mov eax, dword [esp + 0x10]
push eax
call dword [sym.imp.msvcrt.dll_atoi]
add esp, 4
mov dword [esp + 0xa4], eax
jmp 0x41514a
mov ecx, dword [esp + 0x14]
push str.align
push ecx
call ebx
add esp, 8
test eax, eax
jne 0x41514a
lea ecx, [esp + 0x10]
call sub.mfc42.dll_CString::MakeLower
mov edx, dword [esp + 0x10]
push str.left
push edx
call ebx
add esp, 8
test eax, eax
jne 0x415027
mov dword [esp + 0x9c], edi
jmp 0x41514a
mov eax, dword [esp + 0x10]
push str.right
push eax
call ebx
add esp, 8
neg eax
sbb eax, eax
add eax, 2
mov dword [esp + 0x9c], eax
jmp 0x41514a
mov ecx, dword [esp + 0x18]
push str.vspace
push ecx
call ebx
add esp, 8
test eax, eax
jne 0x41510c
mov edx, dword [esp + 0x14]
push str.size
push edx
call ebx
add esp, 8
test eax, eax
jne 0x41510c
cmp dword [esp + 0x2c], edi
jne 0x4150db
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x24]
add eax, 8
push eax
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0xc4]
push ecx
mov ecx, dword [esp + 0x30]
push edx
push eax
push ecx
lea edx, [esp + 0x12c]
push edx
lea eax, [esp + 0xec]
push eax
lea ecx, [esp + 0x120]
push ecx
mov ecx, dword [esp + 0x40]
lea edx, [esp + 0x104]
push edx
call fcn.00416150
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
add ecx, eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x2c], 1
push 0xffffffffffffffff
push edi
lea ecx, [esp + 0xc8]
call fcn.00417c10
mov ecx, dword [esp + 0x10]
push ecx
mov dword [esp + 0x28], edi
mov dword [esp + 0x2c], edi
call dword [sym.imp.msvcrt.dll_atoi]
mov ecx, dword [esp + 0x20]
add esp, 4
add ecx, eax
mov dword [esp + 0x1c], ecx
jmp 0x41514a
mov edx, dword [esp + 0x18]
push str.hspace
push edx
call ebx
add esp, 8
test eax, eax
jne 0x41514a
mov eax, dword [esp + 0x14]
push str.size
push eax
call ebx
add esp, 8
test eax, eax
jne 0x41514a
mov ecx, dword [esp + 0x10]
push ecx
call dword [sym.imp.msvcrt.dll_atoi]
mov ecx, dword [esp + 0x2c]
add esp, 4
add ecx, eax
mov dword [esp + 0x28], ecx
push 0x42c0ec
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::operator_1
mov dword [esp + 0x38], edi
jmp 0x4151ed
cmp byte [ecx + ebp - 1], 0x3d
jne 0x4151ed
lea edx, [esp + 0x10]
push edx
lea ecx, [esp + 0x18]
call sub.mfc42.dll_CString::operator
mov eax, dword [esp + 0x14]
mov eax, dword [eax - 8]
dec eax
push eax
lea ecx, [esp + 0x140]
push ecx
lea ecx, [esp + 0x1c]
call sub.mfc42.dll_CString::Left
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x3bc], 0x1a
call sub.mfc42.dll_CString::operator
lea ecx, [esp + 0x13c]
mov byte [esp + 0x3b8], 0xe
call sub.mfc42.dll_CString::CString
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::MakeLower
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::TrimRight
push 0x42c0ec
lea ecx, [esp + 0x14]
call sub.mfc42.dll_CString::operator_1
mov edx, dword [esp + 0x34]
mov al, byte [edx + ebp]
mov byte [esp + 0x47], al
mov dword [esp + 0x38], 1
mov ecx, dword [esp + 0x34]
mov eax, dword [ecx - 8]
inc ebp
cmp ebp, eax
mov dword [esp + 0x30], ebp
jl 0x413c85
mov eax, dword [esp + 0x140]
cmp eax, edi
jne 0x415210
xor eax, eax
jmp 0x415213
mov eax, dword [eax + 4]
mov ecx, dword [esp + 0xd8]
push eax
push ecx
call sub.mfc42.dll_CDC::SelectGdiObject
mov eax, dword [esp + 0x138]
cmp eax, edi
jne 0x415230
xor eax, eax
jmp 0x415233
mov eax, dword [eax + 4]
mov edx, dword [esp + 0x11c]
push eax
push edx
call sub.mfc42.dll_CDC::SelectGdiObject
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x148]
mov dword [ecx + 0xb4], eax
push edx
lea ecx, [esp + 0xe8]
call sub.mfc42.dll_CDC::RestoreDC
mov eax, dword [esp + 0x12c]
push eax
lea ecx, [esp + 0x108]
call sub.mfc42.dll_CDC::RestoreDC
mov esi, 0x423218
mov dword [esp + 0xb8], esi
lea ecx, [esp + 0xb8]
mov byte [esp + 0x3b8], 0x1b
call sub.mfc42.dll_CGdiObject::DeleteObject
mov ebx, 0x422ce8
lea ecx, [esp + 0x118]
mov dword [esp + 0xb8], ebx
mov byte [esp + 0x3b8], 0xc
call fcn.0041ed40
mov dword [esp + 0xac], esi
lea ecx, [esp + 0xac]
mov byte [esp + 0x3b8], 0x1c
call sub.mfc42.dll_CGdiObject::DeleteObject
lea ecx, [esp + 0xd4]
mov dword [esp + 0xac], ebx
mov byte [esp + 0x3b8], 0xa
call fcn.0041ed40
lea ecx, [esp + 0x48]
mov byte [esp + 0x3b8], 9
call sub.mfc42.dll_CString::CString
lea ecx, [esp + 0x3c]
mov byte [esp + 0x3b8], 8
call sub.mfc42.dll_CString::CString
mov dword [esp + 0xc0], 0x4256a8
mov eax, dword [esp + 0xc4]
cmp eax, edi
mov byte [esp + 0x3b8], 0x1d
je 0x41535a
mov ecx, dword [esp + 0xc8]
cmp ecx, edi
je 0x415351
lea esi, [eax + 0x14]
lea ebp, [ecx]
mov ecx, esi
call sub.mfc42.dll_CString::CString
add esi, 0x18
dec ebp
jne 0x41533d
mov eax, dword [esp + 0xc4]
push eax
call sub.mfc42.dll_operatordelete
add esp, 4
lea ecx, [esp + 0x14]
mov dword [esp + 0xc0], ebx
mov byte [esp + 0x3b8], 6
call sub.mfc42.dll_CString::CString
lea ecx, [esp + 0x10]
mov byte [esp + 0x3b8], 5
call sub.mfc42.dll_CString::CString
lea ecx, [esp + 0x18]
mov byte [esp + 0x3b8], 4
call sub.mfc42.dll_CString::CString
mov dword [esp + 0x60], 0x4256bc
mov eax, dword [esp + 0x64]
cmp eax, edi
mov byte [esp + 0x3b8], 0x1e
je 0x4153b2
mov eax, dword [eax]
cmp eax, edi
jne 0x4153ac
mov ecx, dword [esp + 0x74]
mov dword [esp + 0x6c], edi
mov dword [esp + 0x70], edi
mov dword [esp + 0x68], edi
mov dword [esp + 0x64], edi
call sub.mfc42.dll_CPlex::FreeDataChain
mov dword [esp + 0x74], edi
mov dword [esp + 0x60], ebx
mov dword [esp + 0x7c], 0x4256d0
mov eax, dword [esp + 0x80]
cmp eax, edi
mov byte [esp + 0x3b8], 0x1f
je 0x4153f4
mov eax, dword [eax]
cmp eax, edi
jne 0x4153ee
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x88], edi
mov dword [esp + 0x8c], edi
mov dword [esp + 0x84], edi
mov dword [esp + 0x80], edi
call sub.mfc42.dll_CPlex::FreeDataChain
lea ecx, [esp + 0x34]
mov dword [esp + 0x90], edi
mov dword [esp + 0x7c], ebx
mov byte [esp + 0x3b8], 1
call sub.mfc42.dll_CString::CString
lea ecx, [esp + 0x104]
mov byte [esp + 0x3b8], 0
call fcn.0041ed40
lea ecx, [esp + 0xe4]
mov dword [esp + 0x3b8], 0xffffffff
call fcn.0041ed40
mov ecx, dword [esp + 0x3b0]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x3ac
ret