Function at 0x415cd0
Capabilities:
Terminate process

Disassembly:
push ebx
push esi
push edi
xor ebx, ebx
mov edi, 1
mov eax, dword [0x602378]
mov ecx, dword [0x60237c]
inc eax
cmp eax, ecx
mov dword [0x602378], eax
jle 0x415d46
mov ecx, dword [0x602380]
cmp ecx, ebx
jne 0x415d19
push 0x10
mov dword [0x60237c], edi
call fcn.0053c3bb
add esp, 4
cmp eax, ebx
mov dword [0x602380], eax
jne 0x415d41
push str.malloc___error_in_PushFile__
jmp 0x415d39
mov dword [0x60237c], eax
shl eax, 4
push eax
push ecx
call fcn.0053c08c
add esp, 8
cmp eax, ebx
mov dword [0x602380], eax
jne 0x415d41
push str.realloc___error_in_PushFile__
call fcn.0053d238
add esp, 4
mov eax, dword [0x602378]
cmp eax, edi
jne 0x415d86
mov ecx, dword [0x602380]
mov eax, dword [0x602364]
mov dword [ecx], eax
mov edx, dword [0x602378]
mov eax, dword [0x602380]
mov ecx, dword [0x603558]
shl edx, 4
mov dword [edx + eax - 0xc], ecx
mov edx, dword [0x602378]
mov eax, dword [0x602380]
shl edx, 4
mov dword [edx + eax - 4], ebx
jmp 0x415cda
push 0x28
call fcn.0053c3bb
mov esi, eax
add esp, 4
cmp esi, ebx
jne 0x415db4
push str.out_of_dynamic_memory_in_yy_create_buffer__
push 0x5ec77c
push 0x5fef80
call fcn.0053cf6b
add esp, 0xc
push 2
call fcn.0053ce78
push 0x4002
mov dword [esi + 0xc], 0x4000
call fcn.0053c3bb
add esp, 4
cmp eax, ebx
mov dword [esi + 4], eax
jne 0x415ded
push str.out_of_dynamic_memory_in_yy_create_buffer__
push 0x5ec77c
push 0x5fef80
call fcn.0053cf6b
add esp, 0xc
push 2
call fcn.0053ce78
mov dword [esi + 0x14], edi
mov dword [esi + 0x10], ebx
mov byte [eax], bl
mov ecx, dword [esi + 4]
mov byte [ecx + 1], bl
mov edx, dword [esi + 4]
mov dword [esi + 8], edx
mov dword [esi + 0x1c], edi
mov dword [esi + 0x24], ebx
mov eax, dword [0x602364]
cmp esi, eax
jne 0x415e37
mov ecx, dword [eax + 0x10]
mov dword [0x602354], ecx
mov ecx, dword [eax + 8]
mov dword [0x602368], ecx
mov dword [0x60234c], ecx
mov edx, dword [eax]
mov dword [0x602370], edx
mov al, byte [ecx]
mov byte [0x602350], al
mov dword [esi], ebx
mov dword [esi + 0x20], edi
mov dword [esi + 0x18], edi
mov ecx, dword [0x602378]
mov edx, dword [0x602380]
shl ecx, 4
mov dword [ecx + edx - 0x10], esi
mov eax, dword [0x602378]
mov edx, dword [0x602380]
mov ecx, eax
shl ecx, 4
mov ecx, dword [ecx + edx - 0x10]
mov edx, dword [0x602364]
cmp edx, ecx
je 0x415ed6
cmp edx, ebx
je 0x415ea2
mov eax, dword [0x602368]
mov dl, byte [0x602350]
mov byte [eax], dl
mov eax, dword [0x602364]
mov edx, dword [0x602368]
mov dword [eax + 8], edx
mov eax, dword [0x602364]
mov edx, dword [0x602354]
mov dword [eax + 0x10], edx
mov eax, dword [0x602378]
mov dword [0x602364], ecx
mov edx, dword [ecx + 0x10]
mov dword [0x602354], edx
mov edx, dword [ecx + 8]
mov dword [0x602368], edx
mov dword [0x60234c], edx
mov ecx, dword [ecx]
mov dword [0x602370], ecx
mov dl, byte [edx]
mov byte [0x602350], dl
mov dword [0x602348], edi
mov ecx, dword [0x602380]
mov esi, dword [esp + 0x10]
shl eax, 4
mov dword [eax + ecx - 0xc], esi
mov eax, dword [0x602378]
mov ecx, dword [0x602380]
lea edx, [eax + 0x9c40]
shl eax, 4
mov dword [eax + ecx - 4], edx
mov dword [0x603558], esi
mov eax, dword [esi + 8]
cmp eax, ebx
je 0x415f53
push ebx
push ebx
push eax
call fcn.0053d17f
add esp, 0xc
cmp eax, 0xffffffff
jne 0x415f50
call fcn.0053d16d
cmp dword [eax], 9
je 0x415f40
mov edx, dword [esi]
push edx
call fcn.0053d16d
mov eax, dword [eax]
push eax
push str.seek_error__d_for_file__s_n
call fcn.0053d238
add esp, 0xc
jmp 0x415f50
mov ecx, dword [esi]
push ecx
push str.file__s_must_be_seekable_n
call fcn.0053d238
add esp, 8
mov dword [esi + 4], ebx
mov eax, dword [0x602378]
mov edx, dword [esi + 8]
mov ecx, dword [0x602380]
mov dword [0x602370], edx
shl eax, 4
mov esi, dword [eax + ecx - 4]
mov eax, dword [0x602388]
cmp dword [0x602384], eax
jl 0x415fce
mov ecx, dword [0x60238c]
add eax, 0x19
mov dword [0x602388], eax
shl eax, 2
cmp ecx, ebx
push eax
jne 0x415f9b
call fcn.0053c3bb
add esp, 4
jmp 0x415fa4
push ecx
call fcn.0053c08c
add esp, 8
mov ecx, eax
cmp ecx, ebx
mov dword [0x60238c], ecx
jne 0x415fd4
push str.out_of_memory_expanding_start_condition_stack
push 0x5ec77c
push 0x5fef80
call fcn.0053cf6b
add esp, 0xc
push 2
call fcn.0053ce78
mov ecx, dword [0x60238c]
mov edx, dword [0x60236c]
lea eax, [edx - 1]
cdq
sub eax, edx
mov edx, dword [0x602384]
sar eax, 1
mov dword [ecx + edx*4], eax
mov ecx, dword [0x602384]
lea eax, [esi + esi + 1]
inc ecx
mov dword [0x60236c], eax
mov eax, dword [0x602388]
cmp ecx, eax
mov dword [0x602384], ecx
jl 0x41605d
mov ecx, dword [0x60238c]
add eax, 0x19
mov dword [0x602388], eax
shl eax, 2
cmp ecx, ebx
push eax
jne 0x41602a
call fcn.0053c3bb
add esp, 4
jmp 0x416033
push ecx
call fcn.0053c08c
add esp, 8
mov ecx, eax
cmp ecx, ebx
mov dword [0x60238c], ecx
jne 0x416063
push str.out_of_memory_expanding_start_condition_stack
push 0x5ec77c
push 0x5fef80
call fcn.0053cf6b
add esp, 0xc
push 2
call fcn.0053ce78
mov ecx, dword [0x60238c]
mov edx, dword [0x60236c]
pop edi
pop esi
pop ebx
lea eax, [edx - 1]
cdq
sub eax, edx
mov edx, dword [0x602384]
sar eax, 1
mov dword [ecx + edx*4], eax
mov eax, dword [0x602384]
inc eax
mov dword [0x60236c], 9
mov dword [0x602384], eax
mov eax, dword [0x602378]
ret