Function at 0x4136e0
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push esi
push edi
push 0xa18
xor edi, edi
push edi
push ebx
call sub.MSVCR80.dll_memset
mov esi, dword [ebp + 8]
mov eax, dword [esi + 0x34]
add esp, 0xc
sub eax, edi
je 0x41373d
sub eax, 1
je 0x413731
push 0x10
call fcn.00408960
add esp, 4
test eax, eax
je 0x413747
push 0xc39
push str..init.c
push str.Assertion_failed_at__s:_d
push 0x10
call fcn.00408640
add esp, 0x10
jmp 0x413747
mov dword [ebx + 0x570], 4
jmp 0x413747
mov dword [ebx + 0x570], 3
lea eax, [ebx + 0x574]
cmp eax, edi
mov dword [eax], edi
je 0x4138f6
push 0x10
call dword [sym.imp.MSVCR80.dll_malloc]
mov ecx, eax
add esp, 4
cmp ecx, edi
jne 0x41376d
jmp fcn.00408a80
mov edx, dword [ebx + 0x574]
mov dword [ecx], edx
lea eax, [ecx + 4]
mov dword [ebx + 0x574], ecx
xor ecx, ecx
mov dword [eax], ecx
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
mov dword [ebx + 0x57c], eax
mov dword [ebx + 0x5f8], edi
mov dword [ebx + 0x610], edi
mov dword [ebx + 0x614], edi
mov dword [ebx + 0x600], edi
mov dword [ebx + 0x604], edi
mov dword [ebx + 0x618], edi
mov dword [ebx + 0x608], edi
mov dword [ebx + 0x5fc], 0xffffffff
mov eax, dword [esi + 0x5c8]
mov dword [ebx + 0x5c8], eax
mov ecx, dword [esi + 0x5cc]
mov dword [ebx + 0x5cc], ecx
mov edx, dword [esi + 0x5d0]
mov dword [ebx + 0x5d0], edx
mov eax, dword [esi + 0x5e4]
mov dword [ebx + 0x5e4], eax
mov ecx, dword [esi + 0x5e8]
mov dword [ebx + 0x5e8], ecx
mov edx, dword [esi + 0x5ec]
mov dword [ebx + 0x5ec], edx
mov eax, dword [esi + 0x5f0]
mov dword [ebx + 0x5f0], eax
mov ecx, dword [esi + 0x5f4]
mov dword [ebx + 0x5f4], ecx
mov ecx, 0x15b
mov edi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, ebx
mov dword [ebx], 0
mov dword [ebx + 0x23c], 0
call fcn.0043aa70
cmp dword [ebx + 0x570], 4
mov esi, dword [ebp + 8]
jne 0x41385a
mov edx, dword [esi + 0x674]
mov dword [ebx + 0x680], edx
cmp dword [ebx + 0x580], 0
jne 0x413886
mov eax, dword [esi + 0x580]
test eax, eax
je 0x413886
push eax
call fcn.004378f0
add esp, 4
mov dword [ebx + 0x580], eax
mov dword [ebx + 0x584], 1
mov eax, dword [esi + 0x950]
push 0xa
push ebx
call fcn.00412f70
mov eax, dword [ebx + 0x57c]
mov ecx, dword [eax]
add esp, 8
test ecx, ecx
jne 0x41394d
cmp dword [ebx + 0x570], 3
mov edx, dword [esi + 0x620]
mov dword [ebx + 0x620], edx
jne 0x41394d
mov eax, dword [esi + 0x8a8]
mov dword [ebx + 0x8a8], eax
mov ecx, dword [esi + 0x674]
lea eax, [ebx + 0x574]
test eax, eax
mov dword [ebx + 0x674], ecx
je 0x413953
push 0x20
call dword [sym.imp.MSVCR80.dll_malloc]
add esp, 4
test eax, eax
jne 0x41390e
jmp fcn.00408a80
push 0xc
call dword [sym.imp.MSVCR80.dll_malloc]
add esp, 4
cmp eax, edi
jne 0x41377e
jmp fcn.00408a80
mov edx, dword [ebx + 0x574]
mov dword [eax], edx
lea edi, [eax + 4]
mov dword [ebx + 0x574], eax
mov dword [ebx + 0x67c], edi
mov esi, dword [esi + 0x674]
mov ecx, 7
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebx + 0x67c]
lea eax, [ebx + 0x598]
mov dword [ecx], eax
mov edx, dword [ebx + 0x67c]
mov dword [edx + 4], 0
pop edi
pop esi
mov esp, ebp
pop ebp
ret
push 0x1c
call dword [sym.imp.MSVCR80.dll_malloc]
mov edi, eax
add esp, 4
test edi, edi
jne 0x41391f
jmp fcn.00408a80