Function at 0x439840
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x30
mov ecx, dword [0x4f3c58]
mov eax, 0x523574
push ebx
xor ebx, ebx
mov dword [esp + 8], eax
mov dword [esp + 0x18], eax
push ebp
lea eax, [ecx - 1]
push esi
cmp ecx, ebx
push edi
mov dword [esp + 0x20], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x18], ebx
mov ebp, eax
jg 0x4398a0
mov eax, dword [sym.imp.MSVCRT.dll__iob]
push 0x1e64
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]
lea ecx, [esp + 0x1c]
mov dword [0x4f3c58], eax
lea edx, [esp + 0x20]
push ecx
lea eax, [esp + 0x1c]
push edx
lea ecx, [esp + 0x2c]
push eax
lea edx, [esp + 0x20]
push ecx
push edx
push 0x10b
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
call fcn.0041dd70
add esp, 0x18
test eax, eax
je 0x439a69
lea eax, [esp + 0x1c]
lea ecx, [esp + 0x20]
push eax
lea edx, [esp + 0x1c]
push ecx
lea eax, [esp + 0x2c]
push edx
lea ecx, [esp + 0x20]
push eax
push ecx
push 0x10
call fcn.0041dd70
add esp, 0x18
test eax, eax
je 0x439a69
call fcn.0041ff30
fstp qword [esp + 0x38]
lea edx, [esp + 0x1c]
lea eax, [esp + 0x20]
push edx
lea ecx, [esp + 0x1c]
push eax
lea edx, [esp + 0x2c]
push ecx
lea eax, [esp + 0x20]
push edx
push eax
push 0x109
call fcn.0041dd70
add esp, 0x18
test eax, eax
je 0x439a69
lea ecx, [esp + 0x1c]
lea edx, [esp + 0x20]
push ecx
lea eax, [esp + 0x1c]
push edx
lea ecx, [esp + 0x2c]
push eax
lea edx, [esp + 0x20]
push ecx
push edx
push 0x10
call fcn.0041dd70
add esp, 0x18
test eax, eax
je 0x439a69
call fcn.0041ff30
mov eax, dword [0x4f3c58]
fstp qword [esp + 0x30]
cmp eax, ebx
lea edi, [eax - 1]
jg 0x4399ae
mov eax, dword [sym.imp.MSVCRT.dll__iob]
push 0x1e71
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 ecx, dword [0x4f3c88]
mov dword [0x4f3c58], edi
lea esi, [ecx - 3]
cmp esi, 1
jl 0x4399fe
call fcn.0046dbb0
mov edx, dword [0x4f3c88]
dec edx
mov dword [0x4f3c88], edx
mov edx, dword [0x5316bc]
lea eax, [edx + 1]
and eax, 3
mov dword [0x5316bc], eax
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
shl eax, 4
add eax, 0x52f6f8
dec esi
mov dword [0x5316b8], eax
jne 0x4399c2
mov ecx, dword [0x5316c0]
and ecx, 3
cmp dword [ecx*4 + 0x531644], 0x10c
jne 0x439ab4
lea edx, [esp + 0x1c]
lea eax, [esp + 0x20]
push edx
lea ecx, [esp + 0x1c]
push eax
lea edx, [esp + 0x2c]
push ecx
lea eax, [esp + 0x20]
push edx
push eax
push 0x10c
call fcn.0041dd70
add esp, 0x18
test eax, eax
je 0x439a69
lea ecx, [esp + 0x1c]
lea edx, [esp + 0x20]
push ecx
lea eax, [esp + 0x1c]
push edx
lea ecx, [esp + 0x2c]
push eax
lea edx, [esp + 0x20]
push ecx
push edx
push 0x10
call fcn.0041dd70
add esp, 0x18
test eax, eax
jne 0x439aab
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
push eax
mov eax, dword [esp + 0x24]
push 1
push ecx
mov ecx, dword [esp + 0x30]
push edx
push 0x523574
push eax
push ecx
mov dword [0x4f3c58], ebp
call fcn.0043daf0
push 8
push 0x4f2c08
call fcn.0041d990
add esp, 0x24
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.0041ff30
fstp qword [esp + 0x28]
push 0x20
mov dword [0x4f3c58], edi
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
cmp eax, ebx
je 0x439afd
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x30]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x34]
mov dword [eax + 0x10], edx
mov edx, dword [esp + 0x38]
mov dword [eax + 0x14], ecx
mov ecx, dword [esp + 0x3c]
mov dword [eax + 0x18], edx
mov dword [eax + 4], ebx
mov dword [eax + 0x1c], ecx
mov dword [eax], 0x4dc004
jmp 0x439aff
xor eax, eax
mov ecx, dword [0x52e628]
push eax
call fcn.00416550
pop edi
mov dword [0x4f3c58], ebp
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret