Function at 0x4148c0
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x408
mov eax, dword [0x4a4194]
xor eax, dword [ebp + 4]
mov dword [ebp - 4], eax
mov dword [ebp - 0x408], ecx
push 0
mov ecx, dword [ebp - 0x408]
add ecx, 0x30
mov eax, dword [ebp - 0x408]
mov edx, dword [eax + 0x30]
call dword [edx + 0x28]
push 0
push 4
lea eax, [ebp - 0x3f4]
push eax
mov ecx, dword [ebp - 0x408]
add ecx, 0x30
mov edx, dword [ebp - 0x408]
mov eax, dword [edx + 0x30]
call dword [eax + 0x54]
mov ecx, dword [ebp - 0x3f4]
push ecx
mov ecx, dword [ebp - 0x408]
add ecx, 0x30
mov edx, dword [ebp - 0x408]
mov eax, dword [edx + 0x30]
call dword [eax + 0x28]
mov ecx, dword [ebp - 0x408]
mov dword [ecx + 0x39c], 0
jmp 0x41495a
mov edx, dword [ebp - 0x408]
mov eax, dword [edx + 0x39c]
add eax, 1
mov ecx, dword [ebp - 0x408]
mov dword [ecx + 0x39c], eax
mov edx, dword [ebp - 0x408]
cmp dword [edx + 0x39c], 0x3e8
jge 0x414b02
push 0x7fff
lea eax, [ebp - 0x3f0]
push eax
mov ecx, dword [ebp - 0x408]
add ecx, 0x30
mov edx, dword [ebp - 0x408]
mov eax, dword [edx + 0x30]
call dword [eax + 0xa8]
movsx ecx, byte [ebp - 0x3f0]
test ecx, ecx
jne 0x4149a4
jmp 0x414b02
mov edx, dword [ebp - 0x408]
mov eax, dword [edx + 0x39c]
mov ecx, dword [ebp - 0x408]
cmp dword [ecx + eax*4 + 0x3a0], 0
je 0x414a27
mov edx, dword [ebp - 0x408]
mov eax, dword [edx + 0x39c]
mov ecx, dword [ebp - 0x408]
cmp dword [ecx + eax*4 + 0x3a0], 0
je 0x414a27
mov edx, dword [ebp - 0x408]
mov eax, dword [edx + 0x39c]
mov ecx, dword [ebp - 0x408]
mov edx, dword [ecx + eax*4 + 0x3a0]
mov dword [ebp - 0x3f8], edx
mov eax, dword [ebp - 0x3f8]
push eax
call fcn.00467760
add esp, 4
mov ecx, dword [ebp - 0x408]
mov edx, dword [ecx + 0x39c]
mov eax, dword [ebp - 0x408]
mov dword [eax + edx*4 + 0x3a0], 0
lea ecx, [ebp - 0x3f0]
push ecx
call dword [0x497128]
add eax, 1
push eax
call fcn.00468207
add esp, 4
mov dword [ebp - 0x3fc], eax
mov edx, dword [ebp - 0x408]
mov eax, dword [edx + 0x39c]
mov ecx, dword [ebp - 0x408]
mov edx, dword [ebp - 0x3fc]
mov dword [ecx + eax*4 + 0x3a0], edx
mov eax, dword [ebp - 0x408]
mov ecx, dword [eax + 0x39c]
mov edx, dword [ebp - 0x408]
cmp dword [edx + ecx*4 + 0x3a0], 0
jne 0x414aa5
push 0x30
mov ecx, 0x4bd504
mov eax, dword [0x4bd504]
call dword [eax + 0xc]
push eax
push 0x49737c
push 0
call dword [0x497194]
push 0
call fcn.004681c7
lea ecx, [ebp - 0x3f0]
push ecx
mov edx, dword [ebp - 0x408]
mov eax, dword [edx + 0x39c]
mov ecx, dword [ebp - 0x408]
mov edx, dword [ecx + eax*4 + 0x3a0]
push edx
call dword [0x49712c]
mov ecx, dword [ebp - 0x408]
add ecx, 0x30
mov eax, dword [ebp - 0x408]
mov edx, dword [eax + 0x30]
call dword [edx + 0x9c]
mov ecx, dword [ebp - 0x408]
mov edx, dword [ecx + 0x39c]
mov ecx, dword [ebp - 0x408]
mov dword [ecx + edx*4 + 0x1340], eax
jmp 0x41493f
push 4
mov ecx, dword [ebp - 0x408]
add ecx, 0x30
mov edx, dword [ebp - 0x408]
mov eax, dword [edx + 0x30]
call dword [eax + 0x28]
mov ecx, dword [ebp - 0x408]
add ecx, 0x30
mov edx, dword [ebp - 0x408]
mov eax, dword [edx + 0x30]
call dword [eax + 0x9c]
mov dword [ebp - 0x3f4], eax
mov ecx, dword [ebp - 0x3f4]
push ecx
mov ecx, dword [ebp - 0x408]
add ecx, 0x30
mov edx, dword [ebp - 0x408]
mov eax, dword [edx + 0x30]
call dword [eax + 0x28]
mov ecx, dword [ebp - 0x408]
mov dword [ecx + 0x6164], 0
jmp 0x414b80
mov edx, dword [ebp - 0x408]
mov eax, dword [edx + 0x6164]
add eax, 1
mov ecx, dword [ebp - 0x408]
mov dword [ecx + 0x6164], eax
mov edx, dword [ebp - 0x408]
cmp dword [edx + 0x6164], 0xc350
jge 0x414cf7
push 0x7fff
lea eax, [ebp - 0x3f0]
push eax
mov ecx, dword [ebp - 0x408]
add ecx, 0x30
mov edx, dword [ebp - 0x408]
mov eax, dword [edx + 0x30]
call dword [eax + 0xa8]
movsx ecx, byte [ebp - 0x3f0]
test ecx, ecx
jne 0x414bca
jmp 0x414cf7
mov edx, dword [ebp - 0x408]
mov eax, dword [edx + 0x6164]
mov ecx, dword [ebp - 0x408]
cmp dword [ecx + eax*4 + 0x6168], 0
je 0x414c4d
mov edx, dword [ebp - 0x408]
mov eax, dword [edx + 0x6164]
mov ecx, dword [ebp - 0x408]
cmp dword [ecx + eax*4 + 0x6168], 0
je 0x414c4d
mov edx, dword [ebp - 0x408]
mov eax, dword [edx + 0x6164]
mov ecx, dword [ebp - 0x408]
mov edx, dword [ecx + eax*4 + 0x6168]
mov dword [ebp - 0x400], edx
mov eax, dword [ebp - 0x400]
push eax
call fcn.00467760
add esp, 4
mov ecx, dword [ebp - 0x408]
mov edx, dword [ecx + 0x6164]
mov eax, dword [ebp - 0x408]
mov dword [eax + edx*4 + 0x6168], 0
lea ecx, [ebp - 0x3f0]
push ecx
call dword [0x497128]
add eax, 1
push eax
call fcn.00468207
add esp, 4
mov dword [ebp - 0x404], eax
mov edx, dword [ebp - 0x408]
mov eax, dword [edx + 0x6164]
mov ecx, dword [ebp - 0x408]
mov edx, dword [ebp - 0x404]
mov dword [ecx + eax*4 + 0x6168], edx
mov eax, dword [ebp - 0x408]
mov ecx, dword [eax + 0x6164]
mov edx, dword [ebp - 0x408]
cmp dword [edx + ecx*4 + 0x6168], 0
jne 0x414ccb
push 0x30
mov ecx, 0x4bd504
mov eax, dword [0x4bd504]
call dword [eax + 0xc]
push eax
push 0x49737c
push 0
call dword [0x497194]
push 0
call fcn.004681c7
lea ecx, [ebp - 0x3f0]
push ecx
mov edx, dword [ebp - 0x408]
mov eax, dword [edx + 0x6164]
mov ecx, dword [ebp - 0x408]
mov edx, dword [ecx + eax*4 + 0x6168]
push edx
call dword [0x49712c]
jmp 0x414b65
mov eax, 1
mov ecx, dword [ebp - 4]
xor ecx, dword [ebp + 4]
call fcn.00467ff6
mov esp, ebp
pop ebp
ret