Function at 0x41a330
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x495711
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x43c
mov eax, dword [0x4a4194]
xor eax, dword [ebp + 4]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x448], ecx
mov byte [ebp - 0x15], 0
push 0x497590
lea eax, [ebp - 0x3fc]
push eax
call dword [0x49712c]
cmp dword [ebp + 8], 0
jne 0x41a458
push 0x3e8
lea ecx, [ebp - 0x3fc]
push ecx
mov ecx, dword [ebp - 0x448]
add ecx, 4
mov edx, dword [ebp - 0x448]
mov eax, dword [edx + 4]
call dword [eax + 0x78]
lea ecx, [ebp - 0x3fc]
mov dword [ebp + 8], ecx
mov edx, dword [ebp + 8]
movsx eax, byte [edx + 0x3e7]
test eax, eax
je 0x41a458
mov ecx, dword [ebp + 8]
mov byte [ecx + 0x1e], 0
lea ecx, [ebp - 0x40c]
call fcn.004526b0
mov dword [ebp - 4], 0
push 0x4981f4
lea ecx, [ebp - 0x40c]
call fcn.00452a30
mov edx, dword [ebp + 8]
push edx
lea ecx, [ebp - 0x40c]
call fcn.00452ad0
push 0x498180
lea ecx, [ebp - 0x40c]
call fcn.00452ad0
mov eax, dword [ebp - 0x448]
cmp dword [eax + 0x70], 0
jne 0x41a427
mov ecx, dword [ebp - 0x448]
call fcn.0041a7a0
mov ecx, dword [ebp - 0x448]
mov dword [ecx + 0x70], 1
mov edx, dword [ebp - 0x408]
mov dword [ebp - 0x438], edx
push 1
mov eax, dword [ebp - 0x438]
push eax
mov ecx, dword [ebp - 0x448]
add ecx, 0x54
mov edx, dword [ebp - 0x448]
mov eax, dword [edx + 0x54]
call dword [eax + 0x40]
push 0
call fcn.004681c7
cmp dword [ebp + 0x10], 1
jne 0x41a4d9
mov dword [ebp - 0x410], 0
jmp 0x41a479
mov ecx, dword [ebp - 0x410]
add ecx, 1
mov dword [ebp - 0x410], ecx
mov edx, dword [ebp - 0x448]
mov eax, dword [ebp - 0x410]
cmp eax, dword [edx + 0x6164]
jge 0x41a4d9
mov ecx, dword [ebp + 8]
push ecx
mov edx, dword [ebp - 0x410]
mov eax, dword [ebp - 0x448]
mov ecx, dword [eax + edx*4 + 0x6168]
push ecx
call dword [0x4970e0]
test eax, eax
jne 0x41a4d7
push 4
lea edx, [ebp - 0x410]
push edx
mov ecx, dword [ebp - 0x448]
add ecx, 0x30
mov eax, dword [ebp - 0x448]
mov edx, dword [eax + 0x30]
call dword [edx + 0x60]
mov eax, 1
jmp 0x41a77d
jmp 0x41a46a
mov eax, dword [ebp + 8]
push eax
call dword [0x497128]
add eax, 1
push eax
call fcn.00468207
add esp, 4
mov dword [ebp - 0x434], eax
mov ecx, dword [ebp - 0x448]
mov edx, dword [ecx + 0x6164]
mov eax, dword [ebp - 0x448]
mov ecx, dword [ebp - 0x434]
mov dword [eax + edx*4 + 0x6168], ecx
mov edx, dword [ebp - 0x448]
mov eax, dword [edx + 0x6164]
mov ecx, dword [ebp - 0x448]
cmp dword [ecx + eax*4 + 0x6168], 0
jne 0x41a555
push 0x30
mov ecx, 0x4bd504
mov edx, dword [0x4bd504]
call dword [edx + 0xc]
push eax
push 0x49737c
push 0
call dword [0x497194]
push 0
call fcn.004681c7
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x448]
mov edx, dword [ecx + 0x6164]
mov eax, dword [ebp - 0x448]
mov ecx, dword [eax + edx*4 + 0x6168]
push ecx
call dword [0x49712c]
push 4
mov edx, dword [ebp - 0x448]
add edx, 0x6164
push edx
mov ecx, dword [ebp - 0x448]
add ecx, 0x30
mov eax, dword [ebp - 0x448]
mov edx, dword [eax + 0x30]
call dword [edx + 0x60]
cmp dword [ebp + 0xc], 1
jne 0x41a6ef
mov eax, dword [ebp - 0x448]
cmp dword [eax + 0x6ba54], 2
jl 0x41a6af
mov ecx, dword [ebp - 0x448]
mov edx, dword [ecx + 0x6164]
mov eax, dword [ebp - 0x448]
mov ecx, dword [eax + edx*4 + 0x6168]
push ecx
mov ecx, 0x4bd4a0
call fcn.004087c0
test eax, eax
jne 0x41a6af
lea ecx, [ebp - 0x420]
call fcn.004526b0
mov dword [ebp - 4], 1
push 0x4973fc
lea ecx, [ebp - 0x420]
call fcn.00452a30
mov edx, dword [ebp - 0x448]
mov eax, dword [edx + 0x6164]
mov ecx, dword [ebp - 0x448]
mov edx, dword [ecx + eax*4 + 0x6168]
push edx
lea ecx, [ebp - 0x420]
call fcn.00452ad0
push 0x49837c
lea ecx, [ebp - 0x420]
call fcn.00452ad0
lea eax, [ebp - 0x420]
push eax
mov ecx, dword [ebp - 0x448]
call fcn.0041d560
mov ecx, dword [ebp - 0x448]
cmp dword [ecx + 0x70], 0
jne 0x41a673
mov ecx, dword [ebp - 0x448]
call fcn.0041a7a0
mov edx, dword [ebp - 0x448]
mov dword [edx + 0x70], 1
mov eax, dword [ebp - 0x41c]
mov dword [ebp - 0x43c], eax
push 1
mov ecx, dword [ebp - 0x43c]
push ecx
mov ecx, dword [ebp - 0x448]
add ecx, 0x54
mov edx, dword [ebp - 0x448]
mov eax, dword [edx + 0x54]
call dword [eax + 0x40]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x420]
call fcn.004526f0
mov ecx, dword [ebp - 0x448]
mov edx, dword [ecx + 0x3ad10]
mov eax, dword [ebp - 0x448]
mov ecx, dword [ebp - 0x448]
mov ecx, dword [ecx + 0x6164]
mov dword [eax + edx*4 + 0x3ad14], ecx
mov edx, dword [ebp - 0x448]
mov eax, dword [edx + 0x3ad10]
add eax, 1
mov ecx, dword [ebp - 0x448]
mov dword [ecx + 0x3ad10], eax
mov edx, dword [ebp - 0x448]
mov eax, dword [edx + 0x6164]
add eax, 1
mov ecx, dword [ebp - 0x448]
mov dword [ecx + 0x6164], eax
mov edx, dword [ebp - 0x448]
cmp dword [edx + 0x6164], 0xc350
jne 0x41a778
lea ecx, [ebp - 0x430]
call fcn.004526b0
mov dword [ebp - 4], 2
push 0x498308
lea ecx, [ebp - 0x430]
call fcn.00452a30
mov eax, dword [ebp - 0x42c]
mov dword [ebp - 0x440], eax
mov ecx, dword [0x4bd4b0]
mov dword [ebp - 0x444], ecx
push 0
push 0x498204
mov edx, dword [ebp - 0x440]
push edx
mov eax, dword [ebp - 0x444]
push eax
call dword [0x497194]
push 0
call fcn.004681c7
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x10]
xor ecx, dword [ebp + 4]
call fcn.00467ff6
mov esp, ebp
pop ebp
ret 0xc