Function at 0x422670
Capabilities:
Terminate process

Disassembly:
sub esp, 0x18
mov eax, 0x523574
push ebx
push edi
mov dword [esp + 8], eax
mov dword [esp + 0x14], eax
mov eax, dword [0x4f3c58]
xor edi, edi
mov dword [esp + 0x1c], 1
cmp eax, edi
mov dword [esp + 0x10], edi
mov dword [esp + 0xc], edi
mov dword [esp + 0x18], edi
lea ebx, [eax - 1]
jg 0x4226cd
mov eax, dword [sym.imp.MSVCRT.dll__iob]
push 0x4d8
push str.C:Documents_and_SettingscorkumMy_DocumentsMy_ProjectsFEAWIN_5.X_fea.cpp
add eax, 0x40
push str.fatal:_attrib_AST_stack_overflow__s__d___n
push eax
call dword [sym.imp.MSVCRT.dll_fprintf]
add esp, 0x10
push 1
call dword [sym.imp.MSVCRT.dll_exit]
mov eax, ebx
cmp eax, edi
mov dword [0x4f3c58], eax
jg 0x422702
mov ecx, dword [sym.imp.MSVCRT.dll__iob]
push 0x4dc
push str.C:Documents_and_SettingscorkumMy_DocumentsMy_ProjectsFEAWIN_5.X_fea.cpp
add ecx, 0x40
push str.fatal:_attrib_AST_stack_overflow__s__d___n
push ecx
call dword [sym.imp.MSVCRT.dll_fprintf]
add esp, 0x10
push 1
call dword [sym.imp.MSVCRT.dll_exit]
mov edx, dword [0x4f3c88]
push esi
dec eax
lea esi, [edx - 3]
mov dword [0x4f3c58], eax
cmp esi, 1
jl 0x422752
call fcn.0046dbb0
mov edx, dword [0x4f3c88]
mov eax, dword [0x5316bc]
dec edx
inc eax
and eax, 3
mov dword [0x4f3c88], edx
mov dword [0x5316bc], eax
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
lea ecx, [eax + eax*4]
shl ecx, 4
add ecx, 0x52f6f8
dec esi
mov dword [0x5316b8], ecx
jne 0x422717
mov edx, dword [0x5316c0]
pop esi
and edx, 3
mov eax, dword [edx*4 + 0x531644]
cmp eax, 0x2c
jne 0x4227d0
lea eax, [esp + 0xc]
lea ecx, [esp + 0x10]
push eax
lea edx, [esp + 0x1c]
push ecx
lea eax, [esp + 0x1c]
push edx
lea ecx, [esp + 0x14]
push eax
push ecx
push 0x2c
call fcn.0041dd70
add esp, 0x18
test eax, eax
je 0x422901
lea edx, [esp + 0xc]
lea eax, [esp + 0x10]
push edx
lea ecx, [esp + 0x1c]
push eax
lea edx, [esp + 0x1c]
push ecx
lea eax, [esp + 0x14]
push edx
push eax
push 0x2d
call fcn.0041dd70
add esp, 0x18
test eax, eax
je 0x422901
mov dword [0x52e5d4], edi
mov dword [0x4f3c58], ebx
pop edi
pop ebx
add esp, 0x18
ret
cmp eax, 0x2e
jne 0x422841
lea ecx, [esp + 0xc]
lea edx, [esp + 0x10]
push ecx
lea eax, [esp + 0x1c]
push edx
lea ecx, [esp + 0x1c]
push eax
lea edx, [esp + 0x14]
push ecx
push edx
push 0x2e
call fcn.0041dd70
add esp, 0x18
test eax, eax
je 0x422901
lea eax, [esp + 0xc]
lea ecx, [esp + 0x10]
push eax
lea edx, [esp + 0x1c]
push ecx
lea eax, [esp + 0x1c]
push edx
lea ecx, [esp + 0x14]
push eax
push ecx
push 0x2f
call fcn.0041dd70
add esp, 0x18
test eax, eax
je 0x422901
mov dword [0x4f3c58], ebx
pop edi
mov dword [0x52e5d4], 1
pop ebx
add esp, 0x18
ret
cmp eax, 0x30
jne 0x4228d9
lea edx, [esp + 0xc]
lea eax, [esp + 0x10]
push edx
lea ecx, [esp + 0x1c]
push eax
lea edx, [esp + 0x1c]
push ecx
lea eax, [esp + 0x14]
push edx
push eax
push 0x30
call fcn.0041dd70
add esp, 0x18
test eax, eax
je 0x422901
lea ecx, [esp + 0xc]
lea edx, [esp + 0x10]
push ecx
lea eax, [esp + 0x1c]
push edx
lea ecx, [esp + 0x1c]
push eax
lea edx, [esp + 0x14]
push ecx
push edx
push 0x2e
call fcn.0041dd70
add esp, 0x18
test eax, eax
je 0x422901
lea eax, [esp + 0xc]
lea ecx, [esp + 0x10]
push eax
lea edx, [esp + 0x1c]
push ecx
lea eax, [esp + 0x1c]
push edx
lea ecx, [esp + 0x14]
push eax
push ecx
push 0x2f
call fcn.0041dd70
add esp, 0x18
test eax, eax
je 0x422901
mov dword [0x4f3c58], ebx
pop edi
mov dword [0x52e5d4], 2
pop ebx
add esp, 0x18
ret
lea edx, [esp + 0x1c]
lea eax, [esp + 8]
push edx
lea ecx, [esp + 0x14]
push eax
lea edx, [esp + 0x1c]
push ecx
lea eax, [esp + 0x18]
push edx
push eax
push 0x4f1500
push 1
call fcn.0041da70
add esp, 0x1c
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x18]
push ecx
mov ecx, dword [esp + 0x10]
push edx
mov edx, dword [esp + 0x18]
push eax
mov eax, dword [esp + 0x20]
push ecx
push 0x523574
push edx
push eax
mov dword [0x4f3c58], ebx
call fcn.0043daf0
push 0x20
push 0x4f1550
call fcn.0041d990
add esp, 0x24
pop edi
pop ebx
add esp, 0x18
ret