Function at 0x409091
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x40da44
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x18
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp + 8]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 0x7f
jne 0x409113
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx + 1]
cmp eax, 4
jne 0x409113
mov ecx, dword [ebp + 8]
xor edx, edx
mov dl, byte [ecx + 2]
cmp edx, 0x46
jne 0x409113
mov eax, dword [ebp + 8]
xor ecx, ecx
mov cl, byte [eax + 3]
cmp ecx, 0x49
jne 0x409113
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx + 4]
cmp eax, 0x4c
jne 0x409113
mov ecx, dword [ebp + 8]
xor edx, edx
mov dl, byte [ecx + 5]
cmp edx, 0x45
jne 0x409113
mov eax, dword [ebp + 8]
xor ecx, ecx
mov cl, byte [eax + 6]
cmp ecx, 0x16
jne 0x409113
mov eax, 3
jmp 0x40946a
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx]
cmp eax, 0x7f
jne 0x409145
mov ecx, dword [ebp + 8]
xor edx, edx
mov dl, byte [ecx + 2]
imul edx, edx, 6
mov eax, dword [ebp + 8]
mov byte [eax + edx + 3], 0x16
mov ecx, 0x16
test ecx, ecx
je 0x409145
mov eax, 1
jmp 0x40946a
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx]
cmp eax, 0x5b
jne 0x4091c1
mov ecx, dword [ebp + 8]
xor edx, edx
mov dl, byte [ecx + 1]
cmp edx, 0x54
jne 0x4091c1
mov eax, dword [ebp + 8]
xor ecx, ecx
mov cl, byte [eax + 2]
cmp ecx, 0x55
jne 0x4091c1
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx + 3]
cmp eax, 0x52
jne 0x4091c1
mov ecx, dword [ebp + 8]
xor edx, edx
mov dl, byte [ecx + 4]
cmp edx, 0x4e
jne 0x4091c1
mov eax, dword [ebp + 8]
xor ecx, ecx
mov cl, byte [eax + 5]
cmp ecx, 0x4f
jne 0x4091c1
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx + 6]
cmp eax, 0x46
jne 0x4091c1
mov ecx, dword [ebp + 8]
xor edx, edx
mov dl, byte [ecx + 7]
cmp edx, 0x46
jne 0x4091c1
mov eax, dword [ebp + 8]
xor ecx, ecx
mov cl, byte [eax + 8]
cmp ecx, 0x5d
jne 0x4091c1
push 0
call dword [sym.imp.MSVCRT.dll_exit]
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx]
cmp eax, 0x5b
jne 0x409230
mov ecx, dword [ebp + 8]
xor edx, edx
mov dl, byte [ecx + 1]
cmp edx, 0x52
jne 0x409230
mov eax, dword [ebp + 8]
xor ecx, ecx
mov cl, byte [eax + 2]
cmp ecx, 0x45
jne 0x409230
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx + 3]
cmp eax, 0x53
jne 0x409230
mov ecx, dword [ebp + 8]
xor edx, edx
mov dl, byte [ecx + 4]
cmp edx, 0x45
jne 0x409230
mov eax, dword [ebp + 8]
xor ecx, ecx
mov cl, byte [eax + 5]
cmp ecx, 0x54
jne 0x409230
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx + 6]
cmp eax, 0x57
jne 0x409230
mov ecx, dword [ebp + 8]
xor edx, edx
mov dl, byte [ecx + 7]
cmp edx, 0x5d
jne 0x409230
mov ecx, dword [ebp - 0x1c]
call fcn.00409c89
mov eax, dword [ebp + 8]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 0x5b
jne 0x40929f
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx + 1]
cmp eax, 0x55
jne 0x40929f
mov ecx, dword [ebp + 8]
xor edx, edx
mov dl, byte [ecx + 2]
cmp edx, 0x50
jne 0x40929f
mov eax, dword [ebp + 8]
xor ecx, ecx
mov cl, byte [eax + 3]
cmp ecx, 0x44
jne 0x40929f
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx + 4]
cmp eax, 0x41
jne 0x40929f
mov ecx, dword [ebp + 8]
xor edx, edx
mov dl, byte [ecx + 5]
cmp edx, 0x54
jne 0x40929f
mov eax, dword [ebp + 8]
xor ecx, ecx
mov cl, byte [eax + 6]
cmp ecx, 0x45
jne 0x40929f
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx + 7]
cmp eax, 0x5d
jne 0x40929f
mov ecx, dword [ebp - 0x1c]
call fcn.00409d12
mov ecx, dword [ebp + 8]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 0x5b
jne 0x40930e
mov eax, dword [ebp + 8]
xor ecx, ecx
mov cl, byte [eax + 1]
cmp ecx, 0x52
jne 0x40930e
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx + 2]
cmp eax, 0x45
jne 0x40930e
mov ecx, dword [ebp + 8]
xor edx, edx
mov dl, byte [ecx + 3]
cmp edx, 0x41
jne 0x40930e
mov eax, dword [ebp + 8]
xor ecx, ecx
mov cl, byte [eax + 4]
cmp ecx, 0x44
jne 0x40930e
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx + 5]
cmp eax, 0x44
jne 0x40930e
mov ecx, dword [ebp + 8]
xor edx, edx
mov dl, byte [ecx + 6]
cmp edx, 0x54
jne 0x40930e
mov eax, dword [ebp + 8]
xor ecx, ecx
mov cl, byte [eax + 7]
cmp ecx, 0x5d
jne 0x40930e
mov ecx, dword [ebp - 0x1c]
call fcn.00409d71
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx]
cmp eax, 0x5b
jne 0x4093ba
mov ecx, dword [ebp + 8]
xor edx, edx
mov dl, byte [ecx + 1]
cmp edx, 0x53
jne 0x4093ba
mov eax, dword [ebp + 8]
xor ecx, ecx
mov cl, byte [eax + 2]
cmp ecx, 0x4d
jne 0x4093ba
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx + 3]
cmp eax, 0x54
jne 0x4093ba
mov ecx, dword [ebp + 8]
xor edx, edx
mov dl, byte [ecx + 7]
cmp edx, 0x5d
jne 0x4093ba
lea ecx, [ebp - 0x10]
call sub.MFC42.DLL_CString::CString_2
mov dword [ebp - 4], 0
mov eax, dword [ebp + 8]
xor ecx, ecx
mov cl, byte [eax + 6]
push ecx
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx + 5]
push eax
mov ecx, dword [ebp + 8]
xor edx, edx
mov dl, byte [ecx + 4]
push edx
push str._c_c_c
lea eax, [ebp - 0x10]
push eax
call sub.MFC42.DLL_CString::Format
add esp, 0x14
push ecx
mov ecx, esp
mov dword [ebp - 0x14], esp
lea edx, [ebp - 0x10]
push edx
call sub.MFC42.DLL_CString::CString_1
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x1c]
call fcn.0040a8f7
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x10]
call fcn.0040c7be
mov eax, dword [ebp + 8]
xor ecx, ecx
mov cl, byte [eax]
cmp ecx, 0x5b
jne 0x40943c
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx + 1]
cmp eax, 0x4b
jne 0x40943c
mov ecx, dword [ebp + 8]
xor edx, edx
mov dl, byte [ecx + 2]
cmp edx, 0x49
jne 0x40943c
mov eax, dword [ebp + 8]
xor ecx, ecx
mov cl, byte [eax + 3]
cmp ecx, 0x4c
jne 0x40943c
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx + 4]
cmp eax, 0x4c
jne 0x40943c
mov ecx, dword [ebp + 8]
xor edx, edx
mov dl, byte [ecx + 5]
cmp edx, 0x42
jne 0x40943c
mov eax, dword [ebp + 8]
xor ecx, ecx
mov cl, byte [eax + 6]
cmp ecx, 0x58
jne 0x40943c
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx + 7]
cmp eax, 0x5d
jne 0x40943c
push ecx
mov ecx, esp
mov dword [ebp - 0x18], esp
push 0x411954
call sub.MFC42.DLL_CString::CString
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x1c]
call fcn.0040a103
mov ecx, dword [ebp + 8]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 0x7e
jne 0x409461
mov eax, dword [ebp + 8]
xor ecx, ecx
mov cl, byte [eax + 2]
imul ecx, ecx, 6
mov edx, dword [ebp + 8]
xor eax, eax
mov al, byte [edx + ecx + 3]
cmp eax, 0x16
je 0x409465
xor eax, eax
jmp 0x40946a
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 4